------- Additional Comments From jakub at gcc dot gnu dot org  2005-01-06 15:52 
-------
Yeah, this is fold_widened_comparison "optimizing":
(short intD.7) (short unsigned intD.8) (intD.0) (short unsigned intD.8) uD.1124 
<
0
into 1 (for unsigned int uD.1124).
get_unwidened returns (unsigned short) uD.1124 (note different sign; and that
seems to be what get_unwidened documents:
If we have not stripped any zero-extensions (uns is 0), we can strip any kind of
extension.).
But I guess fold_widened_comparison relies on shorter_type really being a 
shorter
type.  Will look into this further.

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|unassigned at gcc dot gnu   |jakub at gcc dot gnu dot org
                   |dot org                     |
             Status|NEW                         |ASSIGNED
   Last reconfirmed|2005-01-06 00:27:06         |2005-01-06 15:52:31
               date|                            |


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19283

Reply via email to