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

Andrew Pinski <pinskia at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|dubious overflow warning    |[9/10/11/12 Regression]
                   |                            |wrong overflow warning for
                   |                            |compound expression
                   |                            |conversion and bit_and
                   |                            |expressions
      Known to work|9.4.0                       |4.1.2
      Known to fail|                            |4.4.7
   Target Milestone|---                         |9.5

--- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
I don't think this really a regression from GCC 9 but rather a regression from
a long time ago.
Take:
typedef unsigned long ulong;
typedef unsigned char uchar;


ulong testera(ulong ul) {
    return ((((uchar) (((void)0, ((uchar) (0x80)))|0)) & 0x3f));
}
----- CUT ----
This is slightly different from your teststcase but it warns all the way back
until sometime before 4.4.0 (I only can test 4.1.2).

Reply via email to