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.1 required=5.0 tests=BAYES_00, PP_MIME_FAKE_ASCII_TEXT autolearn=no autolearn_force=no version=3.4.4 X-Google-Thread: a07f3367d7,545a08a159900a97 X-Google-Attributes: gida07f3367d7,public,usenet X-Google-NewGroupId: yes X-Google-Language: ENGLISH,ASCII Path: g2news2.google.com!news3.google.com!feeder.news-service.com!feeds.phibee-telecom.net!de-l.enfer-du-nord.net!gegeweb.org!news.ecp.fr!news.jacob-sparre.dk!pnx.dk!not-for-mail From: "Randy Brukardt" Newsgroups: comp.lang.ada Subject: Re: Ada 95 and Class attribute for none-tagged incomplete type Date: Wed, 12 Aug 2009 20:50:47 -0500 Organization: Jacob Sparre Andersen Message-ID: References: <8442c52d-805f-4ca8-95ab-b4c8e949d7cd@k6g2000yqn.googlegroups.com> <17b5de2e-74df-414a-b214-677344dc697e@x25g2000prf.googlegroups.com> NNTP-Posting-Host: static-69-95-181-76.mad.choiceone.net X-Trace: munin.nbi.dk 1250128314 21721 69.95.181.76 (13 Aug 2009 01:51:54 GMT) X-Complaints-To: news@jacob-sparre.dk NNTP-Posting-Date: Thu, 13 Aug 2009 01:51:54 +0000 (UTC) X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2900.5512 X-RFC2646: Format=Flowed; Original X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.5579 Xref: g2news2.google.com comp.lang.ada:7710 Date: 2009-08-12T20:50:47-05:00 List-Id: "Adam Beneschan" wrote in message news:17b5de2e-74df-414a-b214-677344dc697e@x25g2000prf.googlegroups.com... >On Aug 1, 11:55 pm, Hibou57 (Yannick Duch�ne) >wrote: >> Hello, >> >> I've learned something mostly surprising today : in Ada 95, this was >> allowed to use the Class attribute with a prefix which was an >> incomplete type.... even not tagged. Gee, guys, that's pretty boring. If you want something mind blowing in this area, look into 7.3.1(8-9) (http://www.adaic.org/standards/05rm/html/RM-7-3-1.html). More than 90% of the ARG (that is, everyone other than Tucker, and he only had a vague recollection of it) was unaware of this rule when I stumbled across it updating notes. And no one can remember why we would want such a rule - it seems completely privacy breaking, and for no good reason. But there is an ACATS test for it, so it probably will work in your favorite compiler...and thus we were unwilling to take it out (somebody probably depends on it, and forcing a switch to a tagged private type would have other consequences making it not necessarily a trivial work-around). A quick example: package P is type Priv is private; type Acc is access all Priv'Class; -- Legal!!!!!! private type Priv is tagged null record; end P; Randy.