diff options
author | Adrian Prantl <aprantl@apple.com> | 2019-09-23 22:01:49 +0000 |
---|---|---|
committer | Adrian Prantl <aprantl@apple.com> | 2019-09-23 22:01:49 +0000 |
commit | bf9c8ffb54943c6d77398adbedddf05ef9724007 (patch) | |
tree | 501d720e93a0927fb2146be78c5cf467c0e01b68 /clang/lib/AST/DeclPrinter.cpp | |
parent | 144276bfe43b088390ad11ba0c82cab9158e42e6 (diff) | |
download | bcm5719-llvm-bf9c8ffb54943c6d77398adbedddf05ef9724007.tar.gz bcm5719-llvm-bf9c8ffb54943c6d77398adbedddf05ef9724007.zip |
Support for DWARF-5 C++ language tags.
This patch provides support for DW_LANG_C_plus_plus_11,
DW_LANG_C_plus_plus_14 tags in the Clang C++ frontend.
Patch by Sourabh Singh Tomar!
Differential Revision: https://reviews.llvm.org/D67613
llvm-svn: 372663
Diffstat (limited to 'clang/lib/AST/DeclPrinter.cpp')
-rw-r--r-- | clang/lib/AST/DeclPrinter.cpp | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/clang/lib/AST/DeclPrinter.cpp b/clang/lib/AST/DeclPrinter.cpp index f5c69944034..608b0b44072 100644 --- a/clang/lib/AST/DeclPrinter.cpp +++ b/clang/lib/AST/DeclPrinter.cpp @@ -1001,12 +1001,19 @@ void DeclPrinter::VisitCXXRecordDecl(CXXRecordDecl *D) { void DeclPrinter::VisitLinkageSpecDecl(LinkageSpecDecl *D) { const char *l; - if (D->getLanguage() == LinkageSpecDecl::lang_c) + switch (D->getLanguage()) { + case LinkageSpecDecl::lang_c: l = "C"; - else { - assert(D->getLanguage() == LinkageSpecDecl::lang_cxx && - "unknown language in linkage specification"); + break; + case LinkageSpecDecl::lang_cxx_14: + l = "C++14"; + break; + case LinkageSpecDecl::lang_cxx_11: + l = "C++11"; + break; + case LinkageSpecDecl::lang_cxx: l = "C++"; + break; } Out << "extern \"" << l << "\" "; |