Dead
[official-gcc.git] / gomp-20050608-branch / gcc / testsuite / ada / acats / tests / c4 / c47002b.ada
blobffa7b96dc73cc90c32560a899dc8bc302dc00bae
1 -- C47002B.ADA
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.
16 -- DISCLAIMER
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 VALUES BELONGING TO EACH CLASS OF TYPE CAN BE WRITTEN AS
26 -- THE OPERANDS OF QUALIFIED EXPRESSIONS.
27 -- THIS TEST IS FOR REAL TYPES.
29 -- RJW 7/23/86
31 WITH REPORT; USE REPORT;
32 PROCEDURE C47002B IS
34 BEGIN
36 TEST( "C47002B", "CHECK THAT VALUES HAVING REAL TYPES " &
37 "CAN BE WRITTEN AS THE OPERANDS OF " &
38 "QUALIFIED EXPRESSIONS" );
40 DECLARE -- FLOATING POINT TYPES.
42 TYPE RESULTS IS (FL1, FL2, FL3);
44 TYPE FLT IS DIGITS 3 RANGE -5.0 .. 5.0;
46 TYPE NFLT IS NEW FLOAT;
48 FUNCTION F (FL : FLT) RETURN RESULTS IS
49 BEGIN
50 RETURN FL1;
51 END F;
53 FUNCTION F (FL : NFLT) RETURN RESULTS IS
54 BEGIN
55 RETURN FL2;
56 END F;
58 FUNCTION F (FL : FLOAT) RETURN RESULTS IS
59 BEGIN
60 RETURN FL3;
61 END F;
63 BEGIN
64 IF F (FLT'(0.0)) /= FL1 THEN
65 FAILED ( "INCORRECT RESULTS FOR TYPE FLT" );
66 END IF;
68 IF F (NFLT'(0.0)) /= FL2 THEN
69 FAILED ( "INCORRECT RESULTS FOR TYPE NFLT" );
70 END IF;
72 IF F (FLOAT'(0.0)) /= FL3 THEN
73 FAILED ( "INCORRECT RESULTS FOR TYPE FLOAT" );
74 END IF;
75 END;
77 DECLARE -- FIXED POINT TYPES.
79 TYPE RESULTS IS (FI1, FI2, FI3);
81 TYPE FIXED IS DELTA 0.5 RANGE -5.0 .. 5.0;
83 TYPE NFIX IS NEW FIXED;
85 FUNCTION F (FI : FIXED) RETURN RESULTS IS
86 BEGIN
87 RETURN FI1;
88 END F;
90 FUNCTION F (FI : NFIX) RETURN RESULTS IS
91 BEGIN
92 RETURN FI2;
93 END F;
95 FUNCTION F (FI : DURATION) RETURN RESULTS IS
96 BEGIN
97 RETURN FI3;
98 END F;
100 BEGIN
101 IF F (FIXED'(0.0)) /= FI1 THEN
102 FAILED ( "INCORRECT RESULTS FOR TYPE FIXED" );
103 END IF;
105 IF F (NFIX'(0.0)) /= FI2 THEN
106 FAILED ( "INCORRECT RESULTS FOR TYPE NFIX" );
107 END IF;
109 IF F (DURATION'(0.0)) /= FI3 THEN
110 FAILED ( "INCORRECT RESULTS FOR TYPE DURATION" );
111 END IF;
112 END;
114 RESULT;
115 END C47002B;