Replace getAs with castAs to fix null dereference static analyzer warnings.
authorSimon Pilgrim <llvm-dev@redking.me.uk>
Thu, 12 Mar 2020 14:28:16 +0000 (14:28 +0000)
committerSimon Pilgrim <llvm-dev@redking.me.uk>
Thu, 12 Mar 2020 14:56:50 +0000 (14:56 +0000)
Use castAs as we know the cast should succeed (and castAs will assert if it doesn't) and we're dereferencing it directly in the canAssignObjCInterfaces call.

clang/lib/AST/ASTContext.cpp

index e50d1d6..4368809 100644 (file)
@@ -8698,8 +8698,8 @@ bool ASTContext::areComparableObjCPointerTypes(QualType LHS, QualType RHS) {
 
 bool ASTContext::canBindObjCObjectType(QualType To, QualType From) {
   return canAssignObjCInterfaces(
-                getObjCObjectPointerType(To)->getAs<ObjCObjectPointerType>(),
-                getObjCObjectPointerType(From)->getAs<ObjCObjectPointerType>());
+      getObjCObjectPointerType(To)->castAs<ObjCObjectPointerType>(),
+      getObjCObjectPointerType(From)->castAs<ObjCObjectPointerType>());
 }
 
 /// typesAreCompatible - C99 6.7.3p9: For two qualified types to be compatible,