https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78964

Markus Trippelsdorf <trippels at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |trippels at gcc dot gnu.org

--- Comment #1 from Markus Trippelsdorf <trippels at gcc dot gnu.org> ---
(In reply to David Binderman from comment #0)
> Given the following C / C++ code:
> 
> extern void g( int);
> 
> void f( int n)
> {
>       int m = 0;
> 
>       for (int i = 0; i < n; ++i)
>       {
>               g(i);
>               ++m;
>       }
> }
> 
> gcc trunk dated 20161231 fails to detect that m can be safely removed:
> 
> $ ~/gcc/results/bin/gcc -c -g -O2 -Wall -Wextra jan02.cc
> $
> 
> I think fixing this bug report will find about 100 bugs
> in the linux kernel.

I can see no bug. The compiler will of course eliminate the pointless ++m.
Why should it warn?

Reply via email to