1-- C49022B.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 IN NUMBER DECLARATIONS, IDENTIFIERS CORRECTLY REPRESENT 26-- VALUES OF OTHER LITERALS. 27 28-- BAW 29 SEPT 80 29-- TBN 10/22/85 RENAMED FROM C4A003A.ADA AND ADDED RELATIONAL 30-- OPERATORS USING NAMED NUMBERS. 31 32 33WITH REPORT; 34PROCEDURE C49022B IS 35 36 USE REPORT; 37 38 A : CONSTANT := 10; -- A = 10 39 B : CONSTANT := 25 - (2 * A); -- B = 5 40 C : CONSTANT := A / B; -- C = 2 41 D : CONSTANT := (C * A) - (B - C); -- D = 17 42 E : CONSTANT := D ** C; -- E = 289 43 F : CONSTANT := (E MOD A) + 1; -- F = 10 44 G : CONSTANT := A REM B + C + D + E + ABS(-F); -- G = 318 45 H : CONSTANT := BOOLEAN'POS (A > B); -- H = 1 46 I : CONSTANT := BOOLEAN'POS (A < B); -- I = 0 47 J : CONSTANT := BOOLEAN'POS (C >= A); -- J = 0 48 K : CONSTANT := BOOLEAN'POS (B <= B); -- K = 1 49 L : CONSTANT := BOOLEAN'POS (D = A); -- L = 0 50 M : CONSTANT := BOOLEAN'POS (A /= F); -- M = 0 51 52BEGIN 53 TEST("C49022B","CHECK THAT IN NUMBER DECLARATIONS, IDENTIFIERS " & 54 "CORRECTLY REPRESENT VALUES OF OTHER LITERALS"); 55 56 IF G /= 318 THEN 57 FAILED("USE OF OTHER NUMBER DECLARATIONS GIVES " & 58 "WRONG RESULTS"); 59 END IF; 60 61 IF H /= 1 OR I /= 0 OR J /= 0 OR K /= 1 THEN 62 FAILED("USE OF NAMED NUMBERS AND RELATIONAL OPERATORS " & 63 "GIVES WRONG RESULTS"); 64 END IF; 65 66 IF L /= 0 OR M /= 0 THEN 67 FAILED("USE OF NAMED NUMBERS AND EQUALITY OPERATORS " & 68 "GIVES WRONG RESULTS"); 69 END IF; 70 71 RESULT; 72 73END C49022B; 74