2003-12-26 Guilhem Lavaux <guilhem@kaffe.org>
[official-gcc.git] / gcc / testsuite / ada / acats / tests / c9 / c95041a.ada
blob4f676b3c4e76e88f6176fb3b79805875bdc8547c
1 -- C95041A.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 -- OBJECTIVE:
26 -- CHECK THAT AN ENTRY FAMILY INDEX CAN BE SPECIFIED WITH THE FORM
27 -- A'RANGE.
29 -- HISTORY:
30 -- DHH 03/17/88 CREATED ORIGINAL TEST.
32 WITH REPORT; USE REPORT;
33 PROCEDURE C95041A IS
35 GLOBAL_A, GLOBAL_B : INTEGER;
36 GLOBAL_C, GLOBAL_D : INTEGER;
37 TYPE COLOR IS (RED, BLUE, YELLOW);
38 TYPE ARR IS ARRAY(COLOR RANGE RED .. BLUE) OF BOOLEAN;
39 ARRY : ARR;
41 TASK CHECK IS
42 ENTRY CHECK_LINK(ARR'RANGE)(I : INTEGER);
43 END CHECK;
45 TASK CHECK_OBJ IS
46 ENTRY CHECK_OBJ_LINK(ARRY'RANGE)(I : INTEGER);
47 END CHECK_OBJ;
49 TASK BODY CHECK IS
50 BEGIN
51 ACCEPT CHECK_LINK(RED)(I : INTEGER) DO
52 GLOBAL_A := IDENT_INT(I);
53 END;
55 ACCEPT CHECK_LINK(BLUE)(I : INTEGER) DO
56 GLOBAL_B := IDENT_INT(I);
57 END;
58 END CHECK;
60 TASK BODY CHECK_OBJ IS
61 BEGIN
62 ACCEPT CHECK_OBJ_LINK(RED)(I : INTEGER) DO
63 GLOBAL_C := IDENT_INT(I);
64 END;
66 ACCEPT CHECK_OBJ_LINK(BLUE)(I : INTEGER) DO
67 GLOBAL_D := IDENT_INT(I);
68 END;
69 END CHECK_OBJ;
71 BEGIN
72 TEST("C95041A", "CHECK THAT AN ENTRY FAMILY INDEX CAN BE " &
73 "SPECIFIED WITH THE FORM A'RANGE");
74 CHECK.CHECK_LINK(RED)(10);
75 CHECK.CHECK_LINK(BLUE)(5);
77 CHECK_OBJ.CHECK_OBJ_LINK(RED)(10);
78 CHECK_OBJ.CHECK_OBJ_LINK(BLUE)(5);
80 IF GLOBAL_A /= IDENT_INT(10) THEN
81 FAILED("ENTRY CHECK_LINK(RED) HAS INCORRECT VALUE");
82 END IF;
84 IF GLOBAL_B /= IDENT_INT(5) THEN
85 FAILED("ENTRY CHECK_LINK(BLUE) HAS INCORRECT VALUE");
86 END IF;
88 IF GLOBAL_C /= IDENT_INT(10) THEN
89 FAILED("ENTRY CHECK_LINK(RED) HAS INCORRECT VALUE");
90 END IF;
92 IF GLOBAL_D /= IDENT_INT(5) THEN
93 FAILED("ENTRY CHECK_LINK(BLUE) HAS INCORRECT VALUE");
94 END IF;
96 RESULT;
97 END C95041A;