diff options
| author | Richard Trieu <rtrieu@google.com> | 2016-06-09 22:03:04 +0000 |
|---|---|---|
| committer | Richard Trieu <rtrieu@google.com> | 2016-06-09 22:03:04 +0000 |
| commit | 4b259c8add83bb98484a8b3a1ab57827042d8eff (patch) | |
| tree | cc26ad093f06eec820728c2dcf01a2dda4f8aefe /clang/lib/AST | |
| parent | aac7315e5b440de19d2af7b51e5639980b0356f8 (diff) | |
| download | bcm5719-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.cpp | 6 |
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) { |

