diff options
| author | Argyrios Kyrtzidis <akyrtzi@gmail.com> | 2013-01-16 17:04:31 +0000 |
|---|---|---|
| committer | Argyrios Kyrtzidis <akyrtzi@gmail.com> | 2013-01-16 17:04:31 +0000 |
| commit | fbd7c2d3b2ae2447c933c55a9bdb07d4f01bd95e (patch) | |
| tree | 740a7512dd4b6a37f8f0f43de8586f9c96ecd951 /clang | |
| parent | 69987d5415f2260540be1cafa460362ad74ae849 (diff) | |
| download | bcm5719-llvm-fbd7c2d3b2ae2447c933c55a9bdb07d4f01bd95e.tar.gz bcm5719-llvm-fbd7c2d3b2ae2447c933c55a9bdb07d4f01bd95e.zip | |
[libclang] In clang_getCursorType, don't crash if the translation unit is not
set on the cursor; return a null type in such a case.
llvm-svn: 172625
Diffstat (limited to 'clang')
| -rw-r--r-- | clang/tools/libclang/CXType.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/clang/tools/libclang/CXType.cpp b/clang/tools/libclang/CXType.cpp index 88c0e511811..d7751d20717 100644 --- a/clang/tools/libclang/CXType.cpp +++ b/clang/tools/libclang/CXType.cpp @@ -131,6 +131,9 @@ CXType clang_getCursorType(CXCursor C) { using namespace cxcursor; CXTranslationUnit TU = cxcursor::getCursorTU(C); + if (!TU) + return MakeCXType(QualType(), TU); + ASTContext &Context = static_cast<ASTUnit *>(TU->TUData)->getASTContext(); if (clang_isExpression(C.kind)) { QualType T = cxcursor::getCursorExpr(C)->getType(); |

