Description of problem: An internal compiler error occures in compiling. Version-Release number of selected component (if applicable): 4.1.0-3 How reproducible: Always Steps to Reproduce: $ cat foo.c int foo(void) { if (sizeof(long) == 8) { typedef union { long i; char c[8]; } comm; comm static volatile u; u.i = 0x01020304; u.i <<= 16, u.i <<= 16; u.i |= 0x05060708; return u.c[0] == 0x01 && u.c[1] == 0x02; } return 2; } $ gcc -O0 -g -c foo.c Actual results: foo.c:16: internal compiler error: in dwarf2out_finish, at dwarf2out.c:14116 Please submit a full bug report, with preprocessed source if appropriate. See <URL:http://bugzilla.redhat.com/bugzilla> for instructions. Preprocessed source stored into /tmp/cc??????.out file, please attach this to your bugreport. Expected results: Compilation should be finish successful. Additional info: By omit "-g" or change "-O0" to "-O1", we can get around this error.
The code is minimal fragment to reproduce the problem in SpiderMonkey. ( http://bonsai.mozilla.org/cvsblame.cgi?file=mozilla/js/src/jscpucfg.c&rev=3.25#255 ) When compile this, with options "-O0 -g -c", cause the error.
Tracking upstream.
*** Bug 190955 has been marked as a duplicate of this bug. ***