[PATCH] D104291: [Debug-Info] strict dwarf for DW_LANG_C_plus_plus_14
Stuart Brady via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Wed Jun 16 03:38:58 PDT 2021
stuart added a comment.
> There is no `CPlusPlus03` in `LangOptions`, so it is better not to merge `DW_LANG_C_plus_plus_03` support with D99250 <https://reviews.llvm.org/D99250>.
Oh - I see, `c++03` is defined in LangStandards.def an alias for `c++98`, as the former essentially consists of bugfixes for the latter. This loosely suggests to me that C++03 implementations are (likely to be / mostly?) conformant to C++98, but that C++98 implementations may not be fully conformant to C++03. Given this alias, it doesn't seem at all clear to me which of DW_LANG_C_plus_plus_98 and DW_LANG_C_plus_plus_03 would be the better choice, if both C++98 and C++03 must share a language tag... but I presume this has been discussed before. (It also doesn't seem clear whether it would be better to model "c++98" as an alias for "c++03".)
> Yes, we don't have `DW_LANG_C_plus_plus_17` and `DW_LANG_C_plus_plus_20` in clang for now. I guess this is because clang does not support DWARF 6. DWARF 6 is not officially released? Once DWARF 6 is released and clang starts to support DWARF 6, I think we should add the support for `DW_LANG_C_plus_plus_17` and `DW_LANG_C_plus_plus_20` in the place that this patch changes.
New DWARF language codes <http://dwarfstd.org/Languages.php> are published ahead of the release of the next version of DWARF, so that they may be used by implementations without having to wait for new DWARF version.
It would therefore make sense to go ahead and add `DW_LANG_C_plus_plus_17` and `DW_LANG_C_plus_plus_20` now, without waiting, but only in the non-strict DWARF mode. (There would be the question of whether it would still make sense in the code to say "DwarfVersion >= 6" given that DWARF 6 would be otherwise unsupported... but I don't have a strong view on that question.)
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D104291/new/
https://reviews.llvm.org/D104291
More information about the cfe-commits
mailing list