[Bug analyzer/115996] New: Missing -Wanalyzer-infinite-loop with -Waddress violation
sjames at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Fri Jul 19 04:50:00 GMT 2024
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115996
Bug ID: 115996
Summary: Missing -Wanalyzer-infinite-loop with -Waddress
violation
Product: gcc
Version: 15.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: analyzer
Assignee: dmalcolm at gcc dot gnu.org
Reporter: sjames at gcc dot gnu.org
Target Milestone: ---
```
int i;
int foo() {
while(foo) {
i++;
}
}
```
```
$ gcc /tmp/p.c -fanalyzer -Wall -Wextra -c
/tmp/p.c: In function ‘foo’:
/tmp/p.c:4:15: warning: the address of ‘foo’ will always evaluate as ‘true’
[-Waddress]
4 | while(foo) {
| ^~~
$ gcc /tmp/p.c -fanalyzer -Wall -Wextra -O2 -c
/tmp/p.c: In function ‘foo’:
/tmp/p.c:4:15: warning: the address of ‘foo’ will always evaluate as ‘true’
[-Waddress]
4 | while(foo) {
| ^~~
```
I was expecting to see -Wanalyzer-infinite-loop reported.
I'm not sure if there's interest in the analyzer reporting things when there's
technically another warning for it. But this comes from a more sophisticated
example where the condition wasn't so obvious, so...
More information about the Gcc-bugs
mailing list