From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.3 required=5.0 tests=BAYES_00,INVALID_MSGID autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,e08ffaff681705c X-Google-Attributes: gid103376,public From: bobduff@world.std.com (Robert A Duff) Subject: Re: access aliased obstacle Date: 1996/07/10 Message-ID: #1/1 X-Deja-AN: 167572990 references: <4rsmn6$hvc@news1.delphi.com> organization: The World Public Access UNIX, Brookline, MA newsgroups: comp.lang.ada Date: 1996-07-10T00:00:00+00:00 List-Id: In article , Robert Dewar wrote: [stuff about storing discriminants separately] If you do that, then in some cases, you can avoid storing the discriminants altogether. If you have a variable X: T(Discrim => static-expression), then there's no need to store X.Discrim anywhere. Of course if X is ever passed to an unconstrained formal parameter, the discriminant value has to be materialized at that point. And aliased variables need to have discriminants attached to them, or accessible in some way. Discriminants are really quite similar to array bounds. - Bob