summaryrefslogtreecommitdiffstats
path: root/clang/lib/AST
diff options
context:
space:
mode:
authorRichard Trieu <rtrieu@google.com>2016-06-09 22:03:04 +0000
committerRichard Trieu <rtrieu@google.com>2016-06-09 22:03:04 +0000
commit4b259c8add83bb98484a8b3a1ab57827042d8eff (patch)
treecc26ad093f06eec820728c2dcf01a2dda4f8aefe /clang/lib/AST
parentaac7315e5b440de19d2af7b51e5639980b0356f8 (diff)
downloadbcm5719-llvm-4b259c8add83bb98484a8b3a1ab57827042d8eff.tar.gz
bcm5719-llvm-4b259c8add83bb98484a8b3a1ab57827042d8eff.zip
Fix a crash in the AST dumper.
Boxed expressions in a template context may have a null method decl. If so, don't try to access the selector. llvm-svn: 272318
Diffstat (limited to 'clang/lib/AST')
-rw-r--r--clang/lib/AST/ASTDumper.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/clang/lib/AST/ASTDumper.cpp b/clang/lib/AST/ASTDumper.cpp
index 05d8da298cd..da7e980c5a4 100644
--- a/clang/lib/AST/ASTDumper.cpp
+++ b/clang/lib/AST/ASTDumper.cpp
@@ -2177,8 +2177,10 @@ void ASTDumper::VisitObjCMessageExpr(const ObjCMessageExpr *Node) {
void ASTDumper::VisitObjCBoxedExpr(const ObjCBoxedExpr *Node) {
VisitExpr(Node);
- OS << " selector=";
- Node->getBoxingMethod()->getSelector().print(OS);
+ if (auto *BoxingMethod = Node->getBoxingMethod()) {
+ OS << " selector=";
+ BoxingMethod->getSelector().print(OS);
+ }
}
void ASTDumper::VisitObjCAtCatchStmt(const ObjCAtCatchStmt *Node) {
OpenPOWER on IntegriCloud