On Tue, Nov 27, 2001 at 07:18:43PM -0500, Christopher C. Chimelis wrote: > > On Tue, 27 Nov 2001, Daniel Jacobowitz wrote: > > > I look at this differently; it's our job to be accepting and GCC's job > > to be conformant. With Joseph and others actively deprecating > > extensions, that seems a better place to take this up. > > Agreed. It's worth at least some discussion there before any decisions > are made. For now, I'll agree that other things need to be changed > external to gcc (kernel code and/or Makefiles, etc) before flipping this > option off, so we can just point at any further bug reports and say "bad > code, please fix" and mark them wishlist until the issue is decided upon > with upstream. > > Ok, that makes sense to me then. I guess I'll expect a few gas bugs to be > filed sooner or later about this, but I can live with that :-)
It seems to me gcc output broken asm code, not just that gas does not handle it correctly. Here a new file that compiles and links OK but which produce buggy output: yellowpig% cat <<EOF >bug2.c int $b=3; int b=2; main() { printf("%d\n",$b); } EOF yellowpig% gcc-3.0 bug.c yellowpig% ./a.out 134518112 The offending asm instruction is of course movl $b,%eax This is the same with gcc-2.95. Also gcc272 is (was?) the prefered compiler for the Linux kernel and, as I previously reported, Debian gcc272 does not allow dollars in identifiers by default: yellowpig% gcc272 bug2.c bug2.c:1: parse error before `$' bug2.c: In function `main': bug2.c:5: parse error before `$' (Also the NTFS code is not x86 specific, so it must also compile on platforms where $ are forbidden.) Cheers, Bill. <[EMAIL PROTECTED]> PS: Sorry to be so lame as to try to compile perl script with gcc:-)