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

Alexander Monakov <amonakov at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |wrong-code
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2018-07-21
                 CC|                            |amonakov at gcc dot gnu.org
            Summary|Volatile qualifier is       |[6/7/8/9 Regression]
                   |ignored sometimes for       |Volatile qualifier is
                   |unsigned char               |ignored sometimes for
                   |                            |unsigned char
     Ever confirmed|0                           |1

--- Comment #1 from Alexander Monakov <amonakov at gcc dot gnu.org> ---
Confirmed, 'unsigned short' is similarly mishandled, but not wider integer
types. gcc-4.9 got this right. Appears like over-eager folding in the frontend:
in the .original dump I get

{
  u8 = u8 * 2;
  u8 = u8, 0;
}

Reply via email to