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,8963682ce4cab241,start X-Google-Attributes: gid103376,public From: wanker@exploited.barmy.army Subject: GNAT Limitations? Date: 1998/01/25 Message-ID: <6aesm3$sr6$1@Masala.CC.UH.EDU>#1/1 X-Deja-AN: 319081564 Originator: punkrock@pegasus Organization: The Exploited Barmy Army Newsgroups: comp.lang.ada Date: 1998-01-25T00:00:00+00:00 List-Id: Hi all, On GNAT 3.09 (Win95) I find two problems that I can't find mentioned anywhere in the documentation: 1) GNAT refuses to let me initialize a record with named fields if I don't initialize every field. For example: type X is record A : Integer := 1; B : Integer := 2; C : Integer := 3; end record; A_Rec : X := (A => 5, C => 6); Gives me an error with something like "No value provided for B". However, according to the "C/C++ to Ada" Guide I am supposed to be able to do this. What gives? 2) When I try to instantiate Ada.Unchecked_Deallocation, GNAT claims that Unchecked_Deallocation is not in Ada, which contradicts what's in the Language Referenec Manual and the "C/C++ to Ada Guide". Again, what gives? 3) GNAT refuses to compile code where I try to find the range of a particular dimension of a multi-dimensional array. I'm using the example in the C/C++ to Ada Guide: -- Assuming Matrix is a 2d array type for I in Matrix(1)'Range loop for J in Matrix(2)'Range loop Some_Op (Matrix (I, J)); end loop; end loop; The compiler complains about using an attribute and indexing Matrix at the same time. Has anyone else been having any of the above problems? If so, is there some kind of workaround?