This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] PR debug/38757 gcc does not emit DW_LANG_C99


On Thu, Nov 13, 2014 at 2:07 PM, Jakub Jelinek <jakub@redhat.com> wrote:
> On Thu, Nov 13, 2014 at 01:08:44PM +0100, Richard Biener wrote:
>> On Thu, Nov 13, 2014 at 12:17 PM, Jakub Jelinek <jakub@redhat.com> wrote:
>> > On Thu, Nov 13, 2014 at 12:08:01PM +0100, Richard Biener wrote:
>> >> Btw, I have nothing against changing TRANSLATION_UNIT_LANGUAGE
>> >> to DW_LANG_* directly - we only use it for choosing the language
>> >> of the dwarf unit.  This would of course mean to change its initialization
>> >> from
>> >>
>> >>   TRANSLATION_UNIT_LANGUAGE (tu) = lang_hooks.name;
>> >>
>> >> to sth like
>> >>
>> >>   TRANSLATION_UNIT_LANGUAGE (tu) = lang_hooks.dw_lang;
>> >>
>> >> which means adding a langhook (thus more similar to your original
>> >> patch).
>> >
>> > But that would mean having to include dwarf2 headers in every FE.
>>
>> Don't see what would be bad about this, but well...
>
> I think strings are better than DWARF constants for middle-end thing,
> say if DWARF doesn't make a difference between some language variants but
> something different in the middle-end wants, or updating all the backends to
> test when C++17 is released and DWARF assigns a language code for it
> would be also weird.
>
> If you want an integer instead of strings, it better should be some enum
> with major and minor parts in it, so that one can easily test if it is
> a C++ family, C family, C/C++ family, Fortran family etc.  Still, that would
> make things hard for third party frontends, which wouldn't know what values
> to use if they don't have a language code in DWARF.

I'm fine with the string solution as well.  Just properly transfer whatever
info you want through the translation unit decl and LTO stream it.

Richard.

>         Jakub


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]