[PATCH] D99250: [DebugInfo] Fix the mismatching of C++ language tags and Dwarf versions.
Paul Robinson via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Tue Mar 30 06:48:59 PDT 2021
probinson added inline comments.
================
Comment at: clang/lib/CodeGen/CGDebugInfo.cpp:572
LangTag = llvm::dwarf::DW_LANG_C_plus_plus_14;
- else if (LO.CPlusPlus11)
+ else if (LO.CPlusPlus11 && CGM.getCodeGenOpts().DwarfVersion >= 5)
LangTag = llvm::dwarf::DW_LANG_C_plus_plus_11;
----------------
Esme wrote:
> shchenz wrote:
> > Seems we miss to handle `DW_LANG_C_plus_plus_03` which is also a DWARF 5 language name value? We always generate `DW_LANG_C_plus_plus` for `-std=c++03` even at `-gdwarf-5`? If so, maybe we also need to fix this in another patch.
> How about we just do that in this patch?
I don't think anyone will stop you. :)
================
Comment at: clang/test/CodeGenCXX/debug-info-programming-language.cpp:9
+// RUN: -O0 -disable-llvm-passes \
+// RUN: -debug-info-kind=standalone \
+// RUN: | FileCheck --check-prefix=CHECK-DWARF3 %s
----------------
shchenz wrote:
> is limited debug info kind enough for this test?
Yes, limited is enough (and is the default). "Limited" in this context mostly means unused type info will not be emitted; the language is a CU attribute, and the CU is always emitted.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D99250/new/
https://reviews.llvm.org/D99250
More information about the cfe-commits
mailing list