https://gcc.gnu.org/bugzilla/show_bug.cgi?id=108660
Bug ID: 108660
Summary: Wrong location for first statement of for loop
(-Wunused-value)
Product: gcc
Version: 13.0
Status: UNCONFIRMED
Keywords: diagnostic
Severity: normal
Priority: P3
Component: c
Assignee: unassigned at gcc dot gnu.org
Reporter: pinskia at gcc dot gnu.org
Target Milestone: ---
Take:
```
void t1(int t)
{
for (t; t < 10; t++)
;
}
```
This should warn about a statement with no effect and GCC does but the location
marker is incorrect. The C front-end underlines the for keyword rather than the
expression `t`.
```
<source>: In function 't1':
<source>:3:3: warning: statement with no effect [-Wunused-value]
3 | for (t; t < 10; t++)
| ^~~
```
Note the C++ front-end gets it correct:
```
<source>: In function 'void t1(int)':
<source>:3:8: warning: statement has no effect [-Wunused-value]
3 | for (t; t < 10; t++)
| ^
```