https://gcc.gnu.org/bugzilla/show_bug.cgi?id=118498
Bug ID: 118498 Summary: -Wmismatched-dealloc false negative Product: gcc Version: 15.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c Assignee: unassigned at gcc dot gnu.org Reporter: alx at kernel dot org Target Milestone: --- Hi, I don't find this having been reported; it seems quite trivial. alx@devuan:~/tmp/gcc$ cat malloc2.c #include <stdio.h> #include <stdlib.h> [[gnu::malloc(free)]] char *f(void); int main(void) { char *s; s = f(); if (s == NULL) return 1; puts(s); } alx@devuan:~/tmp/gcc$ gcc-15 -Wall -Wextra -Wmismatched-dealloc -S -fanalyzer -O3 malloc2.c alx@devuan:~/tmp/gcc$ gcc-15 -Wall -Wextra -Wmismatched-dealloc -S -fanalyzer malloc2.c alx@devuan:~/tmp/gcc$ gcc-15 --version gcc-15 (Debian 15-20250114-1) 15.0.1 20250114 (experimental) [master r15-6887-g20b8500cfa5] Copyright (C) 2025 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. I can also reproduce it with gcc-14.