[PATCH] D124244: [analyzer] add StoreToImmutable and ModelConstQualifiedReturn checkers

Balázs Benics via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Wed Jun 8 07:13:41 PDT 2022


steakhal added a comment.

In D124244#3521728 <https://reviews.llvm.org/D124244#3521728>, @steakhal wrote:

> I found this report at `vim/src/term.c` (https://github.com/vim/vim.git at `v8.2.1920`):
> F23102904: image.png <https://reviews.llvm.org/F23102904>
>
> I'm not sure what the exact type of `BC` global variable is but I think it's declared as either `extern char *BC;` or just `char *BC;`.
> `empty_option` is declared as either `extern unsigned char *empty_option;` or `unsigned char *empty_option = (unsigned char *)"";`
>
> Could you please have a look at this FP @zukatsinadze?

I've checked why we report this. It turns out mutable global variables were considered //immutable// (except the `errno`), which caused FPs in this proposed checker.
I made D127306 <https://reviews.llvm.org/D127306> to keep mutable (system) globals as //mutable// memory.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D124244/new/

https://reviews.llvm.org/D124244



More information about the cfe-commits mailing list