Path: utzoo!attcan!utgpu!watmath!watdragon!rose!ehoogerbeets From: ehoogerbeets@rose.waterloo.edu (Edwin Hoogerbeets) Newsgroups: comp.sys.amiga.tech Subject: Manx v3.6 bug? Message-ID: <14328@watdragon.waterloo.edu> Date: 6 Jun 89 21:37:01 GMT Sender: daemon@watdragon.waterloo.edu Reply-To: ehoogerbeets@rose.waterloo.edu (Edwin Hoogerbeets) Organization: U. of Waterloo, Ontario Lines: 63 The following source: foo() { char *foobar; if ( foobar ) { printf("This is a test\n"); } if ( (char *)0 ) { printf("This is a test\n"); } if ( "This is a test\n" ) { printf("This is a test\n"); } } Gets compiled to this assembler: ;:ts=8 public _foo _foo: link a5,#.2 [.... etc ... ] .5 tst.l #.1+32 ; whoops! this address mode isn't supported for 68000s beq .6 pea .1+48 jsr _printf add.w #4,sp .6 .7 movem.l (sp)+,.3 unlk a5 rts .2 equ -4 .3 reg .1 dc.b 84,104,105,115,32,105,115,32,97,32,116,101,115,116,10 dc.b 0,84,104,105,115,32,105,115,32,97,32,116,101,115,116 dc.b 10,0,84,104,105,115,32,105,115,32,97,32,116,101,115 dc.b 116,10,0,84,104,105,115,32,105,115,32,97,32,116,101 dc.b 115,116,10,0 ds 0 public _printf public .begin dseg end I am using Manx v3.6, with the simple command line: cc foo.c Manx's own assembler tosses cookies on this. I know it is pretty gross C code, but it occurs in GnuGrep (fish 204), and probably other Gnu code. Can anyone verify this, or I am doing something wierd? Edwin