This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug c/11663] gcc ignores the cast and emits a warning


PLEASE REPLY TO gcc-bugzilla@gcc.gnu.org ONLY, *NOT* gcc-bugs@gcc.gnu.org.

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



------- Additional Comments From jashepherd at usa dot net  2003-07-24 18:54 -------
Subject: Re:  gcc ignores the cast and emits a warning

A cast to (short) has to assume the constraints of the cast datatype
not the original data type.

The result of the entire if test

    if ((short)trans_ind >= 0 && (short)trans_ind <= 3)

can never be 'always true' regardless of whether the datatype
is char, unsigned char or short.

only in the case where the test is

    if ( trans_ind >= 0 )

would the warning be valid.







At 2003-07-24 18:14 +0000, you wrote:
>PLEASE REPLY TO gcc-bugzilla@gcc.gnu.org ONLY, *NOT* gcc-bugs@gcc.gnu.org.
>
>http://gcc.gnu.org/bugzilla/show_bug.cgi?id=11663
>
>
>pinskia at physics dot uc dot edu changed:
>
>            What    |Removed                     |Added
>----------------------------------------------------------------------------
>              Status|UNCONFIRMED                 |RESOLVED
>            Keywords|                            |diagnostic
>          Resolution|                            |INVALID
>             Summary|gcc ignores the cast and    |gcc ignores the cast and
>                    |emits a warning             |emits a warning
>    Target Milestone|3.4                         |---
>
>
>------- Additional Comments From pinskia at physics dot uc dot 
>edu  2003-07-24 18:14 -------
>The warning is correct because converting unsigned char to short will 
>always be positive
>or zero.  GCC is keeping the range information for trans_ind, if you want 
>to convert
>unsigned char to signed short with trans_ind > 127 being negative add a 
>cast to signed
>char first.
>
>
>
>------- You are receiving this mail because: -------
>You reported the bug, or are watching the reporter.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]