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,369ed27a1a2dd2cb X-Google-Attributes: gid103376,public From: Joel VanLaven Subject: Re: QUIZ: To be or not to be (able to post) Date: 1997/10/02 Message-ID: <610a7h$a7n@news3.his.com>#1/1 X-Deja-AN: 277313162 Sender: Joel VanLaven References: <60n3dm$fhi$1@gonzo.sun3.iaf.nl> Organization: OC Systems Newsgroups: comp.lang.ada Date: 1997-10-02T00:00:00+00:00 List-Id: Geert Bosch wrote: : OK, here is a nice question for all you Ada experts out there. : Why isn't the code below not legal? Or is it? If so, why? : with Ada.Numerics.Elementary_Functions; : procedure Renaming is : function Sin (F : Float) return Float; : function Sin (X : Float'Base) return Float'Base : renames Ada.Numerics.Elementary_Functions.Sin; : begin : null; : end Renaming; : What does your favorite compiler say? And the others? ;-) Our compiler (PowerAda) says: 6: function Sin (X : Float'Base) return Float'Base ----------------------------------------------- >>> SEMANTIC: Formal part of renaming-as-body is inconsistent with its specification <8.5.4:5> the LRM reference says (just the good part): "The profile of a renaming-as-body shall ..., and shall conform fully to that of the declaration it completes" Fully conformant includes subtype conformant and the two profiles are not subtype conformant. -- Joel VanLaven