Richard Kenner wrote:

Let me try again and take a simpler example.  If we have

        subtype T is Integer range 20..50;

        Y: T;

           ... Y + 1 ...

What the tree looks like is a PLUS_EXPR of type "Integer" (the base type of
T), not T, whose first operand is a NOP_EXPR converting Y to Integer and
whose second operand is the constant 1 also of type Integer, not T.

Note that this *exactly* reflects the formal Ada semantics ...

Reply via email to