summaryrefslogtreecommitdiffstats
path: root/clang/lib/AST/ASTDumper.cpp
diff options
context:
space:
mode:
authorReid Kleckner <reid@kleckner.net>2015-03-19 18:47:47 +0000
committerReid Kleckner <reid@kleckner.net>2015-03-19 18:47:47 +0000
commit461c0c693421fe7fb37da598632fca9c02c4c5d1 (patch)
tree49792ec1914fe1848a58c64da5b6d40b92530600 /clang/lib/AST/ASTDumper.cpp
parent5196fe7c197a56548a4df99287e08ad3903927ff (diff)
downloadbcm5719-llvm-461c0c693421fe7fb37da598632fca9c02c4c5d1.tar.gz
bcm5719-llvm-461c0c693421fe7fb37da598632fca9c02c4c5d1.zip
Fix -ast-dump of dependent new and delete exprs
llvm-svn: 232748
Diffstat (limited to 'clang/lib/AST/ASTDumper.cpp')
-rw-r--r--clang/lib/AST/ASTDumper.cpp20
1 files changed, 12 insertions, 8 deletions
diff --git a/clang/lib/AST/ASTDumper.cpp b/clang/lib/AST/ASTDumper.cpp
index 6aa0a2183d8..a5ad6db3797 100644
--- a/clang/lib/AST/ASTDumper.cpp
+++ b/clang/lib/AST/ASTDumper.cpp
@@ -1921,24 +1921,28 @@ void ASTDumper::VisitCXXBindTemporaryExpr(const CXXBindTemporaryExpr *Node) {
void ASTDumper::VisitCXXNewExpr(const CXXNewExpr *Node) {
VisitExpr(Node);
- OS << ' ';
if (Node->isGlobalNew())
- OS << "global ";
+ OS << " global";
if (Node->isArray())
- OS << "array ";
- dumpBareDeclRef(Node->getOperatorNew());
+ OS << " array";
+ if (Node->getOperatorNew()) {
+ OS << ' ';
+ dumpBareDeclRef(Node->getOperatorNew());
+ }
// We could dump the deallocation function used in case of error, but it's
// usually not that interesting.
}
void ASTDumper::VisitCXXDeleteExpr(const CXXDeleteExpr *Node) {
VisitExpr(Node);
- OS << ' ';
if (Node->isGlobalDelete())
- OS << "global ";
+ OS << " global";
if (Node->isArrayForm())
- OS << "array ";
- dumpBareDeclRef(Node->getOperatorDelete());
+ OS << " array";
+ if (Node->getOperatorDelete()) {
+ OS << ' ';
+ dumpBareDeclRef(Node->getOperatorDelete());
+ }
}
void
OpenPOWER on IntegriCloud