1-- A74106B.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 FULL DECLARATION FOR A PRIVATE TYPE OR FOR A LIMITED 26-- PRIVATE TYPE CAN BE GIVEN IN TERMS OF ANY SCALAR TYPE, ARRAY TYPE, 27-- RECORD TYPE (WITH OR WITHOUT DISCRIMINANTS), ACCESS TYPE (WITH 28-- OR WITHOUT DISCRIMINANTS), OR ANY TYPE DERIVED FROM ANY OF THE 29-- ABOVE. 30 31-- PART B: TYPES INVOLVING FLOATING-POINT DATA. 32 33 34-- RM 05/08/81 35 36 37WITH REPORT; 38PROCEDURE A74106B IS 39 40 USE REPORT; 41 42BEGIN 43 44 TEST( "A74106B" , "CHECK THAT PRIVATE TYPES AND LIMITED PRIVATE " & 45 "TYPES CAN BE DEFINED IN TERMS OF " & 46 "FLOATING-POINT TYPES" ); 47 48 DECLARE 49 50 PACKAGE P0 IS 51 TYPE F0 IS PRIVATE; 52 PRIVATE 53 TYPE F0 IS NEW FLOAT; 54 END P0; 55 56 PACKAGE P1 IS 57 USE P0; 58 TYPE F1 IS PRIVATE; 59 TYPE F2 IS PRIVATE; 60 TYPE F3 IS PRIVATE; 61 TYPE F4 IS PRIVATE; 62 TYPE F5 IS PRIVATE; 63 TYPE F6 IS PRIVATE; 64 TYPE F7 IS PRIVATE; 65 TYPE F8 IS PRIVATE; 66 TYPE F9 IS PRIVATE; 67 TYPE FA IS PRIVATE; 68 TYPE FB IS PRIVATE; 69 TYPE FC IS PRIVATE; 70 TYPE FD(I : INTEGER) IS PRIVATE; 71 TYPE NF IS NEW FLOAT; 72 TYPE ARR_F IS ARRAY(1..2) OF FLOAT; 73 TYPE ACC_F IS ACCESS FLOAT; 74 TYPE REC_F IS RECORD F : FLOAT; END RECORD; 75 TYPE D_REC_F(I : INTEGER := 1) IS 76 RECORD F : FLOAT; END RECORD; 77 PRIVATE 78 TYPE FY(B : BOOLEAN) IS RECORD G : FLOAT; END RECORD; 79 TYPE FC IS NEW F0; 80 TYPE F1 IS DIGITS 3; 81 TYPE F2 IS NEW FLOAT DIGITS 4; 82 TYPE F3 IS NEW NF; 83 TYPE F4 IS ARRAY(1..2) OF FLOAT; 84 TYPE F5 IS NEW ARR_F; 85 TYPE F6 IS ACCESS FLOAT; 86 TYPE F7 IS NEW ACC_F; 87 TYPE F8 IS RECORD F : FLOAT; END RECORD; 88 TYPE F9 IS NEW REC_F; 89 TYPE FA IS ACCESS FD; 90 TYPE FB IS ACCESS D_REC_F; 91 TYPE FD(I : INTEGER) IS RECORD G : FLOAT; END RECORD; 92 93 END P1; 94 95 BEGIN 96 97 NULL; 98 99 END; 100 101 102 DECLARE 103 104 PACKAGE P0 IS 105 TYPE F0 IS LIMITED PRIVATE; 106 PRIVATE 107 TYPE F0 IS NEW FLOAT; 108 END P0; 109 110 PACKAGE P1 IS 111 USE P0; 112 TYPE F1 IS LIMITED PRIVATE; 113 TYPE F2 IS LIMITED PRIVATE; 114 TYPE F3 IS LIMITED PRIVATE; 115 TYPE F4 IS LIMITED PRIVATE; 116 TYPE F5 IS LIMITED PRIVATE; 117 TYPE F6 IS LIMITED PRIVATE; 118 TYPE F7 IS LIMITED PRIVATE; 119 TYPE F8 IS LIMITED PRIVATE; 120 TYPE F9 IS LIMITED PRIVATE; 121 TYPE FA IS LIMITED PRIVATE; 122 TYPE FB IS LIMITED PRIVATE; 123 TYPE FC IS LIMITED PRIVATE; 124 TYPE FD(I : INTEGER) IS LIMITED PRIVATE; 125 TYPE NF IS NEW FLOAT; 126 TYPE ARR_F IS ARRAY(1..2) OF FLOAT; 127 TYPE ACC_F IS ACCESS FLOAT; 128 TYPE REC_F IS RECORD F : FLOAT; END RECORD; 129 TYPE D_REC_F(I : INTEGER := 1) IS 130 RECORD F : FLOAT; END RECORD; 131 PRIVATE 132 TYPE FY(B : BOOLEAN) IS RECORD G : FLOAT; END RECORD; 133 TYPE FC IS NEW F0; 134 TYPE F1 IS DIGITS 3; 135 TYPE F2 IS NEW FLOAT DIGITS 4; 136 TYPE F3 IS NEW NF; 137 TYPE F4 IS ARRAY(1..2) OF FLOAT; 138 TYPE F5 IS NEW ARR_F; 139 TYPE F6 IS ACCESS FLOAT; 140 TYPE F7 IS NEW ACC_F; 141 TYPE F8 IS RECORD F : FLOAT; END RECORD; 142 TYPE F9 IS NEW REC_F; 143 TYPE FA IS ACCESS FD; 144 TYPE FB IS ACCESS D_REC_F; 145 TYPE FD(I : INTEGER) IS RECORD G : FLOAT; END RECORD; 146 147 END P1; 148 149 BEGIN 150 151 NULL; 152 153 END; 154 155 156 RESULT; 157 158 159END A74106B; 160