function_parameter_expanded_from_pack_p() segfaults when compiling 20_util/reference_wrapper/24803.cc and IPA-SRA turned on. The reason is that it is presented a PARM_DECL that was created by IPA-SRA and which does not have language specific data.
The backtrace is: #0 0x00000000004b872f in function_parameter_expanded_from_pack_p (param_decl=0x7ffff6a123f0, pack=0x7ffff6e59cf0) at /home/jamborm/gcc/mine/gcc/cp/pt.c:2679 #1 0x0000000000604090 in gen_subprogram_die (decl=0x7ffff6b2ca00, context_die=<value optimized out>) at /home/jamborm/gcc/mine/gcc/dwarf2out.c:15459 #2 0x0000000000605c01 in gen_decl_die (decl=0x7ffff6b2ca00, origin=0x0, context_die=0x7ffff734a2a0) at /home/jamborm/gcc/mine/gcc/dwarf2out.c:17538 #3 0x0000000000605268 in dwarf2out_abstract_function (decl=0x7ffff6b2ca00) at /home/jamborm/gcc/mine/gcc/dwarf2out.c:15624 #4 0x000000000090b11b in optimize_inline_calls (fn=0x7ffff6c3e900) at /home/jamborm/gcc/mine/gcc/tree-inline.c:3820 #5 0x00000000008e90af in cgraph_early_inlining () at /home/jamborm/gcc/mine/gcc/ipa-inline.c:1593 #6 0x00000000006ecd04 in execute_one_pass (pass=0x10fe430) at /home/jamborm/gcc/mine/gcc/passes.c:1295 #7 0x00000000006ecf45 in execute_pass_list (pass=0x10fe430) at /home/jamborm/gcc/mine/gcc/passes.c:1344 #8 0x00000000006ecf57 in execute_pass_list (pass=0x10444a0) at /home/jamborm/gcc/mine/gcc/passes.c:1345 #9 0x00000000006ed29e in execute_ipa_pass_list (pass=0x1044440) at /home/jamborm/gcc/mine/gcc/passes.c:906 #10 0x00000000008e3c6c in cgraph_finalize_compilation_unit () at /home/jamborm/gcc/mine/gcc/cgraphunit.c:1358 #11 0x00000000004e68c6 in cp_write_global_declarations () at /home/jamborm/gcc/mine/gcc/cp/decl2.c:3754 #12 0x000000000077f0c0 in toplev_main (argc=39, argv=0x7fffffffd978) at /home/jamborm/gcc/mine/gcc/toplev.c:1050 #13 0x00007ffff73f3586 in __libc_start_main () from /lib64/libc.so.6 #14 0x0000000000493bc9 in _start () at ../sysdeps/x86_64/elf/start.S:113 I am about to test a patch that will make the function return false if DECL_ARTIFICIAL (param_decl) is true. -- Summary: function_parameter_expanded_from_pack_p segfaults when passed a PARM_DECL created by IPA-SRA Product: gcc Version: 4.5.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: jamborm at gcc dot gnu dot org ReportedBy: jamborm at gcc dot gnu dot org GCC build triplet: x86_64-unknown-linux-gnu GCC host triplet: x86_64-unknown-linux-gnu GCC target triplet: x86_64-unknown-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41503