Mercurial > hg > CbC > CbC_gcc
comparison gcc/testsuite/ada/acats/tests/c9/c96006a.ada @ 111:04ced10e8804
gcc 7
author | kono |
---|---|
date | Fri, 27 Oct 2017 22:46:09 +0900 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
68:561a7518be6b | 111:04ced10e8804 |
---|---|
1 -- C96006A.ADA | |
2 | |
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. | |
15 -- | |
16 -- DISCLAIMER | |
17 -- | |
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 FOR THE PACKAGE CALENDAR, THE RELATIONAL OPERATORS WORK | |
26 -- CORRECTLY FOR OPERANDS OF TYPE TIME AND TYPE DURATION. PARTICULARLY, | |
27 -- (A) RELATIONS BASED ON YEARS. | |
28 -- (B) RELATIONS BASED ON MONTH. | |
29 -- (C) RELATIONS BASED ON SECONDS. | |
30 -- (D) RELATIONS AT EXTREMES OF THE PERMITTED RANGE OF TIME. | |
31 | |
32 -- CPP 8/16/84 | |
33 | |
34 WITH CALENDAR; USE CALENDAR; | |
35 WITH REPORT; USE REPORT; | |
36 PROCEDURE C96006A IS | |
37 | |
38 BEGIN | |
39 TEST ("C96006A", "CHECK THAT RELATIONAL OPERATORS WORK " & | |
40 "CORRECTLY IN THE PACKAGE CALENDAR"); | |
41 | |
42 -------------------------------------------- | |
43 | |
44 DECLARE -- (A) | |
45 -- RELATIONS BASED ON YEARS. | |
46 NOW, LATER : TIME; | |
47 BEGIN -- (A) | |
48 NOW := TIME_OF (1984, 8, 12, 500.0); | |
49 LATER := TIME_OF (1985, 8, 12, 500.0); | |
50 | |
51 IF NOW < LATER THEN | |
52 COMMENT ("< OPERATOR OK - (A)"); | |
53 ELSE | |
54 FAILED ("< OPERATOR INCORRECT - (A)"); | |
55 END IF; | |
56 | |
57 IF NOW <= LATER THEN | |
58 COMMENT ("<= OPERATOR OK - (A)"); | |
59 ELSE | |
60 FAILED ("<= OPERATOR INCORRECT - (A)"); | |
61 END IF; | |
62 | |
63 IF NOW <= NOW THEN | |
64 COMMENT ("<= OPERATOR OK - (A)2"); | |
65 ELSE | |
66 FAILED ("<= OPERATOR INCORRECT - (A)2"); | |
67 END IF; | |
68 | |
69 IF LATER > NOW THEN | |
70 COMMENT ("> OPERATOR OK - (A)"); | |
71 ELSE | |
72 FAILED ("> OPERATOR INCORRECT - (A)"); | |
73 END IF; | |
74 | |
75 IF LATER >= NOW THEN | |
76 COMMENT (">= OPERATOR OK - (A)"); | |
77 ELSE | |
78 FAILED (">= OPERATOR INCORRECT - (A)"); | |
79 END IF; | |
80 | |
81 IF LATER >= LATER THEN | |
82 COMMENT (">= OPERATOR OK - (A)2"); | |
83 ELSE | |
84 FAILED (">= OPERATOR INCORRECT - (A)2"); | |
85 END IF; | |
86 | |
87 END; -- (A) | |
88 | |
89 -------------------------------------------- | |
90 | |
91 DECLARE -- (B) | |
92 -- RELATIONS BASED ON MONTH. | |
93 NOW, LATER : TIME; | |
94 BEGIN -- (B) | |
95 NOW := TIME_OF (1984, 8, 12, 500.0); | |
96 LATER := TIME_OF (1984, 9, 12, 500.0); | |
97 | |
98 IF NOW < LATER THEN | |
99 COMMENT ("< OPERATOR OK - (B)"); | |
100 ELSE | |
101 FAILED ("< OPERATOR INCORRECT - (B)"); | |
102 END IF; | |
103 | |
104 IF NOW <= LATER THEN | |
105 COMMENT ("<= OPERATOR OK - (B)"); | |
106 ELSE | |
107 FAILED ("<= OPERATOR INCORRECT - (B)"); | |
108 END IF; | |
109 | |
110 IF NOW <= NOW THEN | |
111 COMMENT ("<= OPERATOR OK - (B)2"); | |
112 ELSE | |
113 FAILED ("<= OPERATOR INCORRECT - (B)2"); | |
114 END IF; | |
115 | |
116 IF LATER > NOW THEN | |
117 COMMENT ("> OPERATOR OK - (B)"); | |
118 ELSE | |
119 FAILED ("> OPERATOR INCORRECT - (B)"); | |
120 END IF; | |
121 | |
122 IF LATER >= NOW THEN | |
123 COMMENT (">= OPERATOR OK - (B)"); | |
124 ELSE | |
125 FAILED (">= OPERATOR INCORRECT - (B)"); | |
126 END IF; | |
127 | |
128 IF LATER >= LATER THEN | |
129 COMMENT (">= OPERATOR OK - (B)2"); | |
130 ELSE | |
131 FAILED (">= OPERATOR INCORRECT - (B)2"); | |
132 END IF; | |
133 | |
134 IF NOW = NOW THEN | |
135 COMMENT ("= OPERATOR OK - (B)"); | |
136 ELSE | |
137 FAILED ("= OPERATOR INCORRECT - (B)"); | |
138 END IF; | |
139 | |
140 IF LATER /= NOW THEN | |
141 COMMENT ("/= OPERATOR OK - (B)"); | |
142 ELSE | |
143 FAILED ("/= OPERATOR INCORRECT - (B)"); | |
144 END IF; | |
145 | |
146 END; -- (B) | |
147 | |
148 -------------------------------------------- | |
149 | |
150 DECLARE -- (C) | |
151 -- RELATIONS BASED ON SECONDS. | |
152 NOW, LATER : TIME; | |
153 INCREMENT : DURATION := 99.9; | |
154 BEGIN -- (C) | |
155 NOW := TIME_OF (1984, 8, 12, 500.0); | |
156 LATER := NOW + INCREMENT; | |
157 | |
158 IF NOW < LATER THEN | |
159 COMMENT ("< OPERATOR OK - (C)"); | |
160 ELSE | |
161 FAILED ("< OPERATOR INCORRECT - (C)"); | |
162 END IF; | |
163 | |
164 IF NOW <= LATER THEN | |
165 COMMENT ("<= OPERATOR OK - (C)"); | |
166 ELSE | |
167 FAILED ("<= OPERATOR INCORRECT - (C)"); | |
168 END IF; | |
169 | |
170 IF NOW <= NOW THEN | |
171 COMMENT ("<= OPERATOR OK - (C)2"); | |
172 ELSE | |
173 FAILED ("<= OPERATOR INCORRECT - (C)2"); | |
174 END IF; | |
175 | |
176 IF LATER > NOW THEN | |
177 COMMENT ("> OPERATOR OK - (C)"); | |
178 ELSE | |
179 FAILED ("> OPERATOR INCORRECT - (C)"); | |
180 END IF; | |
181 | |
182 IF LATER >= NOW THEN | |
183 COMMENT (">= OPERATOR OK - (C)"); | |
184 ELSE | |
185 FAILED (">= OPERATOR INCORRECT - (C)"); | |
186 END IF; | |
187 | |
188 IF LATER >= LATER THEN | |
189 COMMENT (">= OPERATOR OK - (C)2"); | |
190 ELSE | |
191 FAILED (">= OPERATOR INCORRECT - (C)2"); | |
192 END IF; | |
193 | |
194 IF LATER = LATER THEN | |
195 COMMENT ("= OPERATOR OK - (C)"); | |
196 ELSE | |
197 FAILED ("= OPERATOR INCORRECT - (C)"); | |
198 END IF; | |
199 | |
200 IF NOW /= LATER THEN | |
201 COMMENT ("/= OPERATOR OK - (C)"); | |
202 ELSE | |
203 FAILED ("/= OPERATOR INCORRECT - (C)"); | |
204 END IF; | |
205 | |
206 IF NOW < NOW THEN | |
207 FAILED ("NOW < NOW INCORRECT - (C)"); | |
208 ELSIF NOW /= NOW THEN | |
209 FAILED ("NOW = NOW INCORRECT - (C)"); | |
210 ELSIF LATER < NOW THEN | |
211 FAILED ("LATER < NOW INCORRECT - (C)"); | |
212 ELSIF LATER <= NOW THEN | |
213 FAILED ("LATER <= NOW INCORRECT - (C)"); | |
214 ELSIF LATER = NOW THEN | |
215 FAILED ("NOW = LATER INCORRECT - (C)"); | |
216 ELSIF NOW > LATER THEN | |
217 FAILED ("NOW > LATER INCORRECT - (C)"); | |
218 ELSIF NOW > NOW THEN | |
219 FAILED ("NOW > NOW INCORRECT - (C)"); | |
220 ELSIF NOW >= LATER THEN | |
221 FAILED ("NOW >= LATER INCORRECT - (C)"); | |
222 ELSIF NOW = LATER THEN | |
223 FAILED ("NOW = LATER INCORRECT - (C)"); | |
224 END IF; | |
225 | |
226 END; -- (C) | |
227 | |
228 -------------------------------------------- | |
229 | |
230 DECLARE -- (D) | |
231 | |
232 NOW, WAY_BACK_THEN : TIME; | |
233 | |
234 BEGIN -- (D) | |
235 | |
236 NOW := TIME_OF (2099, 12, 31); | |
237 WAY_BACK_THEN := TIME_OF (1901, 1, 1); | |
238 | |
239 BEGIN | |
240 IF NOW < WAY_BACK_THEN THEN | |
241 FAILED ("TEST < AT EXTREMES INCORRECT - (D)"); | |
242 END IF; | |
243 EXCEPTION | |
244 WHEN OTHERS => | |
245 FAILED ("< AT EXTREMES RAISED EXCEPTION - (D)"); | |
246 END; | |
247 | |
248 BEGIN | |
249 IF NOW <= WAY_BACK_THEN THEN | |
250 FAILED ("TEST <= AT EXTREMES INCORRECT - (D)"); | |
251 END IF; | |
252 EXCEPTION | |
253 WHEN OTHERS => | |
254 FAILED ("<= AT EXTREMES RAISED EXCEPTION - (D)"); | |
255 END; | |
256 | |
257 BEGIN | |
258 IF WAY_BACK_THEN > NOW THEN | |
259 FAILED ("TEST > AT EXTREMES INCORRECT - (D)"); | |
260 END IF; | |
261 EXCEPTION | |
262 WHEN OTHERS => | |
263 FAILED ("> AT EXTREMES RAISED EXCEPTION - (D)"); | |
264 END; | |
265 | |
266 BEGIN | |
267 IF WAY_BACK_THEN >= NOW THEN | |
268 FAILED ("TEST >= AT EXTREMES INCORRECT - (D)"); | |
269 END IF; | |
270 EXCEPTION | |
271 WHEN OTHERS => | |
272 FAILED (">= AT EXTREMES RAISED EXCEPTION - (D)"); | |
273 END; | |
274 | |
275 BEGIN | |
276 IF WAY_BACK_THEN /= WAY_BACK_THEN THEN | |
277 FAILED ("TEST /= AT EXTREMES INCORRECT - (D)"); | |
278 END IF; | |
279 EXCEPTION | |
280 WHEN OTHERS => | |
281 FAILED ("/= AT EXTREMES RAISED EXCEPTION - (D)"); | |
282 END; | |
283 | |
284 BEGIN | |
285 IF NOW = WAY_BACK_THEN THEN | |
286 FAILED ("TEST = AT EXTREMES INCORRECT - (D)"); | |
287 END IF; | |
288 EXCEPTION | |
289 WHEN OTHERS => | |
290 FAILED ("= AT EXTREMES RAISED EXCEPTION - (D)"); | |
291 END; | |
292 | |
293 END; -- (D) | |
294 | |
295 -------------------------------------------- | |
296 | |
297 RESULT; | |
298 END C96006A; |