summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEli Friedman <eli.friedman@gmail.com>2012-10-23 20:26:57 +0000
committerEli Friedman <eli.friedman@gmail.com>2012-10-23 20:26:57 +0000
commit9cc8ac523c3194400d797f354c422d75a17820ce (patch)
treed77d83d1e35e54aa59897bad2d506c30cf757d18
parent4e2e13edb76a1eb8322ca2043ef9653304160eea (diff)
downloadbcm5719-llvm-9cc8ac523c3194400d797f354c422d75a17820ce.tar.gz
bcm5719-llvm-9cc8ac523c3194400d797f354c422d75a17820ce.zip
Fix pretty-printing pseudo-destructor calls. Patch by Grzegorz Jablonski.
llvm-svn: 166500
-rw-r--r--clang/lib/AST/StmtPrinter.cpp1
-rw-r--r--clang/test/SemaCXX/ast-print.cpp4
2 files changed, 5 insertions, 0 deletions
diff --git a/clang/lib/AST/StmtPrinter.cpp b/clang/lib/AST/StmtPrinter.cpp
index 5d3b83a1505..57eb1a95181 100644
--- a/clang/lib/AST/StmtPrinter.cpp
+++ b/clang/lib/AST/StmtPrinter.cpp
@@ -1467,6 +1467,7 @@ void StmtPrinter::VisitCXXPseudoDestructorExpr(CXXPseudoDestructorExpr *E) {
OS << '.';
if (E->getQualifier())
E->getQualifier()->print(OS, Policy);
+ OS << "~";
std::string TypeS;
if (IdentifierInfo *II = E->getDestroyedTypeIdentifier())
diff --git a/clang/test/SemaCXX/ast-print.cpp b/clang/test/SemaCXX/ast-print.cpp
index e0c154a0ecb..0dad623d47d 100644
--- a/clang/test/SemaCXX/ast-print.cpp
+++ b/clang/test/SemaCXX/ast-print.cpp
@@ -60,3 +60,7 @@ template <class S> void test7()
S s( 1,2 );
}
+
+// CHECK: t.~T();
+
+template <typename T> void test8(T t) { t.~T(); }
OpenPOWER on IntegriCloud