Author: rksimon Date: Thu Oct 3 14:27:02 2019 New Revision: 373665 URL: http://llvm.org/viewvc/llvm-project?rev=373665&view=rev Log: OverloadCandidate::getNumParams - silence static analyzer getAs<FunctionProtoType> null dereference warning. NFCI.
The static analyzer is warning about a potential null dereference, but we should be able to use castAs<FunctionProtoType> directly and if not assert will fire for us. Also replaces an auto to make the type more obvious. Modified: cfe/trunk/include/clang/Sema/Overload.h Modified: cfe/trunk/include/clang/Sema/Overload.h URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Sema/Overload.h?rev=373665&r1=373664&r2=373665&view=diff ============================================================================== --- cfe/trunk/include/clang/Sema/Overload.h (original) +++ cfe/trunk/include/clang/Sema/Overload.h Thu Oct 3 14:27:02 2019 @@ -826,10 +826,10 @@ class Sema; unsigned getNumParams() const { if (IsSurrogate) { - auto STy = Surrogate->getConversionType(); + QualType STy = Surrogate->getConversionType(); while (STy->isPointerType() || STy->isReferenceType()) STy = STy->getPointeeType(); - return STy->getAs<FunctionProtoType>()->getNumParams(); + return STy->castAs<FunctionProtoType>()->getNumParams(); } if (Function) return Function->getNumParams(); _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits