diff options
author | Saar Raz <saar@raz.email> | 2019-10-15 15:24:26 +0000 |
---|---|---|
committer | Saar Raz <saar@raz.email> | 2019-10-15 15:24:26 +0000 |
commit | 5d98ba6077dac656fbf023e9312d9c131d53144c (patch) | |
tree | 99153ade097830f469e5ff0a04fc37daeff3819a /clang/lib/AST/StmtPrinter.cpp | |
parent | d545c9056e00988d2d146f8f1440b2dd192f306b (diff) | |
download | bcm5719-llvm-5d98ba6077dac656fbf023e9312d9c131d53144c.tar.gz bcm5719-llvm-5d98ba6077dac656fbf023e9312d9c131d53144c.zip |
[Concepts] Concept Specialization Expressions
Part of C++20 Concepts implementation effort. Added Concept Specialization Expressions that are created when a concept is refe$
D41217 on Phabricator.
(recommit after fixing failing Parser test on windows)
llvm-svn: 374903
Diffstat (limited to 'clang/lib/AST/StmtPrinter.cpp')
-rw-r--r-- | clang/lib/AST/StmtPrinter.cpp | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/clang/lib/AST/StmtPrinter.cpp b/clang/lib/AST/StmtPrinter.cpp index e392682af75..70fe484751c 100644 --- a/clang/lib/AST/StmtPrinter.cpp +++ b/clang/lib/AST/StmtPrinter.cpp @@ -2231,6 +2231,17 @@ void StmtPrinter::VisitCXXFoldExpr(CXXFoldExpr *E) { OS << ")"; } +void StmtPrinter::VisitConceptSpecializationExpr(ConceptSpecializationExpr *E) { + NestedNameSpecifierLoc NNS = E->getNestedNameSpecifierLoc(); + if (NNS) + NNS.getNestedNameSpecifier()->print(OS, Policy); + if (E->getTemplateKWLoc().isValid()) + OS << "template "; + OS << E->getFoundDecl()->getName(); + printTemplateArgumentList(OS, E->getTemplateArgsAsWritten()->arguments(), + Policy); +} + // C++ Coroutines TS void StmtPrinter::VisitCoroutineBodyStmt(CoroutineBodyStmt *S) { |