[clang] [analyzer] Simplify SVal for simple NonLoc->Loc casts (PR #66463)

Balazs Benics via cfe-commits cfe-commits at lists.llvm.org
Fri Sep 15 02:08:07 PDT 2023


================
@@ -0,0 +1,31 @@
+// RUN: %clang_analyze_cc1 %s \
+// RUN:   -analyzer-checker=core \
+// RUN:   -analyzer-checker=debug.ExprInspection \
+// RUN:   -analyzer-config eagerly-assume=false \
+// RUN:   -verify
+
+void clang_analyzer_eval(int);
+
+void test_simplified_before_cast_add(long long t1) {
+  long long t2 = t1 + 3;
+  if (!t2) {
+    int *p = (int *) t2;
----------------
steakhal wrote:

I fear this statement assumes that `sizeof(int*)` is equal to `sizeof(long long)`, right?
If that's the case, we need to pin the target to ensure it's a valid assumption on all hosts.

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


More information about the cfe-commits mailing list