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,LOTS_OF_MONEY autolearn=ham autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,28cd155693714664 X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 2002-06-24 07:06:03 PST Path: archiver1.google.com!news1.google.com!newsfeed.stanford.edu!logbridge.uoregon.edu!nntp.flash.net!newscon02.news.prodigy.com!newsmst01.news.prodigy.com!prodigy.com!postmaster.news.prodigy.com!newssvr11.news.prodigy.com.POSTED!not-for-mail From: "Pat Rogers" Newsgroups: comp.lang.ada References: <3D11F304.9030906@mail.com> <3dk*NGnrp@news.chiark.greenend.org.uk> <%rcR8.6726$cE5.5860@nwrddc02.gnilink.net> <3jpR8.37553$mo.4178598950@newssvr12.news.prodigy.com> Subject: Re: Faulty languages and Liability X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2600.0000 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 Message-ID: NNTP-Posting-Host: 208.191.182.164 X-Complaints-To: abuse@prodigy.net X-Trace: newssvr11.news.prodigy.com 1024927509 ST000 208.191.182.164 (Mon, 24 Jun 2002 10:05:09 EDT) NNTP-Posting-Date: Mon, 24 Jun 2002 10:05:09 EDT Organization: Prodigy Internet http://www.prodigy.com X-UserInfo1: Q[R_PJONFJVMQVPXJZDBNFXBBZ\LPCXLLBWLOOAFJYWZUYICD^RAQBKZQTZTX\_I[^G_KGFNON[ZOE_AZNVO^\XGGNTCIRPIJH[@RQKBXLRZ@CD^HKANYVW@RLGEZEJN@\_WZJBNZYYKVIOR]T]MNMG_Z[YVWSCH_Q[GPC_A@CARQVXDSDA^M]@DRVUM@RBM Date: Mon, 24 Jun 2002 14:05:09 GMT Xref: archiver1.google.com comp.lang.ada:26649 Date: 2002-06-24T14:05:09+00:00 List-Id: "Hyman Rosen" wrote in message news:PNvR8.12669$cE5.8689@nwrddc02.gnilink.net... > Pat Rogers wrote: > > No, that allows the compiler to prevent dangling references. > > How's that? That is, what is the difference between the compiler > noticing which objects you take the address of, or you telling > the compiler which objects you intend to take the address of? Yes, from that angle there is no difference. (Note, however, that there is certainly a difference from taking the address of something, which the compiler cannot help you with, and using the checked approach we're discussing via 'Access and aliased objects. Taking the address of something for the purpose of converting it to an access value is generally not recommended!) However, marking objects as aliased does have an important effect that the compiler cannot achieve by just noticing all the references (because the aliased object will likely be compiled separately from the references). Specifically, it prevents the object from being stored in a way that precludes the later access. For example, it prevents the object from being stored in a register. See RM 13.1{24}. -- Patrick Rogers Consulting and Training in: http://www.classwide.com Real-Time/OO Languages progers@classwide.com Hard Deadline Schedulability Analysis (281)648-3165 Software Fault Tolerance