Remove old autovect-branch by moving to "dead" directory.
[official-gcc.git] / old-autovect-branch / gcc / testsuite / ada / acats / tests / c6 / c65003a.ada
blob49cd2b55ef593875c49de65147b246a5caccd3d3
1 -- C65003A.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 IF NO RETURN STATEMENT IS EXECUTED, A FUNCTION RAISES
26 -- PROGRAM_ERROR. DETERMINE WHERE THE EXCEPTION IS RAISED.
28 -- THIS LACK OF AN EXECUTABLE RETURN IS DETECTABLE AT COMPILE TIME IN
29 -- THIS TEST.
31 -- JBG 10/14/83
32 -- SPS 2/22/84
34 WITH REPORT; USE REPORT;
35 PROCEDURE C65003A IS
37 EXCEPTION_RAISED : BOOLEAN := FALSE;
38 FUNCTION RETURN_IN_EXCEPTION RETURN INTEGER IS
39 BEGIN
40 IF FALSE THEN
41 RETURN 5;
42 END IF;
43 EXCEPTION
44 WHEN PROGRAM_ERROR =>
45 COMMENT ("PROGRAM_ERROR RAISED IN FUNCTION BODY - " &
46 "RETURN_IN_EXCEPTION");
47 EXCEPTION_RAISED := TRUE;
48 RETURN 5;
49 END RETURN_IN_EXCEPTION;
51 FUNCTION NO_RETURN RETURN INTEGER IS
52 NO_RETURN_EXCEPTION : EXCEPTION;
53 BEGIN
54 RAISE NO_RETURN_EXCEPTION;
55 RETURN 5;
56 EXCEPTION
57 WHEN NO_RETURN_EXCEPTION =>
58 NULL;
59 END NO_RETURN;
61 BEGIN
63 TEST ("C65003A", "CHECK THAT PROGRAM_ERROR IS RAISED IF A " &
64 "FUNCTION RETURNS WITHOUT EXECUTING A RETURN " &
65 "STATEMENT");
67 BEGIN
69 IF RETURN_IN_EXCEPTION = RETURN_IN_EXCEPTION THEN
70 IF NOT EXCEPTION_RAISED THEN
71 FAILED ("PROGRAM_ERROR NOT RAISED - " &
72 "RETURN_IN_EXCEPTION");
73 END IF;
74 END IF;
76 EXCEPTION
78 WHEN PROGRAM_ERROR =>
79 COMMENT ("PROGRAM_ERROR RAISED AT POINT OF CALL " &
80 "- RETURN_IN_EXCEPTION");
82 END;
85 BEGIN
87 IF NO_RETURN = NO_RETURN THEN
88 FAILED ("PROGRAM_ERROR NOT RAISED - NO_RETURN");
89 END IF;
91 EXCEPTION
93 WHEN PROGRAM_ERROR =>
94 COMMENT ("PROGRAM_ERROR RAISED WHEN NO RETURN IN " &
95 "EXCEPTION HANDLER");
96 END;
98 RESULT;
100 END C65003A;