1-- C49021A.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 BOOLEAN LITERALS CAN BE USED IN STATIC EXPRESSIONS 26-- TOGETHER WITH THE LOGICAL OPERATORS, THE NOT OPERATOR, AND THE 27-- RELATIONAL AND EQUALITY OPERATORS. 28 29-- L.BROWN 09/25/86 30 31WITH REPORT; USE REPORT; 32PROCEDURE C49021A IS 33 34 CAS_BOL : BOOLEAN := TRUE; 35 X1 : CONSTANT := BOOLEAN'POS((TRUE AND FALSE)OR(TRUE AND TRUE)); 36 X2 : CONSTANT := BOOLEAN'POS((TRUE <= FALSE)AND(FALSE >= FALSE)); 37 38BEGIN 39 TEST("C49021A","BOOLEAN LITERALS TOGETHER WITH CERTAIN OPERATORS,"& 40 "CAN BE USED IN STATIC EXPRESSIONS."); 41 IF X1 /= 1 THEN 42 FAILED("INCORRECT VALUE RETURNED BY BOOLEAN EXPRESSION 1"); 43 END IF; 44 45 IF X2 /= 0 THEN 46 FAILED("INCORRECT VALUE RETURNED BY BOOLEAN EXPRESSION 2"); 47 END IF; 48 49 CASE CAS_BOL IS 50 WHEN ((TRUE AND FALSE) XOR (TRUE XOR TRUE)) => 51 FAILED("INCORRECT VALUE RETURNED BY BOOLEAN " & 52 "EXPRESSION 2"); 53 WHEN OTHERS => 54 CAS_BOL := TRUE; 55 END CASE; 56 57 CASE CAS_BOL IS 58 WHEN ((TRUE > FALSE) OR (FALSE <= TRUE)) => 59 CAS_BOL := TRUE; 60 WHEN OTHERS => 61 FAILED("INCORRECT VALUE RETURNED BY BOOLEAN " & 62 "EXPRESSION 3"); 63 END CASE; 64 65 CASE CAS_BOL IS 66 WHEN NOT((TRUE OR FALSE) = (FALSE AND TRUE)) => 67 CAS_BOL := TRUE; 68 WHEN OTHERS => 69 FAILED("INCORRECT VALUE RETURNED BY BOOLEAN " & 70 "EXPRESSION 4"); 71 END CASE; 72 73 CASE CAS_BOL IS 74 WHEN (((TRUE = FALSE) OR (FALSE AND TRUE)) /= (TRUE < TRUE))=> 75 FAILED("INCORRECT VALUE RETURNED BY BOOLEAN " & 76 "EXPRESSION 5"); 77 WHEN OTHERS => 78 CAS_BOL := TRUE; 79 END CASE; 80 81 RESULT; 82 83END C49021A; 84