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 Lines: 36 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