I compiled this little program
#include <assert.h>
int main() {
assert(1 == 2);
return 0;
}
under DJGPP v2 beta 4 using
gcc assertbg.c -g -o assertbg
but the failure of the assertion produced some sort of infinite loop:
Assertion failed at assertbg.c line 3: 1 == 2
Exiting due to signal SIGABRT
Bad signal handler, Exiting due to signal SIGABRT
Bad signal handler, Exiting due to signal SIGABRT
Bad signal handler, Exiting due to signal SIGABRT
Bad signal handler, Exiting due to signal SIGABRT
Bad signal handler, Exiting due to signal SIGABRT
etc., etc. I pressed CNTL-break to abort...
Bad signal handler, Exiting due to signal SIGINT
Control-Break Pressed at eip=00002f46
eax=00000000 ebx=00000021 ecx=00000000 edx=00000000 esi=00000014 edi=0004b7d4
ebp=0004b7b0 esp=0004b7a4 cs=00e7 ds=00ef es=00f7 fs=00cf gs=00ff ss=00ef
Call frame traceback EIPs:
0x00002f46 ___dpmi_int+114
0x00002ad2 __write+150
0x000025f2 _raise+186
0x00001e31 ___dj_assert+37
0x00001545 _main+25, line 4 of assertbg.c
0x00001a15 ___crt1_startup+401
C:\TEMP>symify assertbg.exe
and used "symify" to get a traceback. I have no idea what causes this
problem. The program executes correctly under v1.12 m4. This problem is
reproducible on multiple platforms (EMM386, no EMM386, two Pentiums, a 386,
straight DOS, shelled out from Windows).
-Eric Rudd