1-- C35502D.TST
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 'IMAGE' AND 'VALUE' YIELD THE CORRECT RESULT FOR THE
26-- LONGEST POSSIBLE ENUMERATION LITERAL.
27
28-- RJW 2/21/86
29
30WITH REPORT; USE REPORT;
31
32PROCEDURE C35502D IS
33
34BEGIN
35     TEST ("C35502D", "CHECK THAT 'IMAGE' AND 'VALUE' YIELD " &
36                      "CORRECT RESULTS FOR THE LONGEST POSSIBLE " &
37                      "ENUMERATION LITERAL");
38
39     -- BIG_ID1 IS A MAXIMUM LENGTH IDENTIFIER. BIG_STRING1 AND
40     -- BIG_STRING2 ARE TWO STRING LITERALS WHICH WHEN CONCATENATED
41     -- FORM THE IMAGE OF BIG_ID1;
42
43
44     DECLARE
45          TYPE ENUM IS (
46$BIG_ID1
47                        );
48
49     BEGIN
50          BEGIN
51               IF ENUM'VALUE (
52$BIG_STRING1
53&
54$BIG_STRING2
55) /=
56$BIG_ID1
57                    THEN
58                    FAILED ( "INCORRECT RESULTS FOR 'VALUE'" );
59               END IF;
60          EXCEPTION
61               WHEN OTHERS =>
62                    FAILED ( "EXCEPTION RAISED FOR 'VALUE'" );
63          END;
64          BEGIN
65               IF ENUM'IMAGE(
66$BIG_ID1
67) /=
68(
69$BIG_STRING1
70&
71$BIG_STRING2
72)                   THEN
73                    FAILED ( "INCORRECT RESULTS FOR 'IMAGE'" );
74               END IF;
75          EXCEPTION
76               WHEN CONSTRAINT_ERROR =>
77                    FAILED ( "CONSTRAINT_ERROR RAISED FOR 'IMAGE'" );
78               WHEN OTHERS =>
79                    FAILED ( "OTHER EXCEPTION RAISED FOR 'IMAGE'" );
80          END;
81     END;
82
83     RESULT;
84END C35502D;
85