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.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM autolearn=unavailable autolearn_force=no version=3.4.4 X-Received: by 2002:a24:13d3:: with SMTP id 202mr629600itz.20.1550504455186; Mon, 18 Feb 2019 07:40:55 -0800 (PST) X-Received: by 2002:aca:4b89:: with SMTP id y131mr255260oia.3.1550504455051; Mon, 18 Feb 2019 07:40:55 -0800 (PST) Path: eternal-september.org!reader01.eternal-september.org!feeder.eternal-september.org!news.gegeweb.eu!gegeweb.org!usenet-fr.net!fdn.fr!proxad.net!feeder1-2.proxad.net!209.85.166.215.MISMATCH!y22no7456ita.0!news-out.google.com!v188ni26itb.0!nntp.google.com!y42no7450ita.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail Newsgroups: comp.lang.ada Date: Mon, 18 Feb 2019 07:40:54 -0800 (PST) In-Reply-To: Complaints-To: groups-abuse@google.com Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=70.109.61.2; posting-account=QF6XPQoAAABce2NyPxxDAaKdAkN6RgAf NNTP-Posting-Host: 70.109.61.2 References: User-Agent: G2/1.0 MIME-Version: 1.0 Message-ID: <8b43f7fb-34e9-474e-a6b6-5e4e6f94f412@googlegroups.com> Subject: Re: Private extension of a synchronized interface From: Jere Injection-Date: Mon, 18 Feb 2019 15:40:55 +0000 Content-Type: text/plain; charset="UTF-8" Xref: reader01.eternal-september.org comp.lang.ada:55567 Date: 2019-02-18T07:40:54-08:00 List-Id: On Monday, February 18, 2019 at 3:33:38 AM UTC-5, Simon Wright wrote: > Jere writes: > > > In the other part that I commented out I was trying to add a publically > > available override to the interface operation, but haven't been successful. > > Do you know of any syntax changes I might need to do to: > > > > -- The following lines give the errors: > > -- "p1" conflicts with declaration at line xxx > > -- and > > -- missing body for "p1" > > > > --overriding > > --procedure p1(Self : in out Instance); > > > > So I don't need to always dispatch? > > I'm not 100% sure why this works & the other doesn't - I think because > Instantiation.P1 is actually publicly visible. > > Also not sure whether you could do away with the inner Instantiation. > > Anyway, Thanks! That gives me something to work with. I appreciate it. I know my questions can get frustrating, but I learn a lot better when I test boundaries like this. Even if other ways might be better, there may come a time where the people who really know Ada are less in number so things like this can serve as teaching moments for mechanics of the language. Though the outstanding part of this is we don't know if this is a language issue/feature or a GNAT issue (the original problem that is). Maybe someone from the Arg can comment on what is intended to be allowed and not allowed when it comes to extending synchronized interfaces.