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 X-Received: by 10.236.63.230 with SMTP id a66mr2475586yhd.51.1428680710002; Fri, 10 Apr 2015 08:45:10 -0700 (PDT) X-Received: by 10.140.87.70 with SMTP id q64mr31171qgd.10.1428680709976; Fri, 10 Apr 2015 08:45:09 -0700 (PDT) Path: eternal-september.org!reader01.eternal-september.org!reader02.eternal-september.org!news.eternal-september.org!mx02.eternal-september.org!feeder.eternal-september.org!news.glorb.com!j5no729292qga.1!news-out.google.com!k20ni95qgd.0!nntp.google.com!j5no729289qga.1!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail Newsgroups: comp.lang.ada Date: Fri, 10 Apr 2015 08:45:09 -0700 (PDT) In-Reply-To: Complaints-To: groups-abuse@google.com Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=75.99.9.146; posting-account=s89PEgoAAABHs2ETFyOrCeTQVQJAfzKq NNTP-Posting-Host: 75.99.9.146 References: User-Agent: G2/1.0 MIME-Version: 1.0 Message-ID: Subject: Re: GNAT "alignment value must be positive" From: marciant@earthlink.net Injection-Date: Fri, 10 Apr 2015 15:45:09 +0000 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Xref: news.eternal-september.org comp.lang.ada:25509 Date: 2015-04-10T08:45:09-07:00 List-Id: On Thursday, April 9, 2015 at 8:21:55 PM UTC-4, Randy Brukardt wrote: ...=20 > > Is it not (no longer?) necessary to ever indicate - as per Ada 95 RM 13= .3=20 > > [14] >=20 > This paragraph is about "Address", not sure as to what you're referring. Sorry that should have been [24] not [14], as in Ada 95 RM 13.3 [24]. By the way, the project that is still using a compiler that was made more that ten years ago and we all have copies of RM95;6.0 to read, not the newer RM. > But the Ada 95 wording for Alignment contained a lot of nonsense. It was= =20 > mostly rewritten for Ada 2005, as Binding Interpretation (meaning it appl= ies=20 > to Ada 95 compilers as well), so reading the original wording does nothin= g=20 > but confuse yourself and everyone else. Unfortunately, updating the RM does not cause the project to have access to an updated compiler. :) >=20 > > - "zero means that the object is not necessarily aligned on a storage= =20 > > element > > boundary."? >=20 > That's talking about the value of X'Alignment, when it is *read*, not so= =20 > much when it is specified. (This is 13.3(23/2)). But if the "natural"/"default" alignment that an implementation would use w= hen it places an object of some type is - lets say 2, what about the case t= hat a user program does unchecked conversion on a sequence of bits to a re= cord type that ends up making the alignment of some of the records componen= ts not have the default alignment (not 2 in the example - infact not even a= lignment 1). I thought that this was a case where the user should specify alignment 0 fo= r the component's type and that without doing that, improper reading of the= component by the program might be the result, due to the compiler having a= ssumed that the component/"object" had its default alignment.=20 > ... > old wording was nonsense. I'm not going to try to explain old nonsense. I= f=20 > we could have explained it, we wouldn't have rewritten it! Okay, that is fair enough. =20 > ... >=20 > Then read the current RM, not older, buggier versions. The bleeding edge = can=20 > be found at: http://www.ada-auth.org/standards/ada2x.html (this contains= =20 > everything the ARG has approved to date). Ada 2012 can be found at:=20 > http://www.ada-auth.org/arm.html. >=20 > People discover bugs in the RM all the time, and the ARG fixes them=20 > periodically. It's often impossible to explain the original wording, beca= use=20 > it didn't make sense for one reason or another. There's a reason that new= er=20 > standard replace the older ones (even if that doesn't always happen=20 > practically). I know about the http://www.ada-auth.org RM archive and also read the ARG m= eeting minutes when each new one is posted (Thank you for your great work o= n that!) Vinny