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.7 required=5.0 tests=BAYES_00,INVALID_DATE, MISSING_FROM,REPLYTO_WITHOUT_TO_CC autolearn=no autolearn_force=no version=3.4.4 Path: utzoo!attcan!uunet!aplcen!uakari.primate.wisc.edu!dali.cs.montana.edu!rpi!image.soe.clarkson.edu!sunybcs!planck!hercules!westley Newsgroups: comp.lang.ada Subject: re: implicit array subtype conversion Message-ID: <1990Jul27.135108.11518@planck.uucp> Date: 27 Jul 90 13:51:08 GMT Sender: news@planck.uucp (Usenet News) Reply-To: acsu.buffalo.edu!planck!hercules!westley () Distribution: na Organization: Calspan Corporation ATC Buffalo, NY List-Id: In my zeal to limit my example and the size of the posting concerning implict array subtype conversion, I inadvertently changed the nature of my problem slightly. I have defined a dynamic length string as follows: type STRING_RECORD (Len : NATURAL) is record S : Standard.STRING(1..Len); end record; type STRING is access STRING_RECORD; Then, I declare some variables: A : Standard.STRING(7..7); B : Standard.STRING(1..1); C : STRING; The following is accepted by the compiler (Verdix Sun 4 Self, version 6.0.2(g)) because of implicit array subtype conversion: A := "X"; B := A; However, the following is not. Why? I don't see the difference in the assignment of the string because both B and C.S are constrained. C := new STRING_RECORD'(Len => A'length, S => A); -- Terry J. Westley Arvin/Calspan Advanced Technology Center P.O. Box 400, Buffalo, NY 14225 acsu.buffalo.edu!planck!hercules!westley