[clang] [analyzer] Untangle subcheckers of CStringChecker (PR #186802)

Endre Fülöp via cfe-commits cfe-commits at lists.llvm.org
Thu Mar 19 07:15:14 PDT 2026


================
@@ -703,9 +706,12 @@ ProgramStateRef CStringChecker::CheckOverlap(CheckerContext &C,
       emitOverlapBug(C, stateTrue, First.Expression, Second.Expression);
       return nullptr;
     }
-    // FIXME: We detected a fatal error here, we should stop analysis even if we
-    // chose not to emit a report here. However, as long as our overlap checker
-    // is in alpha, lets just pretend nothing happened.
+    // FIXME: We detected a fatal error here, we should stop the analysis even
+    // if we choose not to emit a report here. Instead, we choose to continue
+    // the analysis with a slightly broken state, so that other checkers can
+    // still emit possibly relevant reports. One such checker would be the
+    // alpha.unix.cstring.OutOfBounds. Sinking the state here could lead to
+    // loss reports from those checkers.
----------------
gamesh411 wrote:

Same.

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


More information about the cfe-commits mailing list