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,582882cfea9f35db X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 2001-01-11 06:28:49 PST From: "Martin Dowie" Newsgroups: comp.lang.ada References: <93igkj$grt$1@lure.pipex.net> <3a5d73cd$1@pull.gecm.com> <3A5DBD1E.D4C4C5F7@averstar.com> Subject: Re: Green Hiils AdaMULTI 2000 -> Motorola Coldfire Date: Thu, 11 Jan 2001 14:22:37 -0000 X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 5.00.2314.1300 X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 NNTP-Posting-Host: superted.dsge.edinbr.gmav.gecm.com Message-ID: <3a5dc033$1@pull.gecm.com> X-Trace: 11 Jan 2001 14:16:19 GMT, superted.dsge.edinbr.gmav.gecm.com Path: supernews.google.com!sn-xit-02!supernews.com!news.gv.tsc.tdk.com!news.iac.net!news-out.cwix.com!newsfeed.cwix.com!news-peer.gip.net!news.gsl.net!gip.net!feeder.qis.net!btnet-peer!btnet-peer0!btnet-feed3!btnet!newreader.ukcore.bt.net!pull.gecm.com!superted.dsge.edinbr.gmav.gecm.com Xref: supernews.google.com comp.lang.ada:3910 Date: 2001-01-11T14:22:37+00:00 List-Id: I don't have access to the new code - but the same report then gives an example of what they did do (at the time) to workaround this. They may have changed this again since then of course... Do you really want to see it?.. I've put it 'off screen' to protect young children If you're at all skeamish them turn away now!.. Tucker Taft wrote in message news:3A5DBD1E.D4C4C5F7@averstar.com... > pragma Atomic would presumably solve this problem in Ada 95. | | v | | v with System.Storage_Elements; with Unchecked_Conversion; procedure test is type Rec_Type is record a : INTEGER range 0..255 := 0; b : BOOLEAN := FALSE ; c : BOOLEAN := FALSE ; d : BOOLEAN ; e : BOOLEAN ; f : BOOLEAN ; g : BOOLEAN ; h : BOOLEAN ; i : BOOLEAN ; end record; for Rec use record a at 0 range 0.. 7; b at 0 range 8.. 8; c at 0 range 9.. 9; d at 0 range 10..10; e at 0 range 11..11; f at 0 range 12..12; g at 0 range 13..13; h at 0 range 14..14; i at 0 range 15..15; end record; pragma Volatile (Rec); Rec_Copy : array (0 .. 2) of Rec ; Rec_Copy_Int : array (0..2) of Short_Integer; for Rec_Copy_Int use at System.Storage_Elements.To_Address (16#0009_FF3C#); function Rec_To_Short is new Unchecked_Conversion (Rec, Short_Integer); begin Rec_Copy (1).e := FALSE; Rec_Copy_Int (1) := Rec_To_Short (Rec_Copy (1)); end;