annotate gcc/testsuite/ada/acats/tests/c8/c85006b.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 -- C85006B.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 -- OBJECTIVE:
kono
parents:
diff changeset
26 -- CHECK THAT A COMPONENT OR SLICE OF A VARIABLE CREATED BY A
kono
parents:
diff changeset
27 -- SUBPROGRAM 'IN OUT' FORMAL PARAMETER CAN BE RENAMED AND HAS THE
kono
parents:
diff changeset
28 -- CORRECT VALUE, AND THAT THE NEW NAME CAN BE USED IN AN ASSIGNMENT
kono
parents:
diff changeset
29 -- STATEMENT AND PASSED ON AS AN ACTUAL SUBPROGRAM OR ENTRY 'IN OUT'
kono
parents:
diff changeset
30 -- OR 'OUT' PARAMETER, AND AS AN ACTUAL GENERIC 'IN OUT' PARAMETER,
kono
parents:
diff changeset
31 -- AND THAT WHEN THE VALUE OF THE RENAMED VARIABLE IS CHANGED,
kono
parents:
diff changeset
32 -- THE NEW VALUE IS REFLECTED BY THE VALUE OF THE NEW NAME.
kono
parents:
diff changeset
33
kono
parents:
diff changeset
34 -- HISTORY:
kono
parents:
diff changeset
35 -- JET 03/22/88 CREATED ORIGINAL TEST.
kono
parents:
diff changeset
36
kono
parents:
diff changeset
37 WITH REPORT; USE REPORT;
kono
parents:
diff changeset
38 PROCEDURE C85006B IS
kono
parents:
diff changeset
39
kono
parents:
diff changeset
40 TYPE ARRAY1 IS ARRAY (POSITIVE RANGE <>) OF INTEGER;
kono
parents:
diff changeset
41 TYPE RECORD1 (D : INTEGER) IS
kono
parents:
diff changeset
42 RECORD
kono
parents:
diff changeset
43 FIELD1 : INTEGER := 1;
kono
parents:
diff changeset
44 END RECORD;
kono
parents:
diff changeset
45 TYPE POINTER1 IS ACCESS INTEGER;
kono
parents:
diff changeset
46
kono
parents:
diff changeset
47 PACKAGE PACK1 IS
kono
parents:
diff changeset
48 TYPE PRIVY IS PRIVATE;
kono
parents:
diff changeset
49 ZERO : CONSTANT PRIVY;
kono
parents:
diff changeset
50 ONE : CONSTANT PRIVY;
kono
parents:
diff changeset
51 TWO : CONSTANT PRIVY;
kono
parents:
diff changeset
52 THREE : CONSTANT PRIVY;
kono
parents:
diff changeset
53 FOUR : CONSTANT PRIVY;
kono
parents:
diff changeset
54 FIVE : CONSTANT PRIVY;
kono
parents:
diff changeset
55 FUNCTION IDENT (I : PRIVY) RETURN PRIVY;
kono
parents:
diff changeset
56 FUNCTION NEXT (I : PRIVY) RETURN PRIVY;
kono
parents:
diff changeset
57 PRIVATE
kono
parents:
diff changeset
58 TYPE PRIVY IS RANGE 0..127;
kono
parents:
diff changeset
59 ZERO : CONSTANT PRIVY := 0;
kono
parents:
diff changeset
60 ONE : CONSTANT PRIVY := 1;
kono
parents:
diff changeset
61 TWO : CONSTANT PRIVY := 2;
kono
parents:
diff changeset
62 THREE : CONSTANT PRIVY := 3;
kono
parents:
diff changeset
63 FOUR : CONSTANT PRIVY := 4;
kono
parents:
diff changeset
64 FIVE : CONSTANT PRIVY := 5;
kono
parents:
diff changeset
65 END PACK1;
kono
parents:
diff changeset
66
kono
parents:
diff changeset
67 TASK TYPE TASK1 IS
kono
parents:
diff changeset
68 ENTRY ASSIGN (J : IN INTEGER);
kono
parents:
diff changeset
69 ENTRY VALU (J : OUT INTEGER);
kono
parents:
diff changeset
70 ENTRY NEXT;
kono
parents:
diff changeset
71 ENTRY STOP;
kono
parents:
diff changeset
72 END TASK1;
kono
parents:
diff changeset
73
kono
parents:
diff changeset
74 TYPE ARR_INT IS ARRAY(POSITIVE RANGE <>) OF INTEGER;
kono
parents:
diff changeset
75 TYPE ARR_ARR IS ARRAY(POSITIVE RANGE <>) OF ARRAY1(1..3);
kono
parents:
diff changeset
76 TYPE ARR_REC IS ARRAY(POSITIVE RANGE <>) OF RECORD1(1);
kono
parents:
diff changeset
77 TYPE ARR_PTR IS ARRAY(POSITIVE RANGE <>) OF POINTER1;
kono
parents:
diff changeset
78 TYPE ARR_PVT IS ARRAY(POSITIVE RANGE <>) OF PACK1.PRIVY;
kono
parents:
diff changeset
79 TYPE ARR_TSK IS ARRAY(POSITIVE RANGE <>) OF TASK1;
kono
parents:
diff changeset
80
kono
parents:
diff changeset
81 TYPE REC_TYPE IS RECORD
kono
parents:
diff changeset
82 RI1 : INTEGER := 0;
kono
parents:
diff changeset
83 RA1 : ARRAY1(1..3) := (OTHERS => 0);
kono
parents:
diff changeset
84 RR1 : RECORD1(1) := (D => 1, FIELD1 => 0);
kono
parents:
diff changeset
85 RP1 : POINTER1 := NEW INTEGER'(0);
kono
parents:
diff changeset
86 RV1 : PACK1.PRIVY := PACK1.ZERO;
kono
parents:
diff changeset
87 RT1 : TASK1;
kono
parents:
diff changeset
88 END RECORD;
kono
parents:
diff changeset
89
kono
parents:
diff changeset
90 DREC : REC_TYPE;
kono
parents:
diff changeset
91
kono
parents:
diff changeset
92 DAI1 : ARR_INT(1..8) := (OTHERS => 0);
kono
parents:
diff changeset
93 DAA1 : ARR_ARR(1..8) := (OTHERS => (OTHERS => 0));
kono
parents:
diff changeset
94 DAR1 : ARR_REC(1..8) := (OTHERS => (D => 1, FIELD1 => 0));
kono
parents:
diff changeset
95 DAP1 : ARR_PTR(1..8) := (OTHERS => NEW INTEGER'(0));
kono
parents:
diff changeset
96 DAV1 : ARR_PVT(1..8) := (OTHERS => PACK1.ZERO);
kono
parents:
diff changeset
97 DAT1 : ARR_TSK(1..8);
kono
parents:
diff changeset
98
kono
parents:
diff changeset
99 GENERIC
kono
parents:
diff changeset
100 GRI1 : IN OUT INTEGER;
kono
parents:
diff changeset
101 GRA1 : IN OUT ARRAY1;
kono
parents:
diff changeset
102 GRR1 : IN OUT RECORD1;
kono
parents:
diff changeset
103 GRP1 : IN OUT POINTER1;
kono
parents:
diff changeset
104 GRV1 : IN OUT PACK1.PRIVY;
kono
parents:
diff changeset
105 GRT1 : IN OUT TASK1;
kono
parents:
diff changeset
106 GAI1 : IN OUT ARR_INT;
kono
parents:
diff changeset
107 GAA1 : IN OUT ARR_ARR;
kono
parents:
diff changeset
108 GAR1 : IN OUT ARR_REC;
kono
parents:
diff changeset
109 GAP1 : IN OUT ARR_PTR;
kono
parents:
diff changeset
110 GAV1 : IN OUT ARR_PVT;
kono
parents:
diff changeset
111 GAT1 : IN OUT ARR_TSK;
kono
parents:
diff changeset
112 PACKAGE GENERIC1 IS
kono
parents:
diff changeset
113 END GENERIC1;
kono
parents:
diff changeset
114
kono
parents:
diff changeset
115 FUNCTION IDENT (P : POINTER1) RETURN POINTER1 IS
kono
parents:
diff changeset
116 BEGIN
kono
parents:
diff changeset
117 IF EQUAL (3,3) THEN
kono
parents:
diff changeset
118 RETURN P;
kono
parents:
diff changeset
119 ELSE
kono
parents:
diff changeset
120 RETURN NULL;
kono
parents:
diff changeset
121 END IF;
kono
parents:
diff changeset
122 END IDENT;
kono
parents:
diff changeset
123
kono
parents:
diff changeset
124 PACKAGE BODY PACK1 IS
kono
parents:
diff changeset
125 FUNCTION IDENT (I : PRIVY) RETURN PRIVY IS
kono
parents:
diff changeset
126 BEGIN
kono
parents:
diff changeset
127 IF EQUAL(3,3) THEN
kono
parents:
diff changeset
128 RETURN I;
kono
parents:
diff changeset
129 ELSE
kono
parents:
diff changeset
130 RETURN PRIVY'(0);
kono
parents:
diff changeset
131 END IF;
kono
parents:
diff changeset
132 END IDENT;
kono
parents:
diff changeset
133
kono
parents:
diff changeset
134 FUNCTION NEXT (I : PRIVY) RETURN PRIVY IS
kono
parents:
diff changeset
135 BEGIN
kono
parents:
diff changeset
136 RETURN I+1;
kono
parents:
diff changeset
137 END NEXT;
kono
parents:
diff changeset
138 END PACK1;
kono
parents:
diff changeset
139
kono
parents:
diff changeset
140 PACKAGE BODY GENERIC1 IS
kono
parents:
diff changeset
141 BEGIN
kono
parents:
diff changeset
142 GRI1 := GRI1 + 1;
kono
parents:
diff changeset
143 GRA1 := (GRA1(1)+1, GRA1(2)+1, GRA1(3)+1);
kono
parents:
diff changeset
144 GRR1 := (D => 1, FIELD1 => GRR1.FIELD1+1);
kono
parents:
diff changeset
145 GRP1 := NEW INTEGER'(GRP1.ALL + 1);
kono
parents:
diff changeset
146 GRV1 := PACK1.NEXT(GRV1);
kono
parents:
diff changeset
147 GRT1.NEXT;
kono
parents:
diff changeset
148 GAI1 := (OTHERS => GAI1(GAI1'FIRST) + 1);
kono
parents:
diff changeset
149 GAA1 := (OTHERS => (OTHERS => GAA1(GAA1'FIRST)(1) + 1));
kono
parents:
diff changeset
150 GAR1 := (OTHERS => (D => 1,
kono
parents:
diff changeset
151 FIELD1 => (GAR1(GAR1'FIRST).FIELD1 + 1)));
kono
parents:
diff changeset
152 GAP1 := (OTHERS => NEW INTEGER'(GAP1(GAP1'FIRST).ALL + 1));
kono
parents:
diff changeset
153 FOR J IN GAV1'RANGE LOOP
kono
parents:
diff changeset
154 GAV1(J) := PACK1.NEXT(GAV1(J));
kono
parents:
diff changeset
155 END LOOP;
kono
parents:
diff changeset
156 FOR J IN GAT1'RANGE LOOP
kono
parents:
diff changeset
157 GAT1(J).NEXT;
kono
parents:
diff changeset
158 END LOOP;
kono
parents:
diff changeset
159 END GENERIC1;
kono
parents:
diff changeset
160
kono
parents:
diff changeset
161 TASK BODY TASK1 IS
kono
parents:
diff changeset
162 TASK_VALUE : INTEGER := 0;
kono
parents:
diff changeset
163 ACCEPTING_ENTRIES : BOOLEAN := TRUE;
kono
parents:
diff changeset
164 BEGIN
kono
parents:
diff changeset
165 WHILE ACCEPTING_ENTRIES LOOP
kono
parents:
diff changeset
166 SELECT
kono
parents:
diff changeset
167 ACCEPT ASSIGN (J : IN INTEGER) DO
kono
parents:
diff changeset
168 TASK_VALUE := J;
kono
parents:
diff changeset
169 END ASSIGN;
kono
parents:
diff changeset
170 OR
kono
parents:
diff changeset
171 ACCEPT VALU (J : OUT INTEGER) DO
kono
parents:
diff changeset
172 J := TASK_VALUE;
kono
parents:
diff changeset
173 END VALU;
kono
parents:
diff changeset
174 OR
kono
parents:
diff changeset
175 ACCEPT NEXT DO
kono
parents:
diff changeset
176 TASK_VALUE := TASK_VALUE + 1;
kono
parents:
diff changeset
177 END NEXT;
kono
parents:
diff changeset
178 OR
kono
parents:
diff changeset
179 ACCEPT STOP DO
kono
parents:
diff changeset
180 ACCEPTING_ENTRIES := FALSE;
kono
parents:
diff changeset
181 END STOP;
kono
parents:
diff changeset
182 END SELECT;
kono
parents:
diff changeset
183 END LOOP;
kono
parents:
diff changeset
184 END TASK1;
kono
parents:
diff changeset
185
kono
parents:
diff changeset
186 PROCEDURE PROC (REC : IN OUT REC_TYPE;
kono
parents:
diff changeset
187 AI1 : IN OUT ARR_INT; AA1 : IN OUT ARR_ARR;
kono
parents:
diff changeset
188 AR1 : IN OUT ARR_REC; AP1 : IN OUT ARR_PTR;
kono
parents:
diff changeset
189 AV1 : IN OUT ARR_PVT; AT1 : IN OUT ARR_TSK) IS
kono
parents:
diff changeset
190
kono
parents:
diff changeset
191 XRI1 : INTEGER RENAMES REC.RI1;
kono
parents:
diff changeset
192 XRA1 : ARRAY1 RENAMES REC.RA1;
kono
parents:
diff changeset
193 XRR1 : RECORD1 RENAMES REC.RR1;
kono
parents:
diff changeset
194 XRP1 : POINTER1 RENAMES REC.RP1;
kono
parents:
diff changeset
195 XRV1 : PACK1.PRIVY RENAMES REC.RV1;
kono
parents:
diff changeset
196 XRT1 : TASK1 RENAMES REC.RT1;
kono
parents:
diff changeset
197 XAI1 : ARR_INT RENAMES AI1(1..3);
kono
parents:
diff changeset
198 XAA1 : ARR_ARR RENAMES AA1(2..4);
kono
parents:
diff changeset
199 XAR1 : ARR_REC RENAMES AR1(3..5);
kono
parents:
diff changeset
200 XAP1 : ARR_PTR RENAMES AP1(4..6);
kono
parents:
diff changeset
201 XAV1 : ARR_PVT RENAMES AV1(5..7);
kono
parents:
diff changeset
202 XAT1 : ARR_TSK RENAMES AT1(6..8);
kono
parents:
diff changeset
203
kono
parents:
diff changeset
204 TASK TYPE TASK2 IS
kono
parents:
diff changeset
205 ENTRY ENTRY1 (TRI1 : OUT INTEGER; TRA1 : OUT ARRAY1;
kono
parents:
diff changeset
206 TRR1 : OUT RECORD1; TRP1 : IN OUT POINTER1;
kono
parents:
diff changeset
207 TRV1 : IN OUT PACK1.PRIVY;
kono
parents:
diff changeset
208 TRT1 : IN OUT TASK1;
kono
parents:
diff changeset
209 TAI1 : OUT ARR_INT; TAA1 : OUT ARR_ARR;
kono
parents:
diff changeset
210 TAR1 : OUT ARR_REC; TAP1 : IN OUT ARR_PTR;
kono
parents:
diff changeset
211 TAV1 : IN OUT ARR_PVT;
kono
parents:
diff changeset
212 TAT1 : IN OUT ARR_TSK);
kono
parents:
diff changeset
213 END TASK2;
kono
parents:
diff changeset
214
kono
parents:
diff changeset
215 I : INTEGER;
kono
parents:
diff changeset
216 CHK_TASK : TASK2;
kono
parents:
diff changeset
217
kono
parents:
diff changeset
218 TASK BODY TASK2 IS
kono
parents:
diff changeset
219 BEGIN
kono
parents:
diff changeset
220 ACCEPT ENTRY1 (TRI1 : OUT INTEGER; TRA1 : OUT ARRAY1;
kono
parents:
diff changeset
221 TRR1 : OUT RECORD1;
kono
parents:
diff changeset
222 TRP1 : IN OUT POINTER1;
kono
parents:
diff changeset
223 TRV1 : IN OUT PACK1.PRIVY;
kono
parents:
diff changeset
224 TRT1: IN OUT TASK1;
kono
parents:
diff changeset
225 TAI1 : OUT ARR_INT; TAA1 : OUT ARR_ARR;
kono
parents:
diff changeset
226 TAR1 : OUT ARR_REC; TAP1 : IN OUT ARR_PTR;
kono
parents:
diff changeset
227 TAV1 : IN OUT ARR_PVT;
kono
parents:
diff changeset
228 TAT1 : IN OUT ARR_TSK)
kono
parents:
diff changeset
229 DO
kono
parents:
diff changeset
230 TRI1 := REC.RI1 + 1;
kono
parents:
diff changeset
231 TRA1 := (REC.RA1(1)+1, REC.RA1(2)+1, REC.RA1(3)+1);
kono
parents:
diff changeset
232 TRR1 := (D => 1, FIELD1 => REC.RR1.FIELD1 + 1);
kono
parents:
diff changeset
233 TRP1 := NEW INTEGER'(TRP1.ALL + 1);
kono
parents:
diff changeset
234 TRV1 := PACK1.NEXT(TRV1);
kono
parents:
diff changeset
235 TRT1.NEXT;
kono
parents:
diff changeset
236 TAI1 := (OTHERS => AI1(TAI1'FIRST) + 1);
kono
parents:
diff changeset
237 TAA1 := (OTHERS => (OTHERS =>
kono
parents:
diff changeset
238 AA1(TAA1'FIRST)(1) + 1));
kono
parents:
diff changeset
239 TAR1 := (OTHERS => (D => 1,
kono
parents:
diff changeset
240 FIELD1 => (AR1(TAR1'FIRST).FIELD1 + 1)));
kono
parents:
diff changeset
241 TAP1 := (OTHERS =>
kono
parents:
diff changeset
242 NEW INTEGER'(TAP1(TAP1'FIRST).ALL+1));
kono
parents:
diff changeset
243 FOR J IN TAV1'RANGE LOOP
kono
parents:
diff changeset
244 TAV1(J) := PACK1.NEXT(TAV1(J));
kono
parents:
diff changeset
245 END LOOP;
kono
parents:
diff changeset
246 FOR J IN TAT1'RANGE LOOP
kono
parents:
diff changeset
247 TAT1(J).NEXT;
kono
parents:
diff changeset
248 END LOOP;
kono
parents:
diff changeset
249 END ENTRY1;
kono
parents:
diff changeset
250 END TASK2;
kono
parents:
diff changeset
251
kono
parents:
diff changeset
252 PROCEDURE PROC1 (PRI1 : IN OUT INTEGER; PRA1 : IN OUT ARRAY1;
kono
parents:
diff changeset
253 PRR1 : IN OUT RECORD1; PRP1 : OUT POINTER1;
kono
parents:
diff changeset
254 PRV1 : OUT PACK1.PRIVY; PRT1 : IN OUT TASK1;
kono
parents:
diff changeset
255 PAI1 : IN OUT ARR_INT; PAA1 : IN OUT ARR_ARR;
kono
parents:
diff changeset
256 PAR1 : IN OUT ARR_REC; PAP1 : OUT ARR_PTR;
kono
parents:
diff changeset
257 PAV1 : OUT ARR_PVT; PAT1 : IN OUT ARR_TSK) IS
kono
parents:
diff changeset
258 BEGIN
kono
parents:
diff changeset
259 PRI1 := PRI1 + 1;
kono
parents:
diff changeset
260 PRA1 := (PRA1(1)+1, PRA1(2)+1, PRA1(3)+1);
kono
parents:
diff changeset
261 PRR1 := (D => 1, FIELD1 => PRR1.FIELD1 + 1);
kono
parents:
diff changeset
262 PRP1 := NEW INTEGER'(REC.RP1.ALL + 1);
kono
parents:
diff changeset
263 PRV1 := PACK1.NEXT(REC.RV1);
kono
parents:
diff changeset
264 PRT1.NEXT;
kono
parents:
diff changeset
265 PAI1 := (OTHERS => PAI1(PAI1'FIRST) + 1);
kono
parents:
diff changeset
266 PAA1 := (OTHERS => (OTHERS => PAA1(PAA1'FIRST)(1) + 1));
kono
parents:
diff changeset
267 PAR1 := (OTHERS => (D => 1, FIELD1 =>
kono
parents:
diff changeset
268 (PAR1(PAR1'FIRST).FIELD1 + 1)));
kono
parents:
diff changeset
269 PAP1 := (OTHERS => NEW INTEGER'(AP1(PAP1'FIRST).ALL+1));
kono
parents:
diff changeset
270 FOR J IN PAV1'RANGE LOOP
kono
parents:
diff changeset
271 PAV1(J) := PACK1.NEXT(AV1(J));
kono
parents:
diff changeset
272 END LOOP;
kono
parents:
diff changeset
273 FOR J IN PAT1'RANGE LOOP
kono
parents:
diff changeset
274 PAT1(J).NEXT;
kono
parents:
diff changeset
275 END LOOP;
kono
parents:
diff changeset
276 END PROC1;
kono
parents:
diff changeset
277
kono
parents:
diff changeset
278 PACKAGE GENPACK1 IS NEW
kono
parents:
diff changeset
279 GENERIC1 (XRI1, XRA1, XRR1, XRP1, XRV1, XRT1,
kono
parents:
diff changeset
280 XAI1, XAA1, XAR1, XAP1, XAV1, XAT1);
kono
parents:
diff changeset
281
kono
parents:
diff changeset
282 BEGIN
kono
parents:
diff changeset
283 IF XRI1 /= IDENT_INT(1) THEN
kono
parents:
diff changeset
284 FAILED ("INCORRECT VALUE OF XRI1 (1)");
kono
parents:
diff changeset
285 END IF;
kono
parents:
diff changeset
286
kono
parents:
diff changeset
287 IF XRA1 /= (IDENT_INT(1),IDENT_INT(1),IDENT_INT(1)) THEN
kono
parents:
diff changeset
288 FAILED ("INCORRECT VALUE OF XRA1 (1)");
kono
parents:
diff changeset
289 END IF;
kono
parents:
diff changeset
290
kono
parents:
diff changeset
291 IF XRR1 /= (D => 1, FIELD1 => IDENT_INT(1)) THEN
kono
parents:
diff changeset
292 FAILED ("INCORRECT VALUE OF XRR1 (1)");
kono
parents:
diff changeset
293 END IF;
kono
parents:
diff changeset
294
kono
parents:
diff changeset
295 IF XRP1 /= IDENT(REC.RP1) OR XRP1.ALL /= IDENT_INT(1) THEN
kono
parents:
diff changeset
296 FAILED ("INCORRECT VALUE OF XRP1 (1)");
kono
parents:
diff changeset
297 END IF;
kono
parents:
diff changeset
298
kono
parents:
diff changeset
299 IF PACK1."/=" (XRV1, PACK1.IDENT(PACK1.ONE)) THEN
kono
parents:
diff changeset
300 FAILED ("INCORRECT VALUE OF XRV1 (1)");
kono
parents:
diff changeset
301 END IF;
kono
parents:
diff changeset
302
kono
parents:
diff changeset
303 XRT1.VALU(I);
kono
parents:
diff changeset
304 IF I /= IDENT_INT(1) THEN
kono
parents:
diff changeset
305 FAILED ("INCORRECT RETURN VALUE OF XRT1.VALU (1)");
kono
parents:
diff changeset
306 END IF;
kono
parents:
diff changeset
307
kono
parents:
diff changeset
308 FOR J IN XAI1'RANGE LOOP
kono
parents:
diff changeset
309 IF XAI1(J) /= IDENT_INT(1) THEN
kono
parents:
diff changeset
310 FAILED ("INCORRECT VALUE OF XAI1(" &
kono
parents:
diff changeset
311 INTEGER'IMAGE(J) & ") (1)");
kono
parents:
diff changeset
312 END IF;
kono
parents:
diff changeset
313 END LOOP;
kono
parents:
diff changeset
314
kono
parents:
diff changeset
315 FOR J IN XAA1'RANGE LOOP
kono
parents:
diff changeset
316 IF XAA1(J) /= (IDENT_INT(1),IDENT_INT(1),IDENT_INT(1))
kono
parents:
diff changeset
317 THEN
kono
parents:
diff changeset
318 FAILED ("INCORRECT VALUE OF XAA1(" &
kono
parents:
diff changeset
319 INTEGER'IMAGE(J) & ") (1)");
kono
parents:
diff changeset
320 END IF;
kono
parents:
diff changeset
321 END LOOP;
kono
parents:
diff changeset
322
kono
parents:
diff changeset
323 FOR J IN XAR1'RANGE LOOP
kono
parents:
diff changeset
324 IF XAR1(J) /= (D => 1, FIELD1 => IDENT_INT(1)) THEN
kono
parents:
diff changeset
325 FAILED ("INCORRECT VALUE OF XAR1(" &
kono
parents:
diff changeset
326 INTEGER'IMAGE(J) & ") (1)");
kono
parents:
diff changeset
327 END IF;
kono
parents:
diff changeset
328 END LOOP;
kono
parents:
diff changeset
329
kono
parents:
diff changeset
330 FOR J IN XAP1'RANGE LOOP
kono
parents:
diff changeset
331 IF XAP1(J) /= IDENT(AP1(J)) OR
kono
parents:
diff changeset
332 XAP1(J).ALL /= IDENT_INT(1)
kono
parents:
diff changeset
333 THEN
kono
parents:
diff changeset
334 FAILED ("INCORRECT VALUE OF XAP1(" &
kono
parents:
diff changeset
335 INTEGER'IMAGE(J) & ") (1)");
kono
parents:
diff changeset
336 END IF;
kono
parents:
diff changeset
337 END LOOP;
kono
parents:
diff changeset
338
kono
parents:
diff changeset
339 FOR J IN XAV1'RANGE LOOP
kono
parents:
diff changeset
340 IF PACK1."/=" (XAV1(J), PACK1.IDENT(PACK1.ONE)) THEN
kono
parents:
diff changeset
341 FAILED ("INCORRECT VALUE OF XAV1(" &
kono
parents:
diff changeset
342 INTEGER'IMAGE(J) & ") (1)");
kono
parents:
diff changeset
343 END IF;
kono
parents:
diff changeset
344 END LOOP;
kono
parents:
diff changeset
345
kono
parents:
diff changeset
346 FOR J IN XAT1'RANGE LOOP
kono
parents:
diff changeset
347 XAT1(J).VALU(I);
kono
parents:
diff changeset
348 IF I /= IDENT_INT(1) THEN
kono
parents:
diff changeset
349 FAILED ("INCORRECT RETURN VALUE FROM XAT1(" &
kono
parents:
diff changeset
350 INTEGER'IMAGE(J) & ").VALU (1)");
kono
parents:
diff changeset
351 END IF;
kono
parents:
diff changeset
352 END LOOP;
kono
parents:
diff changeset
353
kono
parents:
diff changeset
354 PROC1 (XRI1, XRA1, XRR1, XRP1, XRV1, XRT1,
kono
parents:
diff changeset
355 XAI1, XAA1, XAR1, XAP1, XAV1, XAT1);
kono
parents:
diff changeset
356
kono
parents:
diff changeset
357 IF XRI1 /= IDENT_INT(2) THEN
kono
parents:
diff changeset
358 FAILED ("INCORRECT VALUE OF XRI1 (2)");
kono
parents:
diff changeset
359 END IF;
kono
parents:
diff changeset
360
kono
parents:
diff changeset
361 IF XRA1 /= (IDENT_INT(2),IDENT_INT(2),IDENT_INT(2)) THEN
kono
parents:
diff changeset
362 FAILED ("INCORRECT VALUE OF XRA1 (2)");
kono
parents:
diff changeset
363 END IF;
kono
parents:
diff changeset
364
kono
parents:
diff changeset
365 IF XRR1 /= (D => 1, FIELD1 => IDENT_INT(2)) THEN
kono
parents:
diff changeset
366 FAILED ("INCORRECT VALUE OF XRR1 (2)");
kono
parents:
diff changeset
367 END IF;
kono
parents:
diff changeset
368
kono
parents:
diff changeset
369 IF XRP1 /= IDENT(REC.RP1) OR XRP1.ALL /= IDENT_INT(2) THEN
kono
parents:
diff changeset
370 FAILED ("INCORRECT VALUE OF XRP1 (2)");
kono
parents:
diff changeset
371 END IF;
kono
parents:
diff changeset
372
kono
parents:
diff changeset
373 IF PACK1."/=" (XRV1, PACK1.IDENT(PACK1.TWO)) THEN
kono
parents:
diff changeset
374 FAILED ("INCORRECT VALUE OF XRV1 (2)");
kono
parents:
diff changeset
375 END IF;
kono
parents:
diff changeset
376
kono
parents:
diff changeset
377 XRT1.VALU(I);
kono
parents:
diff changeset
378 IF I /= IDENT_INT(2) THEN
kono
parents:
diff changeset
379 FAILED ("INCORRECT RETURN VALUE FROM XRT1.VALU (2)");
kono
parents:
diff changeset
380 END IF;
kono
parents:
diff changeset
381
kono
parents:
diff changeset
382 FOR J IN XAI1'RANGE LOOP
kono
parents:
diff changeset
383 IF XAI1(J) /= IDENT_INT(2) THEN
kono
parents:
diff changeset
384 FAILED ("INCORRECT VALUE OF XAI1(" &
kono
parents:
diff changeset
385 INTEGER'IMAGE(J) & ") (2)");
kono
parents:
diff changeset
386 END IF;
kono
parents:
diff changeset
387 END LOOP;
kono
parents:
diff changeset
388
kono
parents:
diff changeset
389 FOR J IN XAA1'RANGE LOOP
kono
parents:
diff changeset
390 IF XAA1(J) /= (IDENT_INT(2),IDENT_INT(2),IDENT_INT(2))
kono
parents:
diff changeset
391 THEN
kono
parents:
diff changeset
392 FAILED ("INCORRECT VALUE OF XAA1(" &
kono
parents:
diff changeset
393 INTEGER'IMAGE(J) & ") (2)");
kono
parents:
diff changeset
394 END IF;
kono
parents:
diff changeset
395 END LOOP;
kono
parents:
diff changeset
396
kono
parents:
diff changeset
397 FOR J IN XAR1'RANGE LOOP
kono
parents:
diff changeset
398 IF XAR1(J) /= (D => 1, FIELD1 => IDENT_INT(2)) THEN
kono
parents:
diff changeset
399 FAILED ("INCORRECT VALUE OF XAR1(" &
kono
parents:
diff changeset
400 INTEGER'IMAGE(J) & ") (2)");
kono
parents:
diff changeset
401 END IF;
kono
parents:
diff changeset
402 END LOOP;
kono
parents:
diff changeset
403
kono
parents:
diff changeset
404 FOR J IN XAP1'RANGE LOOP
kono
parents:
diff changeset
405 IF XAP1(J) /= IDENT(AP1(J)) OR
kono
parents:
diff changeset
406 XAP1(J).ALL /= IDENT_INT(2) THEN
kono
parents:
diff changeset
407 FAILED ("INCORRECT VALUE OF XAP1(" &
kono
parents:
diff changeset
408 INTEGER'IMAGE(J) & ") (2)");
kono
parents:
diff changeset
409 END IF;
kono
parents:
diff changeset
410 END LOOP;
kono
parents:
diff changeset
411
kono
parents:
diff changeset
412 FOR J IN XAV1'RANGE LOOP
kono
parents:
diff changeset
413 IF PACK1."/=" (XAV1(J), PACK1.IDENT(PACK1.TWO)) THEN
kono
parents:
diff changeset
414 FAILED ("INCORRECT VALUE OF XAV1(" &
kono
parents:
diff changeset
415 INTEGER'IMAGE(J) & ") (2)");
kono
parents:
diff changeset
416 END IF;
kono
parents:
diff changeset
417 END LOOP;
kono
parents:
diff changeset
418
kono
parents:
diff changeset
419 FOR J IN XAT1'RANGE LOOP
kono
parents:
diff changeset
420 XAT1(J).VALU(I);
kono
parents:
diff changeset
421 IF I /= IDENT_INT(2) THEN
kono
parents:
diff changeset
422 FAILED ("INCORRECT RETURN VALUE FROM XAT1(" &
kono
parents:
diff changeset
423 INTEGER'IMAGE(J) & ").VALU (2)");
kono
parents:
diff changeset
424 END IF;
kono
parents:
diff changeset
425 END LOOP;
kono
parents:
diff changeset
426
kono
parents:
diff changeset
427 CHK_TASK.ENTRY1(XRI1, XRA1, XRR1, XRP1, XRV1, XRT1,
kono
parents:
diff changeset
428 XAI1, XAA1, XAR1, XAP1, XAV1, XAT1);
kono
parents:
diff changeset
429
kono
parents:
diff changeset
430 IF XRI1 /= IDENT_INT(3) THEN
kono
parents:
diff changeset
431 FAILED ("INCORRECT VALUE OF XRI1 (3)");
kono
parents:
diff changeset
432 END IF;
kono
parents:
diff changeset
433
kono
parents:
diff changeset
434 IF XRA1 /= (IDENT_INT(3),IDENT_INT(3),IDENT_INT(3)) THEN
kono
parents:
diff changeset
435 FAILED ("INCORRECT VALUE OF XRA1 (3)");
kono
parents:
diff changeset
436 END IF;
kono
parents:
diff changeset
437
kono
parents:
diff changeset
438 IF XRR1 /= (D => 1, FIELD1 => IDENT_INT(3)) THEN
kono
parents:
diff changeset
439 FAILED ("INCORRECT VALUE OF XRR1 (3)");
kono
parents:
diff changeset
440 END IF;
kono
parents:
diff changeset
441
kono
parents:
diff changeset
442 IF XRP1 /= IDENT(REC.RP1) OR XRP1.ALL /= IDENT_INT(3) THEN
kono
parents:
diff changeset
443 FAILED ("INCORRECT VALUE OF XRP1 (3)");
kono
parents:
diff changeset
444 END IF;
kono
parents:
diff changeset
445
kono
parents:
diff changeset
446 IF PACK1."/=" (XRV1, PACK1.IDENT(PACK1.THREE)) THEN
kono
parents:
diff changeset
447 FAILED ("INCORRECT VALUE OF XRV1 (3)");
kono
parents:
diff changeset
448 END IF;
kono
parents:
diff changeset
449
kono
parents:
diff changeset
450 XRT1.VALU(I);
kono
parents:
diff changeset
451 IF I /= IDENT_INT(3) THEN
kono
parents:
diff changeset
452 FAILED ("INCORRECT RETURN VALUE OF XRT1.VALU (3)");
kono
parents:
diff changeset
453 END IF;
kono
parents:
diff changeset
454
kono
parents:
diff changeset
455 FOR J IN XAI1'RANGE LOOP
kono
parents:
diff changeset
456 IF XAI1(J) /= IDENT_INT(3) THEN
kono
parents:
diff changeset
457 FAILED ("INCORRECT VALUE OF XAI1(" &
kono
parents:
diff changeset
458 INTEGER'IMAGE(J) & ") (3)");
kono
parents:
diff changeset
459 END IF;
kono
parents:
diff changeset
460 END LOOP;
kono
parents:
diff changeset
461
kono
parents:
diff changeset
462 FOR J IN XAA1'RANGE LOOP
kono
parents:
diff changeset
463 IF XAA1(J) /= (IDENT_INT(3),IDENT_INT(3),IDENT_INT(3))
kono
parents:
diff changeset
464 THEN
kono
parents:
diff changeset
465 FAILED ("INCORRECT VALUE OF XAA1(" &
kono
parents:
diff changeset
466 INTEGER'IMAGE(J) & ") (3)");
kono
parents:
diff changeset
467 END IF;
kono
parents:
diff changeset
468 END LOOP;
kono
parents:
diff changeset
469
kono
parents:
diff changeset
470 FOR J IN XAR1'RANGE LOOP
kono
parents:
diff changeset
471 IF XAR1(J) /= (D => 1, FIELD1 => IDENT_INT(3)) THEN
kono
parents:
diff changeset
472 FAILED ("INCORRECT VALUE OF XAR1(" &
kono
parents:
diff changeset
473 INTEGER'IMAGE(J) & ") (3)");
kono
parents:
diff changeset
474 END IF;
kono
parents:
diff changeset
475 END LOOP;
kono
parents:
diff changeset
476
kono
parents:
diff changeset
477 FOR J IN XAP1'RANGE LOOP
kono
parents:
diff changeset
478 IF XAP1(J) /= IDENT(AP1(J)) OR
kono
parents:
diff changeset
479 XAP1(J).ALL /= IDENT_INT(3) THEN
kono
parents:
diff changeset
480 FAILED ("INCORRECT VALUE OF XAP1(" &
kono
parents:
diff changeset
481 INTEGER'IMAGE(J) & ") (3)");
kono
parents:
diff changeset
482 END IF;
kono
parents:
diff changeset
483 END LOOP;
kono
parents:
diff changeset
484
kono
parents:
diff changeset
485 FOR J IN XAV1'RANGE LOOP
kono
parents:
diff changeset
486 IF PACK1."/=" (XAV1(J), PACK1.IDENT(PACK1.THREE)) THEN
kono
parents:
diff changeset
487 FAILED ("INCORRECT VALUE OF XAV1(" &
kono
parents:
diff changeset
488 INTEGER'IMAGE(J) & ") (3)");
kono
parents:
diff changeset
489 END IF;
kono
parents:
diff changeset
490 END LOOP;
kono
parents:
diff changeset
491
kono
parents:
diff changeset
492 FOR J IN XAT1'RANGE LOOP
kono
parents:
diff changeset
493 XAT1(J).VALU(I);
kono
parents:
diff changeset
494 IF I /= IDENT_INT(3) THEN
kono
parents:
diff changeset
495 FAILED ("INCORRECT RETURN VALUE FROM XAT1(" &
kono
parents:
diff changeset
496 INTEGER'IMAGE(J) & ").VALU (3)");
kono
parents:
diff changeset
497 END IF;
kono
parents:
diff changeset
498 END LOOP;
kono
parents:
diff changeset
499
kono
parents:
diff changeset
500 XRI1 := XRI1 + 1;
kono
parents:
diff changeset
501 XRA1 := (XRA1(1)+1, XRA1(2)+1, XRA1(3)+1);
kono
parents:
diff changeset
502 XRR1 := (D => 1, FIELD1 => XRR1.FIELD1 + 1);
kono
parents:
diff changeset
503 XRP1 := NEW INTEGER'(XRP1.ALL + 1);
kono
parents:
diff changeset
504 XRV1 := PACK1.NEXT(XRV1);
kono
parents:
diff changeset
505 XRT1.NEXT;
kono
parents:
diff changeset
506 XAI1 := (OTHERS => XAI1(XAI1'FIRST) + 1);
kono
parents:
diff changeset
507 XAA1 := (OTHERS => (OTHERS => XAA1(XAA1'FIRST)(1) + 1));
kono
parents:
diff changeset
508 XAR1 := (OTHERS => (D => 1,
kono
parents:
diff changeset
509 FIELD1 => (XAR1(XAR1'FIRST).FIELD1 + 1)));
kono
parents:
diff changeset
510 XAP1 := (OTHERS => NEW INTEGER'(XAP1(XAP1'FIRST).ALL + 1));
kono
parents:
diff changeset
511 FOR J IN XAV1'RANGE LOOP
kono
parents:
diff changeset
512 XAV1(J) := PACK1.NEXT(XAV1(J));
kono
parents:
diff changeset
513 END LOOP;
kono
parents:
diff changeset
514 FOR J IN XAT1'RANGE LOOP
kono
parents:
diff changeset
515 XAT1(J).NEXT;
kono
parents:
diff changeset
516 END LOOP;
kono
parents:
diff changeset
517
kono
parents:
diff changeset
518 IF XRI1 /= IDENT_INT(4) THEN
kono
parents:
diff changeset
519 FAILED ("INCORRECT VALUE OF XRI1 (4)");
kono
parents:
diff changeset
520 END IF;
kono
parents:
diff changeset
521
kono
parents:
diff changeset
522 IF XRA1 /= (IDENT_INT(4),IDENT_INT(4),IDENT_INT(4)) THEN
kono
parents:
diff changeset
523 FAILED ("INCORRECT VALUE OF XRA1 (4)");
kono
parents:
diff changeset
524 END IF;
kono
parents:
diff changeset
525
kono
parents:
diff changeset
526 IF XRR1 /= (D => 1, FIELD1 => IDENT_INT(4)) THEN
kono
parents:
diff changeset
527 FAILED ("INCORRECT VALUE OF XRR1 (4)");
kono
parents:
diff changeset
528 END IF;
kono
parents:
diff changeset
529
kono
parents:
diff changeset
530 IF XRP1 /= IDENT(REC.RP1) OR XRP1.ALL /= IDENT_INT(4) THEN
kono
parents:
diff changeset
531 FAILED ("INCORRECT VALUE OF XRP1 (4)");
kono
parents:
diff changeset
532 END IF;
kono
parents:
diff changeset
533
kono
parents:
diff changeset
534 IF PACK1."/=" (XRV1, PACK1.IDENT(PACK1.FOUR)) THEN
kono
parents:
diff changeset
535 FAILED ("INCORRECT VALUE OF XRV1 (4)");
kono
parents:
diff changeset
536 END IF;
kono
parents:
diff changeset
537
kono
parents:
diff changeset
538 XRT1.VALU(I);
kono
parents:
diff changeset
539 IF I /= IDENT_INT(4) THEN
kono
parents:
diff changeset
540 FAILED ("INCORRECT RETURN VALUE OF XRT1.VALU (4)");
kono
parents:
diff changeset
541 END IF;
kono
parents:
diff changeset
542
kono
parents:
diff changeset
543 FOR J IN XAI1'RANGE LOOP
kono
parents:
diff changeset
544 IF XAI1(J) /= IDENT_INT(4) THEN
kono
parents:
diff changeset
545 FAILED ("INCORRECT VALUE OF XAI1(" &
kono
parents:
diff changeset
546 INTEGER'IMAGE(J) & ") (4)");
kono
parents:
diff changeset
547 END IF;
kono
parents:
diff changeset
548 END LOOP;
kono
parents:
diff changeset
549
kono
parents:
diff changeset
550 FOR J IN XAA1'RANGE LOOP
kono
parents:
diff changeset
551 IF XAA1(J) /= (IDENT_INT(4),IDENT_INT(4),IDENT_INT(4))
kono
parents:
diff changeset
552 THEN
kono
parents:
diff changeset
553 FAILED ("INCORRECT VALUE OF XAA1(" &
kono
parents:
diff changeset
554 INTEGER'IMAGE(J) & ") (4)");
kono
parents:
diff changeset
555 END IF;
kono
parents:
diff changeset
556 END LOOP;
kono
parents:
diff changeset
557
kono
parents:
diff changeset
558 FOR J IN XAR1'RANGE LOOP
kono
parents:
diff changeset
559 IF XAR1(J) /= (D => 1, FIELD1 => IDENT_INT(4)) THEN
kono
parents:
diff changeset
560 FAILED ("INCORRECT VALUE OF XAR1(" &
kono
parents:
diff changeset
561 INTEGER'IMAGE(J) & ") (4)");
kono
parents:
diff changeset
562 END IF;
kono
parents:
diff changeset
563 END LOOP;
kono
parents:
diff changeset
564
kono
parents:
diff changeset
565 FOR J IN XAP1'RANGE LOOP
kono
parents:
diff changeset
566 IF XAP1(J) /= IDENT(AP1(J)) OR
kono
parents:
diff changeset
567 XAP1(J).ALL /= IDENT_INT(4) THEN
kono
parents:
diff changeset
568 FAILED ("INCORRECT VALUE OF XAP1(" &
kono
parents:
diff changeset
569 INTEGER'IMAGE(J) & ") (4)");
kono
parents:
diff changeset
570 END IF;
kono
parents:
diff changeset
571 END LOOP;
kono
parents:
diff changeset
572
kono
parents:
diff changeset
573 FOR J IN XAV1'RANGE LOOP
kono
parents:
diff changeset
574 IF PACK1."/=" (XAV1(J), PACK1.IDENT(PACK1.FOUR)) THEN
kono
parents:
diff changeset
575 FAILED ("INCORRECT VALUE OF XAV1(" &
kono
parents:
diff changeset
576 INTEGER'IMAGE(J) & ") (4)");
kono
parents:
diff changeset
577 END IF;
kono
parents:
diff changeset
578 END LOOP;
kono
parents:
diff changeset
579
kono
parents:
diff changeset
580 FOR J IN XAT1'RANGE LOOP
kono
parents:
diff changeset
581 XAT1(J).VALU(I);
kono
parents:
diff changeset
582 IF I /= IDENT_INT(4) THEN
kono
parents:
diff changeset
583 FAILED ("INCORRECT RETURN VALUE FROM XAT1(" &
kono
parents:
diff changeset
584 INTEGER'IMAGE(J) & ").VALU (4)");
kono
parents:
diff changeset
585 END IF;
kono
parents:
diff changeset
586 END LOOP;
kono
parents:
diff changeset
587
kono
parents:
diff changeset
588 REC.RI1 := REC.RI1 + 1;
kono
parents:
diff changeset
589 REC.RA1 := (REC.RA1(1)+1, REC.RA1(2)+1, REC.RA1(3)+1);
kono
parents:
diff changeset
590 REC.RR1 := (D => 1, FIELD1 => REC.RR1.FIELD1 + 1);
kono
parents:
diff changeset
591 REC.RP1 := NEW INTEGER'(REC.RP1.ALL + 1);
kono
parents:
diff changeset
592 REC.RV1 := PACK1.NEXT(REC.RV1);
kono
parents:
diff changeset
593 REC.RT1.NEXT;
kono
parents:
diff changeset
594 AI1 := (OTHERS => AI1(XAI1'FIRST) + 1);
kono
parents:
diff changeset
595 AA1 := (OTHERS => (OTHERS => AA1(XAA1'FIRST)(1) + 1));
kono
parents:
diff changeset
596 AR1 := (OTHERS => (D => 1,
kono
parents:
diff changeset
597 FIELD1 => (AR1(XAR1'FIRST).FIELD1 + 1)));
kono
parents:
diff changeset
598 AP1 := (OTHERS => NEW INTEGER'(AP1(XAP1'FIRST).ALL + 1));
kono
parents:
diff changeset
599 FOR J IN XAV1'RANGE LOOP
kono
parents:
diff changeset
600 AV1(J) := PACK1.NEXT(AV1(J));
kono
parents:
diff changeset
601 END LOOP;
kono
parents:
diff changeset
602 FOR J IN XAT1'RANGE LOOP
kono
parents:
diff changeset
603 AT1(J).NEXT;
kono
parents:
diff changeset
604 END LOOP;
kono
parents:
diff changeset
605
kono
parents:
diff changeset
606 IF XRI1 /= IDENT_INT(5) THEN
kono
parents:
diff changeset
607 FAILED ("INCORRECT VALUE OF XRI1 (5)");
kono
parents:
diff changeset
608 END IF;
kono
parents:
diff changeset
609
kono
parents:
diff changeset
610 IF XRA1 /= (IDENT_INT(5),IDENT_INT(5),IDENT_INT(5)) THEN
kono
parents:
diff changeset
611 FAILED ("INCORRECT VALUE OF XRA1 (5)");
kono
parents:
diff changeset
612 END IF;
kono
parents:
diff changeset
613
kono
parents:
diff changeset
614 IF XRR1 /= (D => 1, FIELD1 => IDENT_INT(5)) THEN
kono
parents:
diff changeset
615 FAILED ("INCORRECT VALUE OF XRR1 (5)");
kono
parents:
diff changeset
616 END IF;
kono
parents:
diff changeset
617
kono
parents:
diff changeset
618 IF XRP1 /= IDENT(REC.RP1) OR XRP1.ALL /= IDENT_INT(5) THEN
kono
parents:
diff changeset
619 FAILED ("INCORRECT VALUE OF XRP1 (5)");
kono
parents:
diff changeset
620 END IF;
kono
parents:
diff changeset
621
kono
parents:
diff changeset
622 IF PACK1."/=" (XRV1, PACK1.IDENT(PACK1.FIVE)) THEN
kono
parents:
diff changeset
623 FAILED ("INCORRECT VALUE OF XRV1 (5)");
kono
parents:
diff changeset
624 END IF;
kono
parents:
diff changeset
625
kono
parents:
diff changeset
626 XRT1.VALU(I);
kono
parents:
diff changeset
627 IF I /= IDENT_INT(5) THEN
kono
parents:
diff changeset
628 FAILED ("INCORRECT RETURN VALUE OF XRT1.VALU (5)");
kono
parents:
diff changeset
629 END IF;
kono
parents:
diff changeset
630
kono
parents:
diff changeset
631 FOR J IN XAI1'RANGE LOOP
kono
parents:
diff changeset
632 IF XAI1(J) /= IDENT_INT(5) THEN
kono
parents:
diff changeset
633 FAILED ("INCORRECT VALUE OF XAI1(" &
kono
parents:
diff changeset
634 INTEGER'IMAGE(J) & ") (5)");
kono
parents:
diff changeset
635 END IF;
kono
parents:
diff changeset
636 END LOOP;
kono
parents:
diff changeset
637
kono
parents:
diff changeset
638 FOR J IN XAA1'RANGE LOOP
kono
parents:
diff changeset
639 IF XAA1(J) /= (IDENT_INT(5),IDENT_INT(5),IDENT_INT(5))
kono
parents:
diff changeset
640 THEN
kono
parents:
diff changeset
641 FAILED ("INCORRECT VALUE OF XAA1(" &
kono
parents:
diff changeset
642 INTEGER'IMAGE(J) & ") (5)");
kono
parents:
diff changeset
643 END IF;
kono
parents:
diff changeset
644 END LOOP;
kono
parents:
diff changeset
645
kono
parents:
diff changeset
646 FOR J IN XAR1'RANGE LOOP
kono
parents:
diff changeset
647 IF XAR1(J) /= (D => 1, FIELD1 => IDENT_INT(5)) THEN
kono
parents:
diff changeset
648 FAILED ("INCORRECT VALUE OF XAR1(" &
kono
parents:
diff changeset
649 INTEGER'IMAGE(J) & ") (5)");
kono
parents:
diff changeset
650 END IF;
kono
parents:
diff changeset
651 END LOOP;
kono
parents:
diff changeset
652
kono
parents:
diff changeset
653 FOR J IN XAP1'RANGE LOOP
kono
parents:
diff changeset
654 IF XAP1(J) /= IDENT(AP1(J)) OR
kono
parents:
diff changeset
655 XAP1(J).ALL /= IDENT_INT(5) THEN
kono
parents:
diff changeset
656 FAILED ("INCORRECT VALUE OF XAP1(" &
kono
parents:
diff changeset
657 INTEGER'IMAGE(J) & ") (5)");
kono
parents:
diff changeset
658 END IF;
kono
parents:
diff changeset
659 END LOOP;
kono
parents:
diff changeset
660
kono
parents:
diff changeset
661 FOR J IN XAV1'RANGE LOOP
kono
parents:
diff changeset
662 IF PACK1."/=" (XAV1(J), PACK1.IDENT(PACK1.FIVE)) THEN
kono
parents:
diff changeset
663 FAILED ("INCORRECT VALUE OF XAV1(" &
kono
parents:
diff changeset
664 INTEGER'IMAGE(J) & ") (5)");
kono
parents:
diff changeset
665 END IF;
kono
parents:
diff changeset
666 END LOOP;
kono
parents:
diff changeset
667
kono
parents:
diff changeset
668 FOR J IN XAT1'RANGE LOOP
kono
parents:
diff changeset
669 XAT1(J).VALU(I);
kono
parents:
diff changeset
670 IF I /= IDENT_INT(5) THEN
kono
parents:
diff changeset
671 FAILED ("INCORRECT RETURN VALUE FROM XAT1(" &
kono
parents:
diff changeset
672 INTEGER'IMAGE(J) & ").VALU (5)");
kono
parents:
diff changeset
673 END IF;
kono
parents:
diff changeset
674 END LOOP;
kono
parents:
diff changeset
675
kono
parents:
diff changeset
676 END PROC;
kono
parents:
diff changeset
677
kono
parents:
diff changeset
678 BEGIN
kono
parents:
diff changeset
679 TEST ("C85006B", "CHECK THAT A COMPONENT OR SLICE OF A VARIABLE " &
kono
parents:
diff changeset
680 "CREATED BY A SUBPROGRAM 'IN OUT' FORMAL " &
kono
parents:
diff changeset
681 "PARAMETER CAN BE RENAMED AND HAS THE CORRECT " &
kono
parents:
diff changeset
682 "VALUE, AND THAT THE NEW NAME CAN BE USED IN " &
kono
parents:
diff changeset
683 "AN ASSIGNMENT STATEMENT AND PASSED ON AS AN " &
kono
parents:
diff changeset
684 "ACTUAL SUBPROGRAM OR ENTRY 'IN OUT' OR 'OUT' " &
kono
parents:
diff changeset
685 "PARAMETER, AND AS AN ACTUAL GENERIC 'IN OUT' " &
kono
parents:
diff changeset
686 "PARAMETER, AND THAT WHEN THE VALUE OF THE " &
kono
parents:
diff changeset
687 "RENAMED VARIABLE IS CHANGED, THE NEW VALUE IS " &
kono
parents:
diff changeset
688 "REFLECTED BY THE VALUE OF THE NEW NAME");
kono
parents:
diff changeset
689
kono
parents:
diff changeset
690 PROC (DREC, DAI1, DAA1, DAR1, DAP1, DAV1, DAT1);
kono
parents:
diff changeset
691
kono
parents:
diff changeset
692 DREC.RT1.STOP;
kono
parents:
diff changeset
693
kono
parents:
diff changeset
694 FOR I IN DAT1'RANGE LOOP
kono
parents:
diff changeset
695 DAT1(I).STOP;
kono
parents:
diff changeset
696 END LOOP;
kono
parents:
diff changeset
697
kono
parents:
diff changeset
698 RESULT;
kono
parents:
diff changeset
699 END C85006B;