annotate gcc/testsuite/ada/acats/tests/c4/c45262b.ada @ 111:04ced10e8804

gcc 7
author kono
date Fri, 27 Oct 2017 22:46:09 +0900
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
111
kono
parents:
diff changeset
1 -- C45262B.ADA
kono
parents:
diff changeset
2
kono
parents:
diff changeset
3 -- Grant of Unlimited Rights
kono
parents:
diff changeset
4 --
kono
parents:
diff changeset
5 -- Under contracts F33600-87-D-0337, F33600-84-D-0280, MDA903-79-C-0687,
kono
parents:
diff changeset
6 -- F08630-91-C-0015, and DCA100-97-D-0025, the U.S. Government obtained
kono
parents:
diff changeset
7 -- unlimited rights in the software and documentation contained herein.
kono
parents:
diff changeset
8 -- Unlimited rights are defined in DFAR 252.227-7013(a)(19). By making
kono
parents:
diff changeset
9 -- this public release, the Government intends to confer upon all
kono
parents:
diff changeset
10 -- recipients unlimited rights equal to those held by the Government.
kono
parents:
diff changeset
11 -- These rights include rights to use, duplicate, release or disclose the
kono
parents:
diff changeset
12 -- released technical data and computer software in whole or in part, in
kono
parents:
diff changeset
13 -- any manner and for any purpose whatsoever, and to have or permit others
kono
parents:
diff changeset
14 -- to do so.
kono
parents:
diff changeset
15 --
kono
parents:
diff changeset
16 -- DISCLAIMER
kono
parents:
diff changeset
17 --
kono
parents:
diff changeset
18 -- ALL MATERIALS OR INFORMATION HEREIN RELEASED, MADE AVAILABLE OR
kono
parents:
diff changeset
19 -- DISCLOSED ARE AS IS. THE GOVERNMENT MAKES NO EXPRESS OR IMPLIED
kono
parents:
diff changeset
20 -- WARRANTY AS TO ANY MATTER WHATSOEVER, INCLUDING THE CONDITIONS OF THE
kono
parents:
diff changeset
21 -- SOFTWARE, DOCUMENTATION OR OTHER INFORMATION RELEASED, MADE AVAILABLE
kono
parents:
diff changeset
22 -- OR DISCLOSED, OR THE OWNERSHIP, MERCHANTABILITY, OR FITNESS FOR A
kono
parents:
diff changeset
23 -- PARTICULAR PURPOSE OF SAID MATERIAL.
kono
parents:
diff changeset
24 --*
kono
parents:
diff changeset
25 -- CHECK THAT ORDERING COMPARISONS YIELD CORRECT RESULTS FOR
kono
parents:
diff changeset
26 -- ONE-DIMENSIONAL DISCRETE ARRAY TYPES. THIS TEST CHECKS STRING TYPES.
kono
parents:
diff changeset
27
kono
parents:
diff changeset
28 -- JWC 9/9/85
kono
parents:
diff changeset
29 -- JRK 6/24/86 FIXED SPELLING IN FAILURE MESSAGE.
kono
parents:
diff changeset
30
kono
parents:
diff changeset
31 WITH REPORT; USE REPORT;
kono
parents:
diff changeset
32
kono
parents:
diff changeset
33 PROCEDURE C45262B IS
kono
parents:
diff changeset
34 BEGIN
kono
parents:
diff changeset
35 TEST ("C45262B", "ORDERING COMPARISONS OF ONE-DIMENSIONAL " &
kono
parents:
diff changeset
36 "DISCRETE ARRAY TYPES - TYPE STRING");
kono
parents:
diff changeset
37
kono
parents:
diff changeset
38 DECLARE
kono
parents:
diff changeset
39
kono
parents:
diff changeset
40 STRING1 : STRING(2 .. IDENT_INT(1));
kono
parents:
diff changeset
41 STRING2 : STRING(3 .. IDENT_INT(1));
kono
parents:
diff changeset
42 STRING3 : STRING(2 .. IDENT_INT(2)) := (IDENT_INT(2) => 'A');
kono
parents:
diff changeset
43 STRING4 : STRING(1 .. IDENT_INT(1)) := (IDENT_INT(1) => 'A');
kono
parents:
diff changeset
44 STRING5 : STRING(1 .. IDENT_INT(1)) := (IDENT_INT(1) => 'B');
kono
parents:
diff changeset
45 STRING6 : STRING(2 .. IDENT_INT(6)) :=
kono
parents:
diff changeset
46 (2 .. IDENT_INT(6) => 'A');
kono
parents:
diff changeset
47 STRING7 : STRING(1 .. 5) := (1 .. 4 => 'A', 5 => 'B');
kono
parents:
diff changeset
48 STRING8 : STRING(1 .. IDENT_INT(5)) :=
kono
parents:
diff changeset
49 (1 .. IDENT_INT(5) => 'A');
kono
parents:
diff changeset
50 STRING9 : STRING(1 .. IDENT_INT(4)) :=
kono
parents:
diff changeset
51 (1 .. IDENT_INT(4) => 'A');
kono
parents:
diff changeset
52 STRINGA : STRING(1 .. IDENT_INT(4)) :=
kono
parents:
diff changeset
53 (1 .. IDENT_INT(4) => 'B');
kono
parents:
diff changeset
54
kono
parents:
diff changeset
55 BEGIN
kono
parents:
diff changeset
56 IF STRING1 < STRING2 THEN
kono
parents:
diff changeset
57 FAILED ("NULL ARRAYS STRING1 AND STRING2 NOT EQUAL - <");
kono
parents:
diff changeset
58 END IF;
kono
parents:
diff changeset
59
kono
parents:
diff changeset
60 IF NOT (STRING1 <= STRING2) THEN
kono
parents:
diff changeset
61 FAILED ("NULL ARRAYS STRING1 AND STRING2 NOT EQUAL - " &
kono
parents:
diff changeset
62 "<=");
kono
parents:
diff changeset
63 END IF;
kono
parents:
diff changeset
64
kono
parents:
diff changeset
65 IF STRING1 > STRING2 THEN
kono
parents:
diff changeset
66 FAILED ("NULL ARRAYS STRING1 AND STRING2 NOT EQUAL - >");
kono
parents:
diff changeset
67 END IF;
kono
parents:
diff changeset
68
kono
parents:
diff changeset
69 IF NOT ( ">=" (STRING1, STRING2) ) THEN
kono
parents:
diff changeset
70 FAILED ("NULL ARRAYS STRING1 AND STRING2 NOT EQUAL - " &
kono
parents:
diff changeset
71 ">=");
kono
parents:
diff changeset
72 END IF;
kono
parents:
diff changeset
73
kono
parents:
diff changeset
74 IF STRING3 < STRING1 THEN
kono
parents:
diff changeset
75 FAILED ("NON-NULL ARRAY STRING3 LESS THAN NULL STRING1");
kono
parents:
diff changeset
76 END IF;
kono
parents:
diff changeset
77
kono
parents:
diff changeset
78 IF STRING3 <= STRING1 THEN
kono
parents:
diff changeset
79 FAILED ("NON-NULL ARRAY STRING3 LESS THAN EQUAL NULL " &
kono
parents:
diff changeset
80 "STRING1");
kono
parents:
diff changeset
81 END IF;
kono
parents:
diff changeset
82
kono
parents:
diff changeset
83 IF NOT ( ">" (STRING3, STRING1) ) THEN
kono
parents:
diff changeset
84 FAILED ("NON-NULL ARRAY STRING3 NOT GREATER THAN NULL " &
kono
parents:
diff changeset
85 "STRING1");
kono
parents:
diff changeset
86 END IF;
kono
parents:
diff changeset
87
kono
parents:
diff changeset
88 IF NOT (STRING3 >= STRING1) THEN
kono
parents:
diff changeset
89 FAILED ("NON-NULL ARRAY STRING3 NOT GREATER THAN " &
kono
parents:
diff changeset
90 "EQUAL NULL STRING1");
kono
parents:
diff changeset
91 END IF;
kono
parents:
diff changeset
92
kono
parents:
diff changeset
93 IF STRING3 < STRING4 THEN
kono
parents:
diff changeset
94 FAILED ("DIFFERENT BOUNDS, SAME NUMBER OF COMPONENTS, " &
kono
parents:
diff changeset
95 "COMPONENTS EQUAL - <");
kono
parents:
diff changeset
96 END IF;
kono
parents:
diff changeset
97
kono
parents:
diff changeset
98 IF NOT ( "<=" (STRING3, STRING4) ) THEN
kono
parents:
diff changeset
99 FAILED ("DIFFERENT BOUNDS, SAME NUMBER OF COMPONENTS, " &
kono
parents:
diff changeset
100 "COMPONENTS EQUAL - <=");
kono
parents:
diff changeset
101 END IF;
kono
parents:
diff changeset
102
kono
parents:
diff changeset
103 IF STRING3 > STRING4 THEN
kono
parents:
diff changeset
104 FAILED ("DIFFERENT BOUNDS, SAME NUMBER OF COMPONENTS, " &
kono
parents:
diff changeset
105 "COMPONENTS EQUAL - >");
kono
parents:
diff changeset
106 END IF;
kono
parents:
diff changeset
107
kono
parents:
diff changeset
108 IF NOT (STRING3 >= STRING4) THEN
kono
parents:
diff changeset
109 FAILED ("DIFFERENT BOUNDS, SAME NUMBER OF COMPONENTS, " &
kono
parents:
diff changeset
110 "COMPONENTS EQUAL - >=");
kono
parents:
diff changeset
111 END IF;
kono
parents:
diff changeset
112
kono
parents:
diff changeset
113 IF NOT ( "<" (STRING3, STRING5) ) THEN
kono
parents:
diff changeset
114 FAILED ("DIFFERENT BOUNDS, SAME NUMBER OF COMPONENTS, " &
kono
parents:
diff changeset
115 "COMPONENTS NOT EQUAL - <");
kono
parents:
diff changeset
116 END IF;
kono
parents:
diff changeset
117
kono
parents:
diff changeset
118 IF NOT (STRING3 <= STRING5) THEN
kono
parents:
diff changeset
119 FAILED ("DIFFERENT BOUNDS, SAME NUMBER OF COMPONENTS, " &
kono
parents:
diff changeset
120 "COMPONENTS NOT EQUAL - <=");
kono
parents:
diff changeset
121 END IF;
kono
parents:
diff changeset
122
kono
parents:
diff changeset
123 IF STRING3 > STRING5 THEN
kono
parents:
diff changeset
124 FAILED ("DIFFERENT BOUNDS, SAME NUMBER OF COMPONENTS, " &
kono
parents:
diff changeset
125 "COMPONENTS NOT EQUAL - >");
kono
parents:
diff changeset
126 END IF;
kono
parents:
diff changeset
127
kono
parents:
diff changeset
128 IF STRING3 >= STRING5 THEN
kono
parents:
diff changeset
129 FAILED ("DIFFERENT BOUNDS, SAME NUMBER OF COMPONENTS, " &
kono
parents:
diff changeset
130 "COMPONENTS NOT EQUAL - >=");
kono
parents:
diff changeset
131 END IF;
kono
parents:
diff changeset
132
kono
parents:
diff changeset
133 IF NOT (STRING6 < STRING7) THEN
kono
parents:
diff changeset
134 FAILED ("DIFFERENT BOUNDS, SAME NUMBER OF COMPONENTS, " &
kono
parents:
diff changeset
135 "MULTIPLE COMPONENTS, COMPONENTS NOT EQUAL - <");
kono
parents:
diff changeset
136 END IF;
kono
parents:
diff changeset
137
kono
parents:
diff changeset
138 IF NOT (STRING6 <= STRING7) THEN
kono
parents:
diff changeset
139 FAILED ("DIFFERENT BOUNDS, SAME NUMBER OF COMPONENTS, " &
kono
parents:
diff changeset
140 "MULTIPLE COMPONENTS, COMPONENTS NOT EQUAL - " &
kono
parents:
diff changeset
141 "<=");
kono
parents:
diff changeset
142 END IF;
kono
parents:
diff changeset
143
kono
parents:
diff changeset
144 IF STRING6 > STRING7 THEN
kono
parents:
diff changeset
145 FAILED ("DIFFERENT BOUNDS, SAME NUMBER OF COMPONENTS, " &
kono
parents:
diff changeset
146 "MULTIPLE COMPONENTS, COMPONENTS NOT EQUAL - >");
kono
parents:
diff changeset
147 END IF;
kono
parents:
diff changeset
148
kono
parents:
diff changeset
149 IF ">=" (LEFT => STRING6, RIGHT => STRING7) THEN
kono
parents:
diff changeset
150 FAILED ("DIFFERENT BOUNDS, SAME NUMBER OF COMPONENTS, " &
kono
parents:
diff changeset
151 "MULTIPLE COMPONENTS, COMPONENTS NOT EQUAL - " &
kono
parents:
diff changeset
152 ">=");
kono
parents:
diff changeset
153 END IF;
kono
parents:
diff changeset
154
kono
parents:
diff changeset
155 IF STRING6 < STRING8 THEN
kono
parents:
diff changeset
156 FAILED ("DIFFERENT BOUNDS, SAME NUMBER OF COMPONENTS, " &
kono
parents:
diff changeset
157 "MULTIPLE COMPONENTS, COMPONENTS EQUAL - <");
kono
parents:
diff changeset
158 END IF;
kono
parents:
diff changeset
159
kono
parents:
diff changeset
160 IF NOT (STRING6 <= STRING8) THEN
kono
parents:
diff changeset
161 FAILED ("DIFFERENT BOUNDS, SAME NUMBER OF COMPONENTS, " &
kono
parents:
diff changeset
162 "MULTIPLE COMPONENTS, COMPONENTS EQUAL - <=");
kono
parents:
diff changeset
163 END IF;
kono
parents:
diff changeset
164
kono
parents:
diff changeset
165 IF ">" (RIGHT => STRING8, LEFT => STRING6) THEN
kono
parents:
diff changeset
166 FAILED ("DIFFERENT BOUNDS, SAME NUMBER OF COMPONENTS, " &
kono
parents:
diff changeset
167 "MULTIPLE COMPONENTS, COMPONENTS EQUAL - >");
kono
parents:
diff changeset
168 END IF;
kono
parents:
diff changeset
169
kono
parents:
diff changeset
170 IF NOT (STRING6 >= STRING8) THEN
kono
parents:
diff changeset
171 FAILED ("DIFFERENT BOUNDS, SAME NUMBER OF COMPONENTS, " &
kono
parents:
diff changeset
172 "MULTIPLE COMPONENTS, COMPONENTS EQUAL - >=");
kono
parents:
diff changeset
173 END IF;
kono
parents:
diff changeset
174
kono
parents:
diff changeset
175 IF STRING8 < STRING9 THEN
kono
parents:
diff changeset
176 FAILED ("DIFFERENT NUMBER OF COMPONENTS, " &
kono
parents:
diff changeset
177 "COMPONENTS EQUAL - <");
kono
parents:
diff changeset
178 END IF;
kono
parents:
diff changeset
179
kono
parents:
diff changeset
180 IF STRING8 <= STRING9 THEN
kono
parents:
diff changeset
181 FAILED ("DIFFERENT NUMBER OF COMPONENTS, " &
kono
parents:
diff changeset
182 "COMPONENTS EQUAL - <=");
kono
parents:
diff changeset
183 END IF;
kono
parents:
diff changeset
184
kono
parents:
diff changeset
185 IF NOT (STRING8 > STRING9) THEN
kono
parents:
diff changeset
186 FAILED ("DIFFERENT NUMBER OF COMPONENTS, " &
kono
parents:
diff changeset
187 "COMPONENTS EQUAL - >");
kono
parents:
diff changeset
188 END IF;
kono
parents:
diff changeset
189
kono
parents:
diff changeset
190 IF NOT (STRING8 >= STRING9) THEN
kono
parents:
diff changeset
191 FAILED ("DIFFERENT NUMBER OF COMPONENTS, " &
kono
parents:
diff changeset
192 "COMPONENTS EQUAL - >=");
kono
parents:
diff changeset
193 END IF;
kono
parents:
diff changeset
194
kono
parents:
diff changeset
195 IF NOT (STRING8 < STRINGA) THEN
kono
parents:
diff changeset
196 FAILED ("DIFFERENT NUMBER OF COMPONENTS, " &
kono
parents:
diff changeset
197 "COMPONENTS NOT EQUAL - <");
kono
parents:
diff changeset
198 END IF;
kono
parents:
diff changeset
199
kono
parents:
diff changeset
200 IF NOT (STRING8 <= STRINGA) THEN
kono
parents:
diff changeset
201 FAILED ("DIFFERENT NUMBER OF COMPONENTS, " &
kono
parents:
diff changeset
202 "COMPONENTS NOT EQUAL - <=");
kono
parents:
diff changeset
203 END IF;
kono
parents:
diff changeset
204
kono
parents:
diff changeset
205 IF STRING8 > STRINGA THEN
kono
parents:
diff changeset
206 FAILED ("DIFFERENT NUMBER OF COMPONENTS, " &
kono
parents:
diff changeset
207 "COMPONENTS NOT EQUAL - >");
kono
parents:
diff changeset
208 END IF;
kono
parents:
diff changeset
209
kono
parents:
diff changeset
210 IF STRING8 >= STRINGA THEN
kono
parents:
diff changeset
211 FAILED ("DIFFERENT NUMBER OF COMPONENTS, " &
kono
parents:
diff changeset
212 "COMPONENTS NOT EQUAL - >=");
kono
parents:
diff changeset
213 END IF;
kono
parents:
diff changeset
214
kono
parents:
diff changeset
215 END;
kono
parents:
diff changeset
216
kono
parents:
diff changeset
217 RESULT;
kono
parents:
diff changeset
218
kono
parents:
diff changeset
219 END C45262B;