From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 4.0.1 (2024-03-25) on ip-172-31-91-241.ec2.internal X-Spam-Level: X-Spam-Status: No, score=0.0 required=3.0 tests=none autolearn=ham autolearn_force=no version=4.0.1 Path: nntp.eternal-september.org!eternal-september.org!feeder.eternal-september.org!.POSTED!not-for-mail From: Kevin Chadwick Newsgroups: comp.lang.ada Subject: Re: In precision typing we trust Date: Thu, 28 Aug 2025 08:50:10 -0000 (UTC) Organization: A noiseless patient Spider Message-ID: <108p582$17opg$1@dont-email.me> References: <107uv9g$3019a$1@dont-email.me> <107v1ji$303of$1@dont-email.me> <336fbb5f-a279-ea8e-67fd-f62bb00d6a89@irrt.De> <107vfb9$34cpj$1@dont-email.me> <10855lq$gj8l$1@dont-email.me> <1088h1a$19635$1@dont-email.me> <1089p1i$1ig1d$1@dont-email.me> <108aq2p$1qo9o$1@dont-email.me> <108dh2l$2f5h3$1@dont-email.me> <108ej11$2mbr8$1@dont-email.me> <108g1fv$32gqg$3@dont-email.me> <108h6b7$3a75k$3@dont-email.me> <87plcjn5ru.fsf@nightsong.com> <108hek3$3c6u1$1@dont-email.me> <87ldn7mil5.fsf@nightsong.com> <108ift9$3kh0r$1@dont-email.me> <108ijl2$3lihe$5@dont-email.me> <108jphl$3ti12$1@dont-email.me> <108liii$br9n$3@dont-email.me> <108mcoe$gv59$1@dont-email.me> <108o396$vok4$6@dont-email.me> <108o5hu$10c60$1@dont-email.me> <108o883$10pj9$4@dont-email.me> <108p1v3$16qn1$1@dont-email.me> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Injection-Date: Thu, 28 Aug 2025 08:50:10 +0000 (UTC) Injection-Info: dont-email.me; posting-host="aed4e9b586c9bb7a612fda865bcca975"; logging-data="1303344"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19+B8g2J1FBZTtaxaGKA63RJdOUnz0szaA=" User-Agent: PhoNews/3.13.3 (Android/14) Cancel-Lock: sha1:/I5KZlN3Pe5pTQg2MrPNcYL9cok= In-Reply-To: <108p1v3$16qn1$1@dont-email.me> Xref: feeder.eternal-september.org comp.lang.ada:66965 List-Id: > >I can explain how it works. When a DLL is loaded its library level gets >elaborated. So if you have: > >package P is > type T is tagged ... >end P; > >in the main program or DLL and > >with P; >package Q is > type S is new T with ... > function F return T'Class; >end Q; > >in the DLL being loaded, then in the process of elaboration S will be >created which in particular means extending of the dispatching table. >You can return a class-wide object from there and dispatch on the newly >created type's operation. > >Clear? Interesting, better than the shape examples but I guess you have to get that in the first instance. -- Regards, Kc