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.3 required=5.0 tests=BAYES_00,INVALID_MSGID autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,9e2776c05028676e X-Google-Attributes: gid103376,public From: pvanbell@mhv.net (Paul Van Bellinghen) Subject: Re: Why Ada is not the Commercial Lang of Choice Date: 1997/06/21 Message-ID: <33ab1c1c.2926201@news.mhv.net>#1/1 X-Deja-AN: 251455122 References: <33A7FBFF.29D2@mitre.org> <5o9eca$aoi$1@goanna.cs.rmit.edu.au> X-Server-Date: 21 Jun 1997 00:18:36 GMT Organization: MHVNet Newsgroups: comp.lang.ada Date: 1997-06-21T00:18:36+00:00 List-Id: This is all well and good when you know the exact address to set the variable to. The problem comes with a variable of type "address" that you need to perform masking on. I was unable to re-cast a variable of type "address" (which was derived from unsigned integer) to an unsigned integer so that I could mask out the lower 48 bits. That's why I went the "unchecked conversion" route. Ada seems to be so strictly typed that even though a variable is typed or sub-typed as unsigned integer, it is treated as a completely different type than a variable typed as unsigned integer. >> Mem_Map: Integer; >> for Mem_Map'Address use 16#B010_0040#; > >By the way, this will typically need a To_Address call, since in many >implementations, type Address is not an integer type. The RM recommends >a private type, which I think is sensible. > >- Bob