[all-commits] [llvm/llvm-project] 0ede56: [clang][DebugInfo] Emit DW_AT_language_{name, vers...

Michael Buch via All-commits all-commits at lists.llvm.org
Wed Oct 15 23:37:31 PDT 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 0ede5637ff192398abd09b3d104d43e3be3dfa24
      https://github.com/llvm/llvm-project/commit/0ede5637ff192398abd09b3d104d43e3be3dfa24
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2025-10-16 (Thu, 16 Oct 2025)

  Changed paths:
    M clang/lib/CodeGen/CGDebugInfo.cpp
    A clang/test/DebugInfo/CXX/versioned-language.cpp
    A clang/test/DebugInfo/Generic/versioned-language.c
    A clang/test/DebugInfo/ObjC/versioned-language.m
    A clang/test/DebugInfo/ObjCXX/versioned-language.mm

  Log Message:
  -----------
  [clang][DebugInfo] Emit DW_AT_language_{name, version} for DWARFv6 (#163208)

Depends on:
* https://github.com/llvm/llvm-project/pull/163348
* https://github.com/llvm/llvm-project/pull/162632

With this patch Clang will start emitting `DW_AT_language_{name,
version}` for C++/C/Objective-C/Objective-C++ when using `-gdwarf-6`. We
adjust the `DISourceLanguageName` (which we pass to `DICompileUnit`) to
hold a `DW_AT_language_name_` and version code when in DWARFv6.
Otherwise we continue using the `DW_LANG_` version of
`DISourceLanguageName`.

We didn't back-port emitting
`DW_AT_language_name`/`DW_AT_language_version` to DWARFv5 (unlike GCC,
which emits both the new and old language attributes in DWARFv5) because
there wasn't a compelling reason to do so (yet).



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list