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,685d80ec307a0c X-Google-Attributes: gid103376,public From: Philippe Torres Subject: Re: use of attribute Pos Date: 2000/10/12 Message-ID: <39E5DE79.F61616EC@laas.fr>#1/1 X-Deja-AN: 680619323 Content-Transfer-Encoding: 7bit References: <39E4A08D.B454CB1C@laas.fr> <39E583F7.A971C8DB@laas.fr> <5DiF5.1987$tN5.213230@nnrp2.sbc.net> X-Accept-Language: fr-FR,en Content-Type: text/plain; charset=us-ascii X-Complaints-To: postmaster@cict.fr X-Trace: news.cict.fr 971366008 1264 140.93.144.128 (12 Oct 2000 15:53:28 GMT) Organization: Inconnue Mime-Version: 1.0 NNTP-Posting-Date: 12 Oct 2000 15:53:28 GMT Newsgroups: comp.lang.ada Date: 2000-10-12T15:53:28+00:00 List-Id: Pat Rogers wrote: > > "Philippe Torres" wrote in message > > But now, i wonder why Alejandro's solution > > ---- > > type Upper is new Character range 'A'..'Z' ; > > begin > > Put(Upper'Pos('A')) ; > > --- > > still manages to output 65 and not 0. > > > > Since a different type is introduced, how does Pos still refer to > > Character ? > > Should not 'new' have broken all "links" between the types Character > and > > Upper ? > > Now things get a little bit more involved. :-) The terminology > invariably confuses people, so I won't be precise in that regard. > Let's just say that what you really have here is a subtype of a type > derived from Character. Since it has a distinct name (Upper) it is a > distinct type, but it is still a constraint on Character. > > Hope that helps, as opposed to making it worse! :-) > OK but to me it would have been more logical to have the attribute Pos reflecting exactly the position of the element in the range of the type which has been "ticked". Anyway thanks for your help but it's a bit misleading for a newbie like me to guess which are the attributes "overloaded" by a subtype or a derived type and which are merely "inherited such as" from the base type. Philippe