Remove old autovect-branch by moving to "dead" directory.
[official-gcc.git] / old-autovect-branch / gcc / testsuite / ada / acats / tests / c5 / c55b06b.ada
blob4bff008dd438b5571787d3827f868dfda936c457
1 -- C55B06B.ADA
3 -- Grant of Unlimited Rights
4 --
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
14 -- to do so.
16 -- DISCLAIMER
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.
24 --*
25 -- CHECK THAT LOOPS MAY BE SPECIFIED FOR DERIVED BOOLEAN AND
26 -- DERIVED DERIVED BOOLEAN.
28 -- DAT 3/26/81
29 -- SPS 3/2/83
31 WITH REPORT; USE REPORT;
33 PROCEDURE C55B06B IS
35 TYPE E IS (FALSE, TRUE);
36 TYPE B1 IS NEW BOOLEAN;
37 TYPE B2 IS NEW B1;
38 TYPE B3 IS NEW E;
40 ONE : INTEGER := IDENT_INT (1);
41 COUNT : INTEGER := 0;
42 OLD_COUNT : INTEGER := 0;
44 PROCEDURE Q IS
45 BEGIN
46 COUNT := COUNT + 1;
47 END Q;
49 BEGIN
50 TEST ("C55B06B", "LOOPS OVER DERIVED BOOLEAN");
52 FOR I IN BOOLEAN LOOP
54 END LOOP;
55 IF OLD_COUNT + IDENT_INT (2) /= COUNT THEN
56 FAILED ("LOOP 1");
57 ELSE
58 OLD_COUNT := COUNT;
59 END IF;
61 FOR I IN BOOLEAN RANGE FALSE .. TRUE LOOP
63 END LOOP;
64 IF OLD_COUNT + IDENT_INT (2) /= COUNT THEN
65 FAILED ("LOOP 2");
66 ELSE
67 OLD_COUNT := COUNT;
68 END IF;
70 FOR I IN BOOLEAN'(FALSE) .. TRUE LOOP
72 END LOOP;
73 IF OLD_COUNT + IDENT_INT (2) /= COUNT THEN
74 FAILED ("LOOP 3");
75 ELSE
76 OLD_COUNT := COUNT;
77 END IF;
79 FOR I IN E LOOP
81 END LOOP;
82 IF OLD_COUNT + IDENT_INT (2) /= COUNT THEN
83 FAILED ("LOOP 4");
84 ELSE
85 OLD_COUNT := COUNT;
86 END IF;
88 FOR I IN E RANGE FALSE .. TRUE LOOP
90 END LOOP;
91 IF OLD_COUNT + IDENT_INT (2) /= COUNT THEN
92 FAILED ("LOOP 5");
93 ELSE
94 OLD_COUNT := COUNT;
95 END IF;
97 FOR I IN FALSE .. E'(TRUE) LOOP
99 END LOOP;
100 IF OLD_COUNT + IDENT_INT (2) /= COUNT THEN
101 FAILED ("LOOP 6");
102 ELSE
103 OLD_COUNT := COUNT;
104 END IF;
106 FOR I IN B1 LOOP
108 END LOOP;
109 IF OLD_COUNT + IDENT_INT (2) /= COUNT THEN
110 FAILED ("LOOP 7");
111 ELSE
112 OLD_COUNT := COUNT;
113 END IF;
115 FOR I IN B1 RANGE FALSE .. TRUE LOOP
117 END LOOP;
118 IF OLD_COUNT + IDENT_INT (2) /= COUNT THEN
119 FAILED ("LOOP 8");
120 ELSE
121 OLD_COUNT := COUNT;
122 END IF;
124 FOR I IN FALSE .. B1'(TRUE) LOOP
126 END LOOP;
127 IF OLD_COUNT + IDENT_INT (2) /= COUNT THEN
128 FAILED ("LOOP 9");
129 ELSE
130 OLD_COUNT := COUNT;
131 END IF;
133 FOR I IN B2 LOOP
135 END LOOP;
136 IF OLD_COUNT + IDENT_INT (2) /= COUNT THEN
137 FAILED ("LOOP 10");
138 ELSE
139 OLD_COUNT := COUNT;
140 END IF;
142 FOR I IN B2 RANGE FALSE .. TRUE LOOP
144 END LOOP;
145 IF OLD_COUNT + IDENT_INT (2) /= COUNT THEN
146 FAILED ("LOOP 11");
147 ELSE
148 OLD_COUNT := COUNT;
149 END IF;
151 FOR I IN B2'(FALSE) .. TRUE LOOP
153 END LOOP;
154 IF OLD_COUNT + IDENT_INT (2) /= COUNT THEN
155 FAILED ("LOOP 12");
156 ELSE
157 OLD_COUNT := COUNT;
158 END IF;
160 FOR I IN B3 LOOP
162 END LOOP;
163 IF OLD_COUNT + IDENT_INT (2) /= COUNT THEN
164 FAILED ("LOOP 13");
165 ELSE
166 OLD_COUNT := COUNT;
167 END IF;
169 FOR I IN B3 RANGE FALSE .. TRUE LOOP
171 END LOOP;
172 IF OLD_COUNT + IDENT_INT (2) /= COUNT THEN
173 FAILED ("LOOP 14");
174 ELSE
175 OLD_COUNT := COUNT;
176 END IF;
178 FOR I IN FALSE .. B3'(TRUE) LOOP
180 END LOOP;
181 IF OLD_COUNT + IDENT_INT (2) /= COUNT THEN
182 FAILED ("LOOP 15");
183 ELSE
184 OLD_COUNT := COUNT;
185 END IF;
187 RESULT;
188 END C55B06B;