[PATCH] DWARF: remove pessimistic DWARF version checks for imported entities
Dominique d'Humières
dominiq@lps.ens.fr
Wed Oct 5 04:53:00 GMT 2016
The new patch works on darwin without new regression.
Thanks,
Dominique
> Le 4 oct. 2016 à 15:58, Pierre-Marie de Rodat <derodat@adacore.com> a écrit :
>
> Hello,
>
> Thank you very much for you help, Dominique!
>
> On 09/29/2016 03:16 PM, Dominique d'Humières wrote:
>> FAIL: gfortran.dg/binding_label_tests_16.f03 -g (internal compiler error)
>> FAIL: gfortran.dg/module_commons_3.f90 -g (internal compiler error)
>> FAIL: gfortran.dg/module_equivalence_1.f90 -g (internal compiler error)
>> FAIL: gfortran.dg/use_11.f90 -g (internal compiler error)
>> FAIL: gfortran.dg/use_only_1.f90 -g (internal compiler error)
>> FAIL: gfortran.dg/widechar_5.f90 -g (internal compiler error)
>>
>> FAIL: libgomp.fortran/udr15.f90 -g (internal compiler error)
>>
>> are giving an ICE with -g of the kind
>>
>> internal compiler error: in dwarf2out_imported_module_or_decl, at dwarf2out.c:24070
>>
>> corresponding to
>>
>> gcc_assert (scope_die->die_child);
>
> So this is an oversight I did: the check I removed was actually useful for one thing: not emitting DW_TAG_imported_module DIEs in strict DWARFv2. DW_TAG_imported_declaration ones are always fine, though, so what I should do is to move the check, not remove it.
>
>> The Ada test gnat.dg/debug7.adb is also failing with
>>
>> FAIL: gnat.dg/debug7.adb (test for excess errors)
>> Excess errors:
>> gnat1: incorrect object file extension
>
> It seems it’s a bad interaction between dg-options "-cargs […]" and the testsuite framework. Can be fixed adding “-margs” at the end.
>
> Here is an updated patch, fixing all the issues Dominique reported. Bootstrapped and regtested on x86_64-linux. I also tested on x86_64-apple-darwin14.5.0 that the above errors are gone.
>
> --
> Pierre-Marie de Rodat
> <0001-DWARF-move-pessimistic-DWARF-version-checks-for-impo.patch>
More information about the Gcc-patches
mailing list