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=-0.9 required=5.0 tests=BAYES_00,FORGED_GMAIL_RCVD, FREEMAIL_FROM autolearn=no autolearn_force=no version=3.4.4 X-Google-Thread: a07f3367d7,bb163c965c676b88 X-Google-Attributes: gida07f3367d7,public,usenet X-Google-NewGroupId: yes X-Google-Language: ENGLISH,ASCII-7-bit Received: by 10.224.70.131 with SMTP id d3mr1292398qaj.0.1348255266620; Fri, 21 Sep 2012 12:21:06 -0700 (PDT) Received: by 10.236.180.41 with SMTP id i29mr834848yhm.4.1348255265999; Fri, 21 Sep 2012 12:21:05 -0700 (PDT) Path: e10ni4265390qan.0!nntp.google.com!l8no5089091qao.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail Newsgroups: comp.lang.ada Date: Fri, 21 Sep 2012 12:21:05 -0700 (PDT) In-Reply-To: Complaints-To: groups-abuse@google.com Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=192.91.171.42; posting-account=YkFdLgoAAADpWnfCBA6ZXMWTz2zHNd0j NNTP-Posting-Host: 192.91.171.42 References: User-Agent: G2/1.0 MIME-Version: 1.0 Message-ID: <6c9fa5ab-588f-4a4b-929a-23f850913ceb@googlegroups.com> Subject: Re: Endianness and Record Specification From: awdorrin Injection-Date: Fri, 21 Sep 2012 19:21:06 +0000 Content-Type: text/plain; charset=ISO-8859-1 Date: 2012-09-21T12:21:05-07:00 List-Id: I think I found the cause of some of my confusion. The Gnat compiler treats the record specifications differently depending on if the code is compiled as Ada95 or Ada2005... Under '05 it produces the following output: mytest.adb:26:22: info: reverse bit order in machine scalar of length 16 mytest.adb:26:22: info: little-endian range for component "Res" is 15 .. 15 mytest.adb:27:22: info: reverse bit order in machine scalar of length 16 mytest.adb:27:22: info: little-endian range for component "Error" is 14 .. 14 mytest.adb:28:22: info: reverse bit order in machine scalar of length 16 mytest.adb:28:22: info: little-endian range for component "WordCnt" is 8 .. 13 mytest.adb:29:22: info: reverse bit order in machine scalar of length 16 mytest.adb:29:22: info: little-endian range for component "BusId" is 7 .. 7 mytest.adb:30:22: info: reverse bit order in machine scalar of length 16 mytest.adb:30:22: info: little-endian range for component "Message" is 0 .. 6 And the big endian specification is reordered. Under Ada95 this does not happen. Hmm...