Ada subtypes and base types
Jeffrey A Law
law@redhat.com
Fri Feb 24 00:59:00 GMT 2006
On Wed, 2006-02-22 at 13:25 -0500, Richard Kenner wrote:
> When I speak about doing arithmetic in a type, I'm referring to the
> type of the expression & its input operands in a gimplified
> expression. At that point I do not care about base types or anything
> like that. All that should matter is TREE_TYPE (expr), nothing more,
> nothing less. How the inputs are converted or how the output is later
> converted is not a concern -- all that matters is TREE_TYPE (expr) in
> a gimplified tree.
>
> Can we agree on that?
>
> Yes.
>
> The base type reference is that I'm *also* saying "If you see an arithmetic
> node where TREE_TYPE is *not* a base type, there's a bug someplace that
> has to be fixed". (Well, with the exception of such things as sizetypes
> or subtypes that don't actually change anything.)
Just to make sure I've dotted the i's and crossed the t's, this
is not what's happening when we hang in VRP when compiling a-textio.
We convert the incoming object from natural___XDLU_0___2147483647
into its base type, perform the addition in the base type, then
convert back to XDLU_0_2147483647.
Jeff
More information about the Gcc
mailing list