From b3da539e0dd33f3fbb55132de3c65e0b6e1a4bc4 Mon Sep 17 00:00:00 2001 From: Ted Kremenek Date: Sat, 29 May 2010 20:01:52 +0000 Subject: [PATCH] Add check for an invalid CXType in clang_getTypeDeclaration. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105111 91177308-0d34-0410-b5e6-96231b3b80d8 --- tools/libclang/CXTypes.cpp | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/tools/libclang/CXTypes.cpp b/tools/libclang/CXTypes.cpp index 137370adb2..777afb9bb7 100644 --- a/tools/libclang/CXTypes.cpp +++ b/tools/libclang/CXTypes.cpp @@ -165,8 +165,15 @@ CXType clang_getPointeeType(CXType CT) { } CXCursor clang_getTypeDeclaration(CXType CT) { + if (CT.kind == CXType_Invalid) + return cxcursor::MakeCXCursorInvalid(CXCursor_NoDeclFound); + QualType T = GetQualType(CT); Type *TP = T.getTypePtr(); + + if (!TP) + return cxcursor::MakeCXCursorInvalid(CXCursor_NoDeclFound); + Decl *D = 0; switch (TP->getTypeClass()) { -- 2.40.0