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 autolearn=ham autolearn_force=no version=3.4.4 X-Google-Thread: 103376,104df2b9b7a2f689,start X-Google-Attributes: gid103376,public X-Google-Language: ENGLISH,ASCII-7-bit Path: g2news1.google.com!news1.google.com!news2.google.com!news.maxwell.syr.edu!newsfeed.icl.net!newsfeed.freenet.de!81.92.173.228.MISMATCH!news1.tnib.de!feed.news.tnib.de!news.tnib.de!news.belwue.de!LF.net!news.enyo.de!not-for-mail From: Florian Weimer Newsgroups: comp.lang.ada Subject: Interfaces Date: Mon, 16 May 2005 14:27:48 +0200 Message-ID: <8764xj9wzf.fsf@deneb.enyo.de> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: albireo.enyo.de 1116246471 1285 212.9.189.177 (16 May 2005 12:27:51 GMT) X-Complaints-To: Cancel-Lock: sha1:0HWS0IdM/QyVEGIvr2qvYBy5MvU= Xref: g2news1.google.com comp.lang.ada:11038 Date: 2005-05-16T14:27:48+02:00 List-Id: Suppose there are two interface types, J1 and J2, and the following dispatching subprogramms: procedure Foo (Obj : J1); procedure Foo (Obj : J2; T implements both J1 and J2, and provides a body for procedure Foo (Obj : T); As far as I understand the Ada 200x spec, this subprogram declaration overrides both versions of Foo, such that Foo ((J1 (T_Obj)); Foo ((J2 (T_Obj)); invoke the same subprogram. Is this correct? I don't think this is a desirable approach because it makes interfaces a strictly non-modular concept, and might force library designers to add unique prefixes to interface subprogram names.