On 2/20/06, Richard Kenner <[EMAIL PROTECTED]> wrote:
>      Indeed.  Ada should in this case generate
>
>        R = (T)( (basetype)100 + (basetype)X - (basetype)X )
>
>      i.e. carry out all arithmetic explicitly in the basetype and only for
>      stores and loads use the subtype.
>
> That is indeed required by the language and what is normally generated.
> It would be valuable to see exactly who generated the bogus operation.
>

Indeed - I can very well imagine fold or ccp stripping off such type conversions
in some case, which would lead to wrong code by VRP.

Richard.

Reply via email to