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=unavailable autolearn_force=no version=3.4.4 Path: eternal-september.org!reader01.eternal-september.org!feeder.eternal-september.org!nntp-feed.chiark.greenend.org.uk!ewrotcd!newsfeed.xs3.de!news.jacob-sparre.dk!franka.jacob-sparre.dk!pnx.dk!.POSTED.rrsoftware.com!not-for-mail From: "Randy Brukardt" Newsgroups: comp.lang.ada Subject: Re: Why can't objects be static in Ada? Date: Fri, 12 Apr 2019 17:02:26 -0500 Organization: JSA Research & Innovation Message-ID: References: Injection-Date: Fri, 12 Apr 2019 22:02:27 -0000 (UTC) Injection-Info: franka.jacob-sparre.dk; posting-host="rrsoftware.com:24.196.82.226"; logging-data="3465"; mail-complaints-to="news@jacob-sparre.dk" X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2900.5931 X-RFC2646: Format=Flowed; Original X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.7246 Xref: reader01.eternal-september.org comp.lang.ada:56123 Date: 2019-04-12T17:02:26-05:00 List-Id: "Mark Lorenzen" wrote in message news:f572578d-1e73-4b20-b2be-e5b80a8d95b3@googlegroups.com... > On Friday, April 12, 2019 at 12:49:07 AM UTC+2, Randy Brukardt wrote: >> >> fix this. There's no good reason (outside of Annex E issues) for >> declaring >> any package preelaborated, unless you like fighting errors a lot. C.4 is >> a >> load of hooey, it's not actually implementable on the margins, and >> there's >> no reason for any compiler to generate more code than necessary. Ergo, >> you'll most likely get the same code whether or not you declare something >> Preelaborated, so why bother with all of the hassles? > > For certification purposes, I think there is a value in avoiding > elaboration code. > > http://docs.adacore.com/live/wave/gnat_ugx/html/gnat_ugx/gnat_ugx/support_for_certified_systems.html#avoiding-elaboration-code > > I had the need to deal with it myself though. Surely there are lots of requirements that the language cannot deal with; anything having to do with the actual code generated belongs to the implementation and not to the language. A language standard can't say anything useful about the generated code, because of the need to work in a wide variety of environments. Randy.