http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46655
--- Comment #10 from Michael Haubenwallner <michael.haubenwallner at salomon dot at> 2010-11-30 12:22:43 UTC --- (In reply to comment #9) > I believe the line number field in XCOFF is defined in > /usr/include/linenum.h. > According to that file, in 32 bit mode, line numbers are represented by an > unsigned short, whose maximum value is 65535. In 64 bit mode, line numbers > are > represented by unsigned int. Ohw, indeed. > Is the 64K limit really new? Is this really a change in AIX as or did > something else change and start generating files referencing line numbers > larger than 64K? AFAICS, AIX as changed somewhere around SP6100-04-07-1036 so that it actually does check the 64k limit (as well as the zero limit) now. On AIX5.3, linenum.h also declares l_lnno as unsigned short in 32bit, but the assembler does not choke on any line in test.s from comment#3 there. > I have not seen this error while bootstrapping GCC on AIX. The error looks > correct. What else changed? Before installing SP6100-04-07-1036 I've also been able to bootstrap gcc-4.2.4 without any problems using AIX as/ld. But this is broken since SP6100-04-07-1036 is installed. However - as a side note, applying attachment#22583 to gcc-4.2.4 breaks bootstrapping gcc-4.2.4 even on AIX 5.3 (which doesn't choke on .line <=0 or >=64k) both with and without STAGE1_CFLAGS=-O (to not trigger this problem in the gcc used to bootstrap) with 'Bootstrap comparison failure' due to different .line numbers in stage 2 and 3.