* Richard Kenner:

>     How sticky are TYPE_MIN_VALUE and TYPE_MAX_VALUE?  Is it possible to
>     get rid of their effect using a NOP_EXPR, CONVERT_EXPR or
>     VIEW_CONVERT_EXPR?
>
> I don't really understand either question.  Also, as to the second,
> keep in mind their role in array indexes.

I'll try to phrase it differently: If you access an object whose bit
pattern does not represent a value in the range given by
TYPE_MIN_VALUE .. TYPE_MAX_VALUE of the corresponding type, does this
result in erroneous execution/undefined behavior?  If not, what is the
exact behavior WRT to out-of-bounds values?

>     If this is impossible, the Ada front end should probably stop setting
>     these fields because it assumes that it can use values outside that
>     range:
>
>     
> http://gcc.gnu.org/onlinedocs/gcc-4.0.0/gnat_ugn_unw/Validity-Checking.html
>
> I don't understand what that chapter has to do with your statement.

These checks are implemented using the 'Valid attribute (see
Checks.Ensure_Valid and Checks.Insert_Valid_Check).

Reply via email to