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-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,ae9506fd4dcf7090 X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 2002-10-22 07:46:12 PST Path: archiver1.google.com!news1.google.com!newsfeed.stanford.edu!paloalto-snf1.gtei.net!news.gtei.net!enews.sgi.com!nntp1.phx1.gblx.net!nntp.gblx.net!nntp.gblx.net!newsfeed.news2me.com!sn-xit-05!sn-xit-01!sn-post-01!supernews.com!corp.supernews.com!not-for-mail From: "Matthew Heaney" Newsgroups: comp.lang.ada Subject: Re: Concatenation and Characters Date: Tue, 22 Oct 2002 10:45:58 -0400 Organization: Posted via Supernews, http://www.supernews.com Message-ID: References: <44hp9.807$_u6.205@nwrddc01.gnilink.net> <3DA5AE5F.3030902@attbi.com> <3DB03EF1.EE771923@mmm.com> <3DB43EB0.AAF4B38C@mmm.com> <3DB44B9C.80007@worldnet.att.net> <3DB466CB.7CE0BC59@mmm.com> <3DB4AD20.4070109@acm.org> X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2720.3000 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 X-Complaints-To: abuse@supernews.com Xref: archiver1.google.com comp.lang.ada:30032 Date: 2002-10-22T10:45:58-04:00 List-Id: "Jeffrey Carter" wrote in message news:3DB4AD20.4070109@acm.org... > > All correct implementations of Ada must compile and execute this > program. Ada does not require default initialization of variables except > for access variables, if we limit ourselves to elementary types. Ada > does not require that compilers detect references to uninitialized > variables. Ada does not require that references to uninitialized > variables be detected at run time. This isn't quite right. If an object of a discrete type is used to index an array, the compiler is required to ensure that the object --even if uninitialized-- is only used to index an actual component of the array object. For example: procedure Op (S : String) is I : Positive; begin S (I) := 'x'; end; The Ada95 language guarantees that index I will only touch the memory owned by array object S. This is one area where Ada95 differs from Ada83, which made no such guarantee.