1-- CA1014A0M.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 A SUBUNIT CAN BE SUBMITTED FOR COMPILATION
26-- SEPARATELY FROM ITS PARENT UNIT.
27
28-- SEPARATE FILES ARE:
29--   CA1014A0M THE MAIN PROCEDURE.
30--   CA1014A1  A SUBUNIT PROCEDURE BODY.
31--   CA1014A2  A SUBUNIT PACKAGE BODY.
32--   CA1014A3  A SUBUNIT FUNCTION BODY.
33
34-- JRK 5/20/81
35
36WITH REPORT;
37USE REPORT;
38
39PROCEDURE CA1014A0M IS
40
41     I : INTEGER := 0;
42
43     PACKAGE CALL_TEST IS
44     END CALL_TEST;
45
46     PACKAGE BODY CALL_TEST IS
47     BEGIN
48          TEST ("CA1014A", "SUBUNITS SUBMITTED FOR COMPILATION " &
49                "SEPARATELY FROM PARENT UNIT");
50     END CALL_TEST;
51
52     PROCEDURE CA1014A1 (I : IN OUT INTEGER) IS SEPARATE;
53
54     PACKAGE CA1014A2 IS
55          I : INTEGER := 10;
56          PROCEDURE P (I : IN OUT INTEGER);
57     END CA1014A2;
58
59     PACKAGE BODY CA1014A2 IS SEPARATE;
60
61     FUNCTION CA1014A3 (I : INTEGER) RETURN INTEGER IS SEPARATE;
62
63BEGIN
64
65     CA1014A1 (I);
66     IF I /= 1 THEN
67          FAILED ("SUBUNIT PROCEDURE NOT ELABORATED/EXECUTED");
68     END IF;
69
70     IF CA1014A2.I /= 15 THEN
71          FAILED ("SUBUNIT PACKAGE BODY NOT ELABORATED/EXECUTED");
72     END IF;
73
74     I := 0;
75     CA1014A2.P (I);
76     IF I /= -20 THEN
77          FAILED ("SUBUNIT PACKAGED PROCEDURE NOT ELABORATED/EXECUTED");
78     END IF;
79
80     IF CA1014A3(50) /= -50 THEN
81          FAILED ("SUBUNIT FUNCTION NOT ELABORATED/EXECUTED");
82     END IF;
83
84     RESULT;
85END CA1014A0M;
86