3 -- Grant of Unlimited Rights
5 -- Under contracts F33600-87-D-0337, F33600-84-D-0280, MDA903-79-C-0687,
6 -- F08630-91-C-0015, and DCA100-97-D-0025, the U.S. Government obtained
7 -- unlimited rights in the software and documentation contained herein.
8 -- Unlimited rights are defined in DFAR 252.227-7013(a)(19). By making
9 -- this public release, the Government intends to confer upon all
10 -- recipients unlimited rights equal to those held by the Government.
11 -- These rights include rights to use, duplicate, release or disclose the
12 -- released technical data and computer software in whole or in part, in
13 -- any manner and for any purpose whatsoever, and to have or permit others
18 -- ALL MATERIALS OR INFORMATION HEREIN RELEASED, MADE AVAILABLE OR
19 -- DISCLOSED ARE AS IS. THE GOVERNMENT MAKES NO EXPRESS OR IMPLIED
20 -- WARRANTY AS TO ANY MATTER WHATSOEVER, INCLUDING THE CONDITIONS OF THE
21 -- SOFTWARE, DOCUMENTATION OR OTHER INFORMATION RELEASED, MADE AVAILABLE
22 -- OR DISCLOSED, OR THE OWNERSHIP, MERCHANTABILITY, OR FITNESS FOR A
23 -- PARTICULAR PURPOSE OF SAID MATERIAL.
25 -- FOR ALLOCATORS OF THE FORM "NEW T'(X)", CHECK THAT CONSTRAINT_ERROR
26 -- IS RAISED IF T IS A CONSTRAINED RECORD OR PRIVATE TYPE, (X) IS AN
27 -- AGGREGATE OR A VALUE OF TYPE T, AND ONE OF THE DISCRIMINANT VALUES IN
29 -- 1) DOES NOT EQUAL THE CORRESPONDING DISCRIMINANT VALUE FOR T.
30 -- 2) DOES NOT EQUAL THE CORRESPONDING DISCRIMINANT VALUE SPECIFIED
31 -- IN THE DECLARATION OF THE ALLOCATOR'S BASE TYPE.
32 -- 3) DOES NOT EQUAL THE CORRESPONDING DISCRIMINANT VALUE IN THE
33 -- ACCESS TO ACCESS CASE.
48 TEST
("C48009C","FOR ALLOCATORS OF THE FORM 'NEW T'(X)', CHECK " &
49 "THAT CONSTRAINT_ERROR IS RAISED WHEN " &
50 "APPROPRIATE - CONSTRAINED RECORD TYPES");
54 TYPE TC0
(A
, B
: INTEGER) IS
56 C
: INTEGER RANGE 1 .. 7;
58 SUBTYPE TC
IS TC0
(2, 3);
59 TYPE ATC
IS ACCESS TC0
(2, 3);
60 SUBTYPE TC4_5
IS TC0
(IDENT_INT
(4), IDENT_INT
(5));
66 VC
:= NEW TC
'(102, 3, 4);
67 FAILED ("NO EXCEPTION RAISED - CASE 1");
69 WHEN CONSTRAINT_ERROR => NULL;
71 FAILED("WRONG EXCEPTION RAISED - CASE 1");
75 VC := NEW TC4_5'(IDENT_INT
(4), IDENT_INT
(5), 1);
76 FAILED
("NO EXCEPTION RAISED - CASE 2");
78 WHEN CONSTRAINT_ERROR
=> NULL;
80 FAILED
("WRONG EXCEPTION RAISED - CASE 2");
87 TYPE UR
(A
: INTEGER) IS
91 TYPE A_UR
IS ACCESS UR
;
92 SUBTYPE CA_UR
IS A_UR
(2);
93 TYPE A_CA_UR
IS ACCESS CA_UR
;
99 V
:= NEW CA_UR
'(NEW UR'(A
=> IDENT_INT
(3)));
100 FAILED
("NO EXCEPTION RAISED - CASE 3");
104 WHEN CONSTRAINT_ERROR
=>
107 FAILED
("WRONG EXCEPTION RAISED - CASE 3");