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=0.2 required=5.0 tests=BAYES_00,INVALID_MSGID, REPLYTO_WITHOUT_TO_CC autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,4ed596f1f077b44e X-Google-Attributes: gid103376,public From: Vance Christiaanse Subject: Re: Primitive Operations Question Date: 1996/07/31 Message-ID: <31FFBFC8.32C9@ix.netcom.com>#1/1 X-Deja-AN: 171312364 references: <31FE812C.7B3D@ix.netcom.com> content-type: text/plain; charset=us-ascii organization: Cintech Consulting x-netcom-date: Wed Jul 31 7:17:18 PM CDT 1996 mime-version: 1.0 reply-to: cintech@ix.netcom.com newsgroups: comp.lang.ada x-mailer: Mozilla 2.02 (Macintosh; I; PPC) Date: 1996-07-31T19:17:18-05:00 List-Id: Robert A Duff wrote: > > In article <31FE812C.7B3D@ix.netcom.com>, > Vance Christiaanse wrote: > >Much to my dismay, the following procedure compiles on the WebAda > >(GNAT 3.04) compiler. By my reading of RM95 3.2.3, A and B don't > >fit any part of the definition of primitive operations, so I > >don't see why iheritance seems to be occurring. > > I agree. Sounds like a compiler bug. > > >... When I replace > >all three types with a hierarchy of tagged types, both calls > >fail to compile, as I would have expected. > > Strange. The word "tagged" appears nowhere in the definition in of > "primitive subprogram" in 3.2.3, so it shouldn't make any difference. > > - Bob Well, type extension of a tagged type in a procedure _could_ lead to dangling references (see Rationale 4.3, package Outer). I suspect that's why a compiler would be more careful to prevent it. Vance Vance Christiaanse Cintech Consulting cintech@ix.netcom.com