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:a37:470b:: with SMTP id u11mr1715353qka.172.1574429630502; Fri, 22 Nov 2019 05:33:50 -0800 (PST) X-Received: by 2002:aca:530c:: with SMTP id h12mr12775399oib.110.1574429630177; Fri, 22 Nov 2019 05:33:50 -0800 (PST) Path: eternal-september.org!reader01.eternal-september.org!feeder.eternal-september.org!news.gegeweb.eu!gegeweb.org!usenet-fr.net!proxad.net!feeder1-2.proxad.net!209.85.160.216.MISMATCH!j16no2861369qtl.0!news-out.google.com!g53ni774qtg.0!nntp.google.com!j16no2861356qtl.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail Newsgroups: comp.lang.ada Date: Fri, 22 Nov 2019 05:33:49 -0800 (PST) In-Reply-To: <9bee64ac-42c4-495e-9ce6-69c306b8e3a5@googlegroups.com> Complaints-To: groups-abuse@google.com Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=134.206.121.213; posting-account=iV1hDQoAAADj-LMkLVCARAp8f-n9fYeB NNTP-Posting-Host: 134.206.121.213 References: <9bee64ac-42c4-495e-9ce6-69c306b8e3a5@googlegroups.com> User-Agent: G2/1.0 MIME-Version: 1.0 Message-ID: <30d105f9-086f-4b1f-8379-ae1ab2d72c8a@googlegroups.com> Subject: Re: yes another gnat bug (inherited tagged type as record field is too much for gnat??) From: gerrshapovalov@gmail.com Injection-Date: Fri, 22 Nov 2019 13:33:50 +0000 Content-Type: text/plain; charset="UTF-8" Xref: reader01.eternal-september.org comp.lang.ada:57588 Date: 2019-11-22T05:33:49-08:00 List-Id: Just a short addition: This is with gnat-gpl-2019 (Gentoo Linux), compiled against the 8.3.1 gcc backend. Also, I can "cure" the compilation problem by wrapping access to the list into an (abstract and overridden in child) function returning Reference to the List. gnat manages to compile it then. However, upon execution it throws "discriminant check failed" run-time exception.. (Reference to the list is that standard construct like: type Input_Reference_Type (Data : not null access IL.List_Interface'Class) is null record with Implicit_Dereference => Data; This allows to return a callable object that can be used to call methods of List and do indexed data access (assignment/reading) )