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,978f50245fc02645 X-Google-Attributes: gid103376,public From: dewar@merv.cs.nyu.edu (Robert Dewar) Subject: Re: Slice and Unbounded String Date: 1996/11/30 Message-ID: #1/1 X-Deja-AN: 201527273 references: <01bbdc70$2e557160$262a6282@cln49ae> organization: New York University newsgroups: comp.lang.ada Date: 1996-11-30T00:00:00+00:00 List-Id: Robert Duff says "See A.4.5(82), A.4.4(101), A.4.4(1) "whose low bound is 1", A.4.3(2), and AI-128. The correct result is 1..3. " Hmmm! I don't have AI-128 here, but I don't think the RM references are conclusive. A.4.4(1) refers only to bounded string values (and that is also true of the "whose low bound is 1" phrase), so it does not apply. A.4.5(82) merely points us to A.4.4(101), which to my reading suggests the other interpretation (low bound not necessarily 1), but only suggests .. A.4.3(2) is conclusive, but applies to Fixed_Strings. Now it maybe that AI-128 does indeed clear this up, but the wording should be checked. It seems a bit anomolous that Slice returns a String rather than an unbounded String .... P.S. In Strings.Unbounded, what on earth is 7 type String_Access is access all String; procedure Free (X : in out String_Access); these declarations are not referenced elsewhere in the package and are, as far as I can see, completely irrelevant rubbish -- perhaps thjey had some historical significance. I could see providing these standard delcarations in Ada.Strings, but not in Ada.Strings.Unbounded.