-- BC3502G.ADA -- Grant of Unlimited Rights -- -- Under contracts F33600-87-D-0337, F33600-84-D-0280, MDA903-79-C-0687, -- F08630-91-C-0015, and DCA100-97-D-0025, the U.S. Government obtained -- unlimited rights in the software and documentation contained herein. -- Unlimited rights are defined in DFAR 252.227-7013(a)(19). By making -- this public release, the Government intends to confer upon all -- recipients unlimited rights equal to those held by the Government. -- These rights include rights to use, duplicate, release or disclose the -- released technical data and computer software in whole or in part, in -- any manner and for any purpose whatsoever, and to have or permit others -- to do so. -- -- DISCLAIMER -- -- ALL MATERIALS OR INFORMATION HEREIN RELEASED, MADE AVAILABLE OR -- DISCLOSED ARE AS IS. THE GOVERNMENT MAKES NO EXPRESS OR IMPLIED -- WARRANTY AS TO ANY MATTER WHATSOEVER, INCLUDING THE CONDITIONS OF THE -- SOFTWARE, DOCUMENTATION OR OTHER INFORMATION RELEASED, MADE AVAILABLE -- OR DISCLOSED, OR THE OWNERSHIP, MERCHANTABILITY, OR FITNESS FOR A -- PARTICULAR PURPOSE OF SAID MATERIAL. --* -- CHECK THAT WHEN A GENERIC FORMAL TYPE IS AN ACCESS TYPE, -- THE FORMAL TYPE IS ONLY MATCHED WHEN ITS DESIGNATED BASE TYPE -- IS THE SAME AS THE DESIGNATED TYPE OF THE ACTUAL PARAMETER. -- CHECK FOR WHEN THE DESIGNATED TYPE IS A GENERIC FORMAL TYPE -- DECLARED IN THE SAME FORMAL PART. -- CHECK FOR WHEN THE DESIGNATED BASE TYPES ARE ARRAY TYPES. -- SPS 5/25/82 -- PWN 10/24/95 REMOVED LINES WHERE FORMALS ARE NOT CONSTRAINED. -- PWN 03/28/96 Restored cuts in Ada 95 legal format. -- TMB 11/20/96 FIXED PROBLEM WHERE TEST WAS NOT TESTING INTENDED -- FEATURES. PROCEDURE BC3502G IS SUBTYPE INT IS INTEGER RANGE 1 .. 10; TYPE A1 IS ARRAY (INTEGER RANGE 1..10) OF INTEGER; TYPE A2 IS ARRAY (INTEGER RANGE 1..10) OF INTEGER; TYPE A3 IS ARRAY (NATURAL) OF INTEGER; TYPE A4 IS ARRAY (INT) OF INTEGER; TYPE A5 IS ARRAY (INTEGER RANGE 1..10) OF NATURAL; TYPE A6 IS ARRAY (INTEGER RANGE 1..10) OF INT; TYPE NA1 IS NEW A1; TYPE NA2 IS NEW A2; TYPE AA1 IS ACCESS A1; TYPE AA2 IS ACCESS A2; TYPE AA3 IS ACCESS A3; TYPE AA4 IS ACCESS A4; TYPE AA5 IS ACCESS A5; TYPE AA6 IS ACCESS A6; TYPE ANA1 IS ACCESS NA1; TYPE ANA2 IS ACCESS NA2; GENERIC TYPE T IS PRIVATE; TYPE FT IS ACCESS T; PACKAGE P IS END P; PACKAGE PA11 IS NEW P (A1, AA1); -- OK. PACKAGE PA12 IS NEW P (A1, AA2); -- ERROR: BASE TYPE A1 EXPECTED. PACKAGE PA13 IS NEW P (A1, AA3); -- ERROR: BASE TYPE A1 EXPECTED. PACKAGE PA14 IS NEW P (A1, AA4); -- ERROR: BASE TYPE A1 EXPECTED. PACKAGE PA15 IS NEW P (A1, AA5); -- ERROR: BASE TYPE A1 EXPECTED. PACKAGE PA16 IS NEW P (A1, AA6); -- ERROR: BASE TYPE A1 EXPECTED. PACKAGE PA17 IS NEW P (A1, ANA1); -- ERROR: BASE TYPE A1 EXPECTED. PACKAGE PA21 IS NEW P (A2, AA2); -- OK. PACKAGE PA22 IS NEW P (A2, AA1); -- ERROR: BASE TYPE A2 EXPECTED. PACKAGE PA23 IS NEW P (A2, AA3); -- ERROR: BASE TYPE A2 EXPECTED. PACKAGE PA24 IS NEW P (A2, AA4); -- ERROR: BASE TYPE A2 EXPECTED. PACKAGE PA25 IS NEW P (A2, ANA2); -- ERROR: BASE TYPE A2 EXPECTED. PACKAGE PA51 IS NEW P (A5, AA5); -- OK. PACKAGE PA52 IS NEW P (A5, AA2); -- ERROR: BASE TYPE A5 EXPECTED. PACKAGE PA53 IS NEW P (A5, AA6); -- ERROR: BASE TYPE A5 EXPECTED. BEGIN NULL; END BC3502G;