1-- C55B11B.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-- OBJECTIVE: 26-- CHECK THAT THE FORM 'FOR I IN ST RANGE L .. R LOOP' IS ACCEPTED 27-- EVEN IF BOTH L AND R ARE OVERLOADED ENUMERATION LITERALS (SO 28-- THAT L .. R WOULD BE ILLEGAL WITHOUT ST RANGE). 29 30-- HISTORY: 31-- DHH 09/07/88 CREATED ORIGINAL TEST. 32 33WITH REPORT; USE REPORT; 34PROCEDURE C55B11B IS 35 TYPE ST IS (A, B, C, D, E, F, G, H); 36 TYPE SI IS (A, B, C, D, F, E, G, H); 37 38 GLOBAL : INTEGER := 0; 39 40 PROCEDURE CHECK_VAR(T : ST) IS 41 BEGIN 42 GLOBAL := GLOBAL + 1; 43 CASE T IS 44 WHEN D => 45 IF GLOBAL /= IDENT_INT(1) THEN 46 FAILED("1 WRONG VALUE"); 47 END IF; 48 49 WHEN E => 50 IF GLOBAL /= IDENT_INT(2) THEN 51 FAILED("2 WRONG VALUE"); 52 END IF; 53 54 WHEN F => 55 IF GLOBAL /= IDENT_INT(3) THEN 56 FAILED("3 WRONG VALUE"); 57 END IF; 58 59 WHEN G => 60 IF GLOBAL /= IDENT_INT(4) THEN 61 FAILED("4 WRONG VALUE"); 62 END IF; 63 64 WHEN OTHERS => 65 FAILED("WRONG VALUE TO PROCEDURE"); 66 67 END CASE; 68 END CHECK_VAR; 69 70 PROCEDURE CHECK_VAR(T : SI) IS 71 BEGIN 72 FAILED("WRONG PROCEDURE CALLED"); 73 END CHECK_VAR; 74 75BEGIN 76 TEST ("C55B11B", "CHECK THAT THE 'FORM FOR I IN ST RANGE L .. R " & 77 "LOOP' IS ACCEPTED EVEN IF BOTH L AND R ARE " & 78 "OVERLOADED ENUMERATION LITERALS (SO THAT L .. " & 79 "R WOULD BE ILLEGAL WITHOUT ST RANGE)"); 80 81 FOR I IN ST RANGE D .. G LOOP 82 CHECK_VAR(I); 83 END LOOP; 84 85 RESULT; 86END C55B11B; 87