[clang] [analyzer] Harden security.cert.env.InvalidPtr checker fn matching (PR #88536)

Balazs Benics via cfe-commits cfe-commits at lists.llvm.org
Tue Apr 16 22:41:14 PDT 2024


================
@@ -205,8 +210,12 @@ void InvalidPtrChecker::postPreviousReturnInvalidatingCall(
       CE, LCtx, CE->getType(), C.blockCount());
   State = State->BindExpr(CE, LCtx, RetVal);
 
+  const auto *SymRegOfRetVal =
+      dyn_cast_or_null<SymbolicRegion>(RetVal.getAsRegion());
+  if (!SymRegOfRetVal)
+    return;
+
   // Remember to this region.
-  const auto *SymRegOfRetVal = cast<SymbolicRegion>(RetVal.getAsRegion());
   const MemRegion *MR = SymRegOfRetVal->getBaseRegion();
----------------
steakhal wrote:

Thanks!, I'll split it up.

https://github.com/llvm/llvm-project/pull/88536


More information about the cfe-commits mailing list