[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-08-04 Thread LLVM Continuous Integration via cfe-commits
Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-08-04 Thread LLVM Continuous Integration via cfe-commits
Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-08-04 Thread Endre Fülöp via cfe-commits
https://github.com/gamesh411 closed https://github.com/llvm/llvm-project/pull/150417 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-08-04 Thread Endre Fülöp via cfe-commits
https://github.com/gamesh411 updated https://github.com/llvm/llvm-project/pull/150417 From 0630d81e544319a1a18798996760775d4a13f7ad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Endre=20F=C3=BCl=C3=B6p?= Date: Thu, 24 Jul 2025 14:49:14 +0200 Subject: [PATCH 01/22] [clang][analyzer] Add StoreToImmuta

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-08-02 Thread Endre Fülöp via cfe-commits
https://github.com/gamesh411 updated https://github.com/llvm/llvm-project/pull/150417 From 0630d81e544319a1a18798996760775d4a13f7ad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Endre=20F=C3=BCl=C3=B6p?= Date: Thu, 24 Jul 2025 14:49:14 +0200 Subject: [PATCH 01/21] [clang][analyzer] Add StoreToImmuta

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-08-02 Thread Endre Fülöp via cfe-commits
https://github.com/gamesh411 updated https://github.com/llvm/llvm-project/pull/150417 From 0630d81e544319a1a18798996760775d4a13f7ad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Endre=20F=C3=BCl=C3=B6p?= Date: Thu, 24 Jul 2025 14:49:14 +0200 Subject: [PATCH 01/21] [clang][analyzer] Add StoreToImmuta

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-08-01 Thread Donát Nagy via cfe-commits
https://github.com/NagyDonat approved this pull request. LGTM, with one very minor nitpick in a comment. https://github.com/llvm/llvm-project/pull/150417 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/lis

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-08-01 Thread Donát Nagy via cfe-commits
@@ -0,0 +1,21 @@ +const int global_const = 42; + +struct TestStruct { + const int x; + int y; +}; + +void immutable_violation_examples() { + *(int *)&global_const = 100; // warn: Trying to write to immutable memory + + const int local_const = 42; + *(int *)&local_const = 43;

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-08-01 Thread Donát Nagy via cfe-commits
https://github.com/NagyDonat edited https://github.com/llvm/llvm-project/pull/150417 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-08-01 Thread Endre Fülöp via cfe-commits
@@ -0,0 +1,120 @@ +// RUN: %clang_analyze_cc1 -analyzer-checker=alpha.core.StoreToImmutable -verify %s + +// Test basic functionality of StoreToImmutable checker for the C programming language. + +const int tentative_global_const; // expected-note {{Memory region is in immutabl

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-08-01 Thread Endre Fülöp via cfe-commits
@@ -0,0 +1,23 @@ +// Global const variable gamesh411 wrote: Removed redundant comments from the example. https://github.com/llvm/llvm-project/pull/150417 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-08-01 Thread Endre Fülöp via cfe-commits
@@ -0,0 +1,168 @@ +//=== StoreToImmutableChecker.cpp - Store to immutable memory ---*- C++ -*-===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Ap

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-08-01 Thread Endre Fülöp via cfe-commits
https://github.com/gamesh411 updated https://github.com/llvm/llvm-project/pull/150417 From 0630d81e544319a1a18798996760775d4a13f7ad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Endre=20F=C3=BCl=C3=B6p?= Date: Thu, 24 Jul 2025 14:49:14 +0200 Subject: [PATCH 01/20] [clang][analyzer] Add StoreToImmuta

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-08-01 Thread Endre Fülöp via cfe-commits
https://github.com/gamesh411 updated https://github.com/llvm/llvm-project/pull/150417 From 0630d81e544319a1a18798996760775d4a13f7ad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Endre=20F=C3=BCl=C3=B6p?= Date: Thu, 24 Jul 2025 14:49:14 +0200 Subject: [PATCH 01/18] [clang][analyzer] Add StoreToImmuta

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-31 Thread Donát Nagy via cfe-commits
@@ -0,0 +1,168 @@ +//=== StoreToImmutableChecker.cpp - Store to immutable memory ---*- C++ -*-===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Ap

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-31 Thread Donát Nagy via cfe-commits
@@ -0,0 +1,23 @@ +// Global const variable NagyDonat wrote: I would prefer removing this comment and "// Const struct member" because they just state the obvious. https://github.com/llvm/llvm-project/pull/150417 ___ c

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-30 Thread Endre Fülöp via cfe-commits
@@ -11,6 +11,7 @@ // //===--===// +#include "clang/AST/ParentMap.h" gamesh411 wrote: Yeah, this was part of my attempt to use the structure of the AST to detect the lambda initialisation. R

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-30 Thread Endre Fülöp via cfe-commits
@@ -29,11 +30,59 @@ class StoreToImmutableChecker : public Checker { void checkBind(SVal Loc, SVal Val, const Stmt *S, CheckerContext &C) const; private: + bool isInitializationContext(const Stmt *S, CheckerContext &C) const; bool isEffectivelyConstRegion(const MemRegio

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-30 Thread Endre Fülöp via cfe-commits
@@ -0,0 +1,10 @@ +// RUN: %clang_analyze_cc1 -analyzer-checker=alpha.core.StoreToImmutable -std=c++14 -verify %s + +// expected-no-diagnostics + +// In C++14 and before, when initializing a lambda, the statement given in the checkBind callback is not the whole DeclExpr, but the

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-30 Thread Endre Fülöp via cfe-commits
https://github.com/gamesh411 updated https://github.com/llvm/llvm-project/pull/150417 From 0630d81e544319a1a18798996760775d4a13f7ad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Endre=20F=C3=BCl=C3=B6p?= Date: Thu, 24 Jul 2025 14:49:14 +0200 Subject: [PATCH 01/16] [clang][analyzer] Add StoreToImmuta

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-30 Thread Endre Fülöp via cfe-commits
@@ -0,0 +1,120 @@ +// RUN: %clang_analyze_cc1 -analyzer-checker=alpha.core.StoreToImmutable -verify %s + +// Test basic functionality of StoreToImmutable checker for the C programming language. + +const int tentative_global_const; // expected-note {{Memory region is in immutabl

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-30 Thread Endre Fülöp via cfe-commits
@@ -0,0 +1,187 @@ +//=== StoreToImmutableChecker.cpp - Store to immutable memory ---*- C++ -*-===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Ap

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-30 Thread Endre Fülöp via cfe-commits
@@ -0,0 +1,187 @@ +//=== StoreToImmutableChecker.cpp - Store to immutable memory ---*- C++ -*-===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Ap

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-30 Thread Endre Fülöp via cfe-commits
@@ -0,0 +1,32 @@ +// RUN: %clang_analyze_cc1 -analyzer-checker=alpha.core.StoreToImmutable %s + +// Global const variable +const int global_const = 42; gamesh411 wrote: I have made the simplification, and it still has an example for a global and a local variable

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-30 Thread Endre Fülöp via cfe-commits
@@ -0,0 +1,32 @@ +// RUN: %clang_analyze_cc1 -analyzer-checker=alpha.core.StoreToImmutable %s + +// Global const variable +const int global_const = 42; + +void test_global_const() { gamesh411 wrote: Simplified https://github.com/llvm/llvm-project/pull/150417 ___

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-30 Thread Endre Fülöp via cfe-commits
@@ -0,0 +1,32 @@ +// RUN: %clang_analyze_cc1 -analyzer-checker=alpha.core.StoreToImmutable %s gamesh411 wrote: Removed https://github.com/llvm/llvm-project/pull/150417 ___ cfe-commits mailing list cfe-commits@lists.llv

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-30 Thread Endre Fülöp via cfe-commits
@@ -0,0 +1,32 @@ +// RUN: %clang_analyze_cc1 -analyzer-checker=alpha.core.StoreToImmutable %s + +// Global const variable +const int global_const = 42; + +void test_global_const() { + *(int *)&global_const = 100; // warn: Writing to immutable memory +} + +// String literal +// NO

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-30 Thread Endre Fülöp via cfe-commits
@@ -0,0 +1,10 @@ +// RUN: %clang_analyze_cc1 -analyzer-checker=alpha.core.StoreToImmutable -std=c++14 -verify %s gamesh411 wrote: Added versions from C++11 - C++20 https://github.com/llvm/llvm-project/pull/150417 ___

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-30 Thread Endre Fülöp via cfe-commits
@@ -0,0 +1,120 @@ +// RUN: %clang_analyze_cc1 -analyzer-checker=alpha.core.StoreToImmutable -verify %s + +// Test basic functionality of StoreToImmutable checker for the C programming language. + +const int tentative_global_const; // expected-note {{Memory region is in immutabl

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-30 Thread Endre Fülöp via cfe-commits
@@ -0,0 +1,120 @@ +// RUN: %clang_analyze_cc1 -analyzer-checker=alpha.core.StoreToImmutable -verify %s + +// Test basic functionality of StoreToImmutable checker for the C programming language. + +const int tentative_global_const; // expected-note {{Memory region is in immutabl

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-30 Thread Endre Fülöp via cfe-commits
https://github.com/gamesh411 updated https://github.com/llvm/llvm-project/pull/150417 From 0630d81e544319a1a18798996760775d4a13f7ad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Endre=20F=C3=BCl=C3=B6p?= Date: Thu, 24 Jul 2025 14:49:14 +0200 Subject: [PATCH 01/15] [clang][analyzer] Add StoreToImmuta

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-30 Thread Balazs Benics via cfe-commits
Endre =?utf-8?q?F=C3=BCl=C3=B6p?= , Endre =?utf-8?q?F=C3=BCl=C3=B6p?= , Endre =?utf-8?q?F=C3=BCl=C3=B6p?= , Endre =?utf-8?q?F=C3=BCl=C3=B6p?= , Endre =?utf-8?q?F=C3=BCl=C3=B6p?= , Endre =?utf-8?q?F=C3=BCl=C3=B6p?= , Endre =?utf-8?q?F=C3=BCl=C3=B6p?= , Endre =?utf-8?q?F=C3=BCl=C3=B6p?= , Endre =?utf

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-30 Thread Donát Nagy via cfe-commits
https://github.com/NagyDonat edited https://github.com/llvm/llvm-project/pull/150417 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-30 Thread Donát Nagy via cfe-commits
@@ -0,0 +1,32 @@ +// RUN: %clang_analyze_cc1 -analyzer-checker=alpha.core.StoreToImmutable %s + +// Global const variable +const int global_const = 42; NagyDonat wrote: @steakhal You are right that globals and locals are handled differently _by the checker imple

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-30 Thread Donát Nagy via cfe-commits
@@ -29,11 +30,59 @@ class StoreToImmutableChecker : public Checker { void checkBind(SVal Loc, SVal Val, const Stmt *S, CheckerContext &C) const; private: + bool isInitializationContext(const Stmt *S, CheckerContext &C) const; bool isEffectivelyConstRegion(const MemRegio

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-30 Thread Balazs Benics via cfe-commits
Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= Message-ID: In-Reply-To:

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-30 Thread Endre Fülöp via cfe-commits
@@ -0,0 +1,187 @@ +//=== StoreToImmutableChecker.cpp - Store to immutable memory ---*- C++ -*-===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Ap

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-30 Thread Endre Fülöp via cfe-commits
@@ -0,0 +1,32 @@ +// RUN: %clang_analyze_cc1 -analyzer-checker=alpha.core.StoreToImmutable %s + +// Global const variable +const int global_const = 42; + +void test_global_const() { gamesh411 wrote: Maybe just a single function that tests all use cases would be m

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-30 Thread Endre Fülöp via cfe-commits
@@ -0,0 +1,10 @@ +// RUN: %clang_analyze_cc1 -analyzer-checker=alpha.core.StoreToImmutable -std=c++14 -verify %s gamesh411 wrote: Add more C++ standard versions. https://github.com/llvm/llvm-project/pull/150417 ___ cf

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-30 Thread Endre Fülöp via cfe-commits
@@ -0,0 +1,32 @@ +// RUN: %clang_analyze_cc1 -analyzer-checker=alpha.core.StoreToImmutable %s + +// Global const variable +const int global_const = 42; gamesh411 wrote: Don't emphasise "global" in variable names, as globals and local variables are handled the sa

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-30 Thread Endre Fülöp via cfe-commits
https://github.com/gamesh411 commented: Review suggestions resulting from consulting with @NagyDonat https://github.com/llvm/llvm-project/pull/150417 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listin

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-30 Thread Endre Fülöp via cfe-commits
@@ -0,0 +1,32 @@ +// RUN: %clang_analyze_cc1 -analyzer-checker=alpha.core.StoreToImmutable %s gamesh411 wrote: No need for a runline in an example file. https://github.com/llvm/llvm-project/pull/150417 ___ cfe-commits

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-30 Thread Endre Fülöp via cfe-commits
@@ -0,0 +1,187 @@ +//=== StoreToImmutableChecker.cpp - Store to immutable memory ---*- C++ -*-===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Ap

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-30 Thread Endre Fülöp via cfe-commits
@@ -0,0 +1,120 @@ +// RUN: %clang_analyze_cc1 -analyzer-checker=alpha.core.StoreToImmutable -verify %s + +// Test basic functionality of StoreToImmutable checker for the C programming language. + +const int tentative_global_const; // expected-note {{Memory region is in immutabl

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-30 Thread Endre Fülöp via cfe-commits
@@ -0,0 +1,120 @@ +// RUN: %clang_analyze_cc1 -analyzer-checker=alpha.core.StoreToImmutable -verify %s + +// Test basic functionality of StoreToImmutable checker for the C programming language. + +const int tentative_global_const; // expected-note {{Memory region is in immutabl

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-30 Thread Endre Fülöp via cfe-commits
https://github.com/gamesh411 edited https://github.com/llvm/llvm-project/pull/150417 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-30 Thread Endre Fülöp via cfe-commits
@@ -0,0 +1,120 @@ +// RUN: %clang_analyze_cc1 -analyzer-checker=alpha.core.StoreToImmutable -verify %s + +// Test basic functionality of StoreToImmutable checker for the C programming language. + +const int tentative_global_const; // expected-note {{Memory region is in immutabl

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-30 Thread Endre Fülöp via cfe-commits
@@ -0,0 +1,32 @@ +// RUN: %clang_analyze_cc1 -analyzer-checker=alpha.core.StoreToImmutable %s + +// Global const variable +const int global_const = 42; + +void test_global_const() { + *(int *)&global_const = 100; // warn: Writing to immutable memory +} + +// String literal +// NO

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-30 Thread Balazs Benics via cfe-commits
Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= Message-ID: In-Reply-To: steakhal wro

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-30 Thread Balazs Benics via cfe-commits
Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= Message-ID: In-Reply-To:

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-30 Thread Balazs Benics via cfe-commits
Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= Message-ID: In-Reply-To: steakhal wro

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-30 Thread Balazs Benics via cfe-commits
Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= Message-ID: In-Reply-To:

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-30 Thread Balazs Benics via cfe-commits
Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= Message-ID: In-Reply-To:

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-30 Thread Endre Fülöp via cfe-commits
https://github.com/gamesh411 edited https://github.com/llvm/llvm-project/pull/150417 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-30 Thread Endre Fülöp via cfe-commits
@@ -0,0 +1,134 @@ +//=== StoreToImmutableChecker.cpp - Store to immutable memory ---*- C++ -*-===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Ap

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-29 Thread Endre Fülöp via cfe-commits
https://github.com/gamesh411 updated https://github.com/llvm/llvm-project/pull/150417 From 0630d81e544319a1a18798996760775d4a13f7ad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Endre=20F=C3=BCl=C3=B6p?= Date: Thu, 24 Jul 2025 14:49:14 +0200 Subject: [PATCH 01/11] [clang][analyzer] Add StoreToImmuta

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-29 Thread Endre Fülöp via cfe-commits
@@ -0,0 +1,136 @@ +//=== StoreToImmutableChecker.cpp - Store to immutable memory ---*- C++ -*-===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Ap

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-29 Thread Endre Fülöp via cfe-commits
@@ -29,29 +29,24 @@ class StoreToImmutableChecker : public Checker { void checkBind(SVal Loc, SVal Val, const Stmt *S, CheckerContext &C) const; private: - bool isConstVariable(const MemRegion *MR, CheckerContext &C) const; + bool isEffectivelyConstRegion(const MemRegion

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-29 Thread Endre Fülöp via cfe-commits
@@ -62,22 +57,33 @@ bool StoreToImmutableChecker::isConstVariable(const MemRegion *MR, return true; } - // Check if this is an ElementRegion accessing a const array - if (const ElementRegion *ER = dyn_cast(MR)) { -return isConstQualifiedType(ER->getSuperRegion()

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-29 Thread Endre Fülöp via cfe-commits
@@ -8,6 +8,7 @@ void test_global_const() { } // String literal +// NOTE: This only works in C++, not in C, as the analyzer treats string literals as non-const char arrays in C mode. gamesh411 wrote: The const keyword was introduced in the ANSI C standard (C8

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-29 Thread Endre Fülöp via cfe-commits
https://github.com/gamesh411 updated https://github.com/llvm/llvm-project/pull/150417 From 0630d81e544319a1a18798996760775d4a13f7ad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Endre=20F=C3=BCl=C3=B6p?= Date: Thu, 24 Jul 2025 14:49:14 +0200 Subject: [PATCH 1/8] [clang][analyzer] Add StoreToImmutabl

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-29 Thread Endre Fülöp via cfe-commits
https://github.com/gamesh411 edited https://github.com/llvm/llvm-project/pull/150417 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-29 Thread Endre Fülöp via cfe-commits
https://github.com/gamesh411 edited https://github.com/llvm/llvm-project/pull/150417 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-29 Thread Endre Fülöp via cfe-commits
https://github.com/gamesh411 edited https://github.com/llvm/llvm-project/pull/150417 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-29 Thread Endre Fülöp via cfe-commits
@@ -0,0 +1,134 @@ +//=== StoreToImmutableChecker.cpp - Store to immutable memory ---*- C++ -*-===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Ap

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-28 Thread Balazs Benics via cfe-commits
Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= , Endre =?utf-8?q?Fülöp?= Message-ID: In-Reply-To: @@ -0,0 +1,134 @@ +//=== StoreToImmutableChecker.cpp - Store to immutable memory ---*- C++ -*-===// +// +// Part of the LLVM Project, under the Apache

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-28 Thread Endre Fülöp via cfe-commits
https://github.com/gamesh411 updated https://github.com/llvm/llvm-project/pull/150417 From 0630d81e544319a1a18798996760775d4a13f7ad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Endre=20F=C3=BCl=C3=B6p?= Date: Thu, 24 Jul 2025 14:49:14 +0200 Subject: [PATCH 1/5] [clang][analyzer] Add StoreToImmutabl

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-28 Thread Endre Fülöp via cfe-commits
https://github.com/gamesh411 edited https://github.com/llvm/llvm-project/pull/150417 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-28 Thread Endre Fülöp via cfe-commits
@@ -0,0 +1,146 @@ +//=== StoreToImmutableChecker.cpp - Store to immutable memory checker -*- C++ +//-*-===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identi

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-28 Thread Endre Fülöp via cfe-commits
@@ -0,0 +1,134 @@ +//=== StoreToImmutableChecker.cpp - Store to immutable memory ---*- C++ -*-===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Ap

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-28 Thread Endre Fülöp via cfe-commits
https://github.com/gamesh411 updated https://github.com/llvm/llvm-project/pull/150417 From 0630d81e544319a1a18798996760775d4a13f7ad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Endre=20F=C3=BCl=C3=B6p?= Date: Thu, 24 Jul 2025 14:49:14 +0200 Subject: [PATCH 1/4] [clang][analyzer] Add StoreToImmutabl

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-28 Thread Endre Fülöp via cfe-commits
https://github.com/gamesh411 updated https://github.com/llvm/llvm-project/pull/150417 From 0630d81e544319a1a18798996760775d4a13f7ad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Endre=20F=C3=BCl=C3=B6p?= Date: Thu, 24 Jul 2025 14:49:14 +0200 Subject: [PATCH 1/3] [clang][analyzer] Add StoreToImmutabl

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-28 Thread Balazs Benics via cfe-commits
Endre =?utf-8?q?Fülöp?= Message-ID: In-Reply-To: @@ -0,0 +1,166 @@ +// RUN: %clang_analyze_cc1 -analyzer-checker=alpha.core.StoreToImmutable -verify %s + +// Test basic functionality of StoreToImmutable checker +// This tests direct writes to immutable regions without function

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-28 Thread Endre Fülöp via cfe-commits
@@ -0,0 +1,134 @@ +//=== StoreToImmutableChecker.cpp - Store to immutable memory ---*- C++ -*-===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Ap

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-28 Thread Balazs Benics via cfe-commits
Endre =?utf-8?q?Fülöp?= Message-ID: In-Reply-To: @@ -0,0 +1,166 @@ +// RUN: %clang_analyze_cc1 -analyzer-checker=alpha.core.StoreToImmutable -verify %s + +// Test basic functionality of StoreToImmutable checker +// This tests direct writes to immutable regions without function

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-28 Thread Donát Nagy via cfe-commits
@@ -0,0 +1,166 @@ +// RUN: %clang_analyze_cc1 -analyzer-checker=alpha.core.StoreToImmutable -verify %s + +// Test basic functionality of StoreToImmutable checker +// This tests direct writes to immutable regions without function modeling + +// Direct write to a const global varia

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-28 Thread Balazs Benics via cfe-commits
Endre =?utf-8?q?Fülöp?= Message-ID: In-Reply-To: https://github.com/steakhal edited https://github.com/llvm/llvm-project/pull/150417 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-28 Thread Balazs Benics via cfe-commits
Endre =?utf-8?q?Fülöp?= Message-ID: In-Reply-To: @@ -0,0 +1,166 @@ +// RUN: %clang_analyze_cc1 -analyzer-checker=alpha.core.StoreToImmutable -verify %s + +// Test basic functionality of StoreToImmutable checker +// This tests direct writes to immutable regions without function

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-28 Thread Balazs Benics via cfe-commits
Endre =?utf-8?q?Fülöp?= Message-ID: In-Reply-To: @@ -0,0 +1,166 @@ +// RUN: %clang_analyze_cc1 -analyzer-checker=alpha.core.StoreToImmutable -verify %s + +// Test basic functionality of StoreToImmutable checker +// This tests direct writes to immutable regions without function

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-28 Thread Endre Fülöp via cfe-commits
https://github.com/gamesh411 edited https://github.com/llvm/llvm-project/pull/150417 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-28 Thread Endre Fülöp via cfe-commits
https://github.com/gamesh411 edited https://github.com/llvm/llvm-project/pull/150417 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-28 Thread Endre Fülöp via cfe-commits
@@ -0,0 +1,166 @@ +// RUN: %clang_analyze_cc1 -analyzer-checker=alpha.core.StoreToImmutable -verify %s + +// Test basic functionality of StoreToImmutable checker +// This tests direct writes to immutable regions without function modeling + +// Direct write to a const global varia

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-28 Thread Endre Fülöp via cfe-commits
@@ -0,0 +1,166 @@ +// RUN: %clang_analyze_cc1 -analyzer-checker=alpha.core.StoreToImmutable -verify %s + +// Test basic functionality of StoreToImmutable checker +// This tests direct writes to immutable regions without function modeling + +// Direct write to a const global varia

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-28 Thread Endre Fülöp via cfe-commits
@@ -0,0 +1,166 @@ +// RUN: %clang_analyze_cc1 -analyzer-checker=alpha.core.StoreToImmutable -verify %s + +// Test basic functionality of StoreToImmutable checker +// This tests direct writes to immutable regions without function modeling + +// Direct write to a const global varia

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-25 Thread Balazs Benics via cfe-commits
Endre =?utf-8?q?Fülöp?= Message-ID: In-Reply-To: steakhal wrote: FYI please never tag anyone in commit title/message. And make sure that holds even if you push the Merge button on the GitHub UI. Otherwise the person would get pinged and spammed by emails forever. https://github.com/llvm/llv

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-25 Thread Balazs Benics via cfe-commits
Endre =?utf-8?q?Fülöp?= Message-ID: In-Reply-To: @@ -0,0 +1,134 @@ +//=== StoreToImmutableChecker.cpp - Store to immutable memory ---*- C++ -*-===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-25 Thread Balazs Benics via cfe-commits
Endre =?utf-8?q?Fülöp?= Message-ID: In-Reply-To: @@ -0,0 +1,134 @@ +//=== StoreToImmutableChecker.cpp - Store to immutable memory ---*- C++ -*-===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-25 Thread Balazs Benics via cfe-commits
Endre =?utf-8?q?Fülöp?= Message-ID: In-Reply-To: @@ -0,0 +1,134 @@ +//=== StoreToImmutableChecker.cpp - Store to immutable memory ---*- C++ -*-===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-25 Thread Balazs Benics via cfe-commits
Endre =?utf-8?q?Fülöp?= Message-ID: In-Reply-To: @@ -0,0 +1,146 @@ +//=== StoreToImmutableChecker.cpp - Store to immutable memory checker -*- C++ +//-*-===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-25 Thread Balazs Benics via cfe-commits
Endre =?utf-8?q?Fülöp?= Message-ID: In-Reply-To: @@ -0,0 +1,166 @@ +// RUN: %clang_analyze_cc1 -analyzer-checker=alpha.core.StoreToImmutable -verify %s + +// Test basic functionality of StoreToImmutable checker +// This tests direct writes to immutable regions without function

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-25 Thread Balazs Benics via cfe-commits
Endre =?utf-8?q?Fülöp?= Message-ID: In-Reply-To: @@ -0,0 +1,166 @@ +// RUN: %clang_analyze_cc1 -analyzer-checker=alpha.core.StoreToImmutable -verify %s + +// Test basic functionality of StoreToImmutable checker +// This tests direct writes to immutable regions without function

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-25 Thread Balazs Benics via cfe-commits
Endre =?utf-8?q?Fülöp?= Message-ID: In-Reply-To: @@ -0,0 +1,166 @@ +// RUN: %clang_analyze_cc1 -analyzer-checker=alpha.core.StoreToImmutable -verify %s + +// Test basic functionality of StoreToImmutable checker +// This tests direct writes to immutable regions without function

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-25 Thread Balazs Benics via cfe-commits
Endre =?utf-8?q?Fülöp?= Message-ID: In-Reply-To: https://github.com/steakhal edited https://github.com/llvm/llvm-project/pull/150417 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-24 Thread Endre Fülöp via cfe-commits
https://github.com/gamesh411 edited https://github.com/llvm/llvm-project/pull/150417 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-24 Thread Endre Fülöp via cfe-commits
https://github.com/gamesh411 updated https://github.com/llvm/llvm-project/pull/150417 From 0630d81e544319a1a18798996760775d4a13f7ad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Endre=20F=C3=BCl=C3=B6p?= Date: Thu, 24 Jul 2025 14:49:14 +0200 Subject: [PATCH 1/2] [clang][analyzer] Add StoreToImmutabl

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-24 Thread Endre Fülöp via cfe-commits
https://github.com/gamesh411 edited https://github.com/llvm/llvm-project/pull/150417 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-24 Thread Endre Fülöp via cfe-commits
@@ -0,0 +1,146 @@ +//=== StoreToImmutableChecker.cpp - Store to immutable memory checker -*- C++ +//-*-===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identi

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-24 Thread Endre Fülöp via cfe-commits
@@ -0,0 +1,166 @@ +// RUN: %clang_analyze_cc1 -analyzer-checker=alpha.core.StoreToImmutable -verify %s + +// Test basic functionality of StoreToImmutable checker +// This tests direct writes to immutable regions without function modeling + +// Direct write to a const global varia

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-24 Thread Endre Fülöp via cfe-commits
@@ -0,0 +1,146 @@ +//=== StoreToImmutableChecker.cpp - Store to immutable memory checker -*- C++ +//-*-===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identi

[clang] [clang][analyzer] Add StoreToImmutable checker (PR #150417)

2025-07-24 Thread via cfe-commits
github-actions[bot] wrote: :warning: C/C++ code formatter, clang-format found issues in your code. :warning: You can test this locally with the following command: ``bash git-clang-format --diff HEAD~1 HEAD --extensions cpp,h -- clang/docs/analyzer/checkers/storetoimmutable_examp

  1   2   >