https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66448
--- Comment #14 from Aldy Hernandez <aldyh at gcc dot gnu.org> --- Created attachment 35734 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=35734&action=edit Patch to ICE on other duplicate DW_AT_ attributes On 06/09/2015 08:00 AM, iains at gcc dot gnu.org wrote: > So .. things are *very* much improved, thanks! Awesome! > (at least no reports during bootstrap), > but there's still quite a bit of fallout in the testsuite (many more failing > tests than listed below, these are just examples): > > FAIL: gcc.c-torture/execute/20020412-1.c -O3 -g (test for excess errors) > FAIL: gcc.c-torture/execute/20040308-1.c -O3 -g (test for excess errors) > FAIL: gcc.c-torture/execute/20070919-1.c -O3 -g (test for excess errors) > FAIL: gcc.dg/torture/pr8081.c -O3 -g (test for excess errors) > <etc> > > (usually several) instances of: > warning: invalid DWARF generated by the compiler: DIE 0x0000018b has multiple > AT_decl_file attributes in > '/var/folders/tj/17r7407j14d324dzf67cnvxm000114/T//ccSyKR0x.o'. I can't reproduce any of these with a cross compiler. I'm building a cross with: --enable-languages=c,c++ --disable-bootstrap --disable-multilib --target=i686-darwin ...but I still can't get cc1plus to trigger any ICE with the attached patch. > > warning: invalid DWARF generated by the compiler: DIE 0x0000015d has multiple > AT_decl_line attributes in > '/var/folders/tj/17r7407j14d324dzf67cnvxm000114/T//cccckVUY.o'. > > FAIL: c-c++-common/cilk-plus/CK/cilk-for-2.c -g (test for excess errors) > FAIL: c-c++-common/cilk-plus/CK/cilk-fors.c -g (test for excess errors) > FAIL: c-c++-common/cilk-plus/CK/cilk_for_grain.c -g (test for excess errors) > FAIL: c-c++-common/cilk-plus/CK/cilk_for_ptr_iter.c -g (test for excess > errors) > FAIL: c-c++-common/cilk-plus/CK/nested_cilk_for.c -g (test for excess > errors) > <etc> > also plugin tests. > > (many) instances of: > warning: invalid DWARF generated by the compiler: DIE 0x00000176 has multiple > AT_artificial attributes in > '/var/folders/tj/17r7407j14d324dzf67cnvxm000114/T//ccNJ6qak.o'. Similarly here. The attached patch adds ICEs for duplicate DW_AT_{artificial,decl_line,decl_file} tags. Since I'm flying blind here, would you mind finding for which files we trigger ICEs and attach the preprocessed files so I can reproduce with a cc1/cc1plus? I assume just one of each type will do. Thanks.