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=-2.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM, MAILING_LIST_MULTI autolearn=unavailable autolearn_force=no version=3.4.4 X-Google-Thread: 103376,f798c20ee494262a X-Google-Attributes: gid103376,public X-Google-Language: ENGLISH,ASCII-7-bit Path: g2news1.google.com!news3.google.com!news.glorb.com!news.agarik.com!usenet-fr.net!enst.fr!melchior!cuivre.fr.eu.org!melchior.frmug.org!not-for-mail From: Marius Amado Alves Newsgroups: comp.lang.ada Subject: Re: setting 'Size and unchecked conversion safe here? Date: Sat, 12 Feb 2005 13:10:33 +0000 Organization: Cuivre, Argent, Or Message-ID: References: NNTP-Posting-Host: lovelace.ada-france.org Mime-Version: 1.0 (Apple Message framework v619) Content-Type: text/plain; charset=US-ASCII; format=flowed Content-Transfer-Encoding: 7bit X-Trace: melchior.cuivre.fr.eu.org 1108213687 92312 212.85.156.195 (12 Feb 2005 13:08:07 GMT) X-Complaints-To: usenet@melchior.cuivre.fr.eu.org NNTP-Posting-Date: Sat, 12 Feb 2005 13:08:07 +0000 (UTC) Cc: comp.lang.ada@ada-france.org To: tmoran@acm.org Return-Path: In-Reply-To: X-Mailer: Apple Mail (2.619) X-OriginalArrivalTime: 12 Feb 2005 13:07:52.0564 (UTC) FILETIME=[DC20D340:01C51103] X-Virus-Scanned: by amavisd-new-20030616-p10 (Debian) at ada-france.org X-BeenThere: comp.lang.ada@ada-france.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Gateway to the comp.lang.ada Usenet newsgroup" List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Xref: g2news1.google.com comp.lang.ada:8276 Date: 2005-02-12T13:10:33+00:00 On 11 Feb 2005, at 23:49, tmoran@acm.org wrote: >> What I'm not sure about is whether the unused 32 >> bits are harmless or not (by definition). Thanks. > An Unchecked_Conversion of dissimilar sizes is clearly unsafe, simply > because it's implementation defined how, or if, it works. Strictly they have the same size, because I said so with Size clauses. > But your problem appears to be the warning on > for My_Access_To_Subprogram_Type'Size use 64; > ARM 13.3(42-43) recommends that a compiler should support this. > Presumably you don't care how the compiler places the 32 useful bits in > the 64 bit slot, so long as you get out what you put in. Actually I'd be happier if the unused bits could be forced to have a specified value, say all zeros, or all ones. To ensure a one-to-one mapping between the original access values and their representation with the extra bits. Would pragma Normalize_Scalars do the trick? I'd rather avoid it, because it has partition-wide effect, which is overkill for the case at hand, and so might even interfere with other parts of the program. > So another > compiler might do it differently, but your program would still work > correctly. Excelent. That was my expectation. Thanks a lot.