From: Simon Pilgrim Date: Thu, 17 Mar 2022 15:15:08 +0000 (+0000) Subject: [clang] AddObjCKeyValueCompletions - use castAs<> instead of getAs<> to avoid derefer... X-Git-Tag: upstream/15.0.7~13269 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=ef865d16ec3b8ce636786ed472ac28c977f2f304;p=platform%2Fupstream%2Fllvm.git [clang] AddObjCKeyValueCompletions - use castAs<> instead of getAs<> to avoid dereference of nullptr The pointers are always dereferenced, so assert the cast is correct instead of returning nullptr --- diff --git a/clang/lib/Sema/SemaCodeComplete.cpp b/clang/lib/Sema/SemaCodeComplete.cpp index 0c9bcf5..ba99f18 100644 --- a/clang/lib/Sema/SemaCodeComplete.cpp +++ b/clang/lib/Sema/SemaCodeComplete.cpp @@ -9138,8 +9138,8 @@ static void AddObjCKeyValueCompletions(ObjCPropertyDecl *Property, if (IsInstanceMethod && (ReturnType.isNull() || (ReturnType->isObjCObjectPointerType() && - ReturnType->getAs()->getInterfaceDecl() && - ReturnType->getAs() + ReturnType->castAs()->getInterfaceDecl() && + ReturnType->castAs() ->getInterfaceDecl() ->getName() == "NSEnumerator"))) { std::string SelectorName = (Twine("enumeratorOf") + UpperKey).str();