------- Comment #5 from dominiq at lps dot ens dot fr 2010-05-26 20:03 ------- I confirm comment #2 on x86_64-apple-darwin10.3.0. The ICE occurs only with -m32 (no need for -O2 -g). The backtrace is:
Program received signal EXC_BAD_ACCESS, Could not access memory. Reason: KERN_INVALID_ADDRESS at address: 0x0000000000000000 0x00000001000047e3 in c_lex_with_flags (value=0x141e033f0, loc=0x141e033ec, cpp_flags=0x0, lex_flags=0) at ../../work/gcc/c-lex.c:511 511 tree upper = TYPE_MAX_VALUE (integer_types[itk]); (gdb) bt #0 0x00000001000047e3 in c_lex_with_flags (value=0x141e033f0, loc=0x141e033ec, cpp_flags=0x0, lex_flags=0) at ../../work/gcc/c-lex.c:511 #1 0x000000010007f60d in c_lex_one_token (parser=0x141e033e8, token=0x141e033e8) at ../../work/gcc/c-parser.c:205 #2 0x0000000100087fe3 in c_parser_conditional_expression (parser=0x141e033e8, after=<value temporarily unavailable, due to optimizations>) at ../../work/gcc/c-parser.c:321 #3 0x000000010008829a in c_parser_expr_no_commas (parser=<value temporarily unavailable, due to optimizations>, after=<value temporarily unavailable, due to optimizations>) at ../../work/gcc/c-parser.c:4722 #4 0x0000000100088417 in c_parser_expr_no_commas (parser=<value temporarily unavailable, due to optimizations>, after=<value temporarily unavailable, due to optimizations>) at ../../work/gcc/c-parser.c:4764 #5 0x0000000100088826 in c_parser_expression (parser=0x141e033e8) at ../../work/gcc/c-parser.c:6166 #6 0x0000000100088d71 in c_parser_expression_conv (parser=0x141e033e8) at ../../work/gcc/c-parser.c:6197 #7 0x0000000100080bfe in c_parser_statement_after_labels (parser=0x141e033e8) at ../../work/gcc/c-parser.c:4050 #8 0x000000010008d4e3 in c_parser_compound_statement_nostart (parser=0x141e033e8) at ../../work/gcc/c-parser.c:3728 #9 0x000000010008fcdd in c_parser_compound_statement (parser=0x141e033e8) at ../../work/gcc/c-parser.c:3565 #10 0x0000000100080f68 in c_parser_statement_after_labels (parser=0x141e033e8) at ../../work/gcc/c-parser.c:3942 #11 0x0000000100082863 in c_parser_c99_block_statement (parser=0x141e033e8) at ../../work/gcc/c-parser.c:4110 #12 0x0000000100081454 in c_parser_statement_after_labels (parser=0x141e033e8) at ../../work/gcc/c-parser.c:4243 #13 0x000000010008d4e3 in c_parser_compound_statement_nostart (parser=0x141e033e8) at ../../work/gcc/c-parser.c:3728 #14 0x000000010008fcdd in c_parser_compound_statement (parser=0x141e033e8) at ../../work/gcc/c-parser.c:3565 #15 0x000000010008cc66 in c_parser_declaration_or_fndef (parser=0x141e033e8, fndef_ok=1 '\001', static_assert_ok=<value temporarily unavailable, due to optimizations>, empty_ok=<value temporarily unavailable, due to optimizations>, nested=0 '\0', start_attr_ok=0 '\0') at ../../work/gcc/c-parser.c:1376 #16 0x00000001000919c4 in c_parse_file () at ../../work/gcc/c-parser.c:1031 #17 0x000000010007414c in c_common_parse_file (set_yydebug=<value temporarily unavailable, due to optimizations>) at ../../work/gcc/c-opts.c:1393 #18 0x0000000100686193 in toplev_main (argc=23, argv=0x7fff5fbfd660) at ../../work/gcc/toplev.c:1050 #19 0x00000001000011b4 in start () -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44287