1 -- Copyright 2015-2024 Free Software Foundation, Inc. 2 -- 3 -- This program is free software; you can redistribute it and/or modify 4 -- it under the terms of the GNU General Public License as published by 5 -- the Free Software Foundation; either version 3 of the License, or 6 -- (at your option) any later version. 7 -- 8 -- This program is distributed in the hope that it will be useful, 9 -- but WITHOUT ANY WARRANTY; without even the implied warranty of 10 -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 11 -- GNU General Public License for more details. 12 -- 13 -- You should have received a copy of the GNU General Public License 14 -- along with this program. If not, see <http://www.gnu.org/licenses/>. 15 16 with System; 17 18 package Pck is 19 20 subtype Small_Type is Integer range 0 .. 10; 21 type Record_Type (I : Small_Type := 0) is record 22 S : String (1 .. I); 23 end record; 24 function Ident (R : Record_Type) return Record_Type; 25 26 type Array_Type is array (Integer range <>) of Record_Type; 27 28 procedure Do_Nothing (A : System.Address); 29 30 A1 : Array_Type := (1 => (I => 0, S => <>), 31 2 => (I => 1, S => "A"), 32 3 => (I => 2, S => "AB")); 33 34 A2 : Array_Type := (1 => (I => 2, S => "AB"), 35 2 => (I => 1, S => "A"), 36 3 => (I => 0, S => <>)); 37 38 end Pck; 39