This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Ada subtypes and base types (was: Bootstrap failure on trunk: x86_64-linux-gnu)
- From: Jeffrey A Law <law at redhat dot com>
- To: Richard Kenner <kenner at vlsi1 dot ultra dot nyu dot edu>
- Cc: gcc at gcc dot gnu dot org
- Date: Tue, 21 Feb 2006 12:28:32 -0700
- Subject: Re: Ada subtypes and base types (was: Bootstrap failure on trunk: x86_64-linux-gnu)
- References: <10602211914.AA12585@vlsi1.ultra.nyu.edu>
- Reply-to: law at redhat dot com
On Tue, 2006-02-21 at 14:14 -0500, Richard Kenner wrote:
> OK. So if a program sets an object to a value outside
> TYPE_MIN_VALUE/TYPE_MAX_VALUE, then that program is
> invalid for the purposes of this discussion?
>
> Correct. Of course, it has to be the *program* that's doing the set
> (meaning setting a user-defined variable). If the compiler is messing
> up (either front- or middle-end), then this discussion becomes quite
> relevant.
In this specific case it is a user variable. However, we should
probably clarify the compiler-temporary case as well as VRP really
does not and should not care if an object is a user variable or
a compiler generated temporary.
So, if we have an object with the range based on its type of
[0, 0x7fffffff] and we add 1 to that object, the resulting range
should be [1, 0x7fffffff]. ie, 0x80000000 is not a valid value
for the type. Right?
jeff