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

Manuel López-Ibáñez <manu at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |SUSPENDED
   Last reconfirmed|                            |2016-08-19
                 CC|                            |manu at gcc dot gnu.org
            Summary|Spurious "warning: logical  |value range propagation
                   |not is only applied to the  |(VRP) would improve
                   |left hand side of           |-Wlogical-not-parentheses
                   |comparison"                 |
     Ever confirmed|0                           |1

--- Comment #4 from Manuel López-Ibáñez <manu at gcc dot gnu.org> ---
Note that Clang suggests two ways to silence the warning:

prog.cc:9:10: note: add parentheses after the '!' to evaluate the comparison
first
  return !a == b;
         ^
          (     )
prog.cc:9:10: note: add parentheses around left hand side expression to silence
this warning
  return !a == b;
         ^
         ( )


Also, we do not warn for actual booleans (bool).

To be able to not warn based on the runtime range of variables, we would need
something like VRP in the FE, and that is unlikely to be implemented in the
medium future.

Reply via email to