3 -- Grant of Unlimited Rights
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
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.
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
34 WITH REPORT
; USE REPORT
;
37 EXCEPTION_RAISED
: BOOLEAN := FALSE;
38 FUNCTION RETURN_IN_EXCEPTION
RETURN INTEGER IS
45 COMMENT
("PROGRAM_ERROR RAISED IN FUNCTION BODY - " &
46 "RETURN_IN_EXCEPTION");
47 EXCEPTION_RAISED
:= TRUE;
49 END RETURN_IN_EXCEPTION
;
51 FUNCTION NO_RETURN
RETURN INTEGER IS
52 NO_RETURN_EXCEPTION
: EXCEPTION;
54 RAISE NO_RETURN_EXCEPTION
;
57 WHEN NO_RETURN_EXCEPTION
=>
63 TEST
("C65003A", "CHECK THAT PROGRAM_ERROR IS RAISED IF A " &
64 "FUNCTION RETURNS WITHOUT EXECUTING A RETURN " &
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");
79 COMMENT
("PROGRAM_ERROR RAISED AT POINT OF CALL " &
80 "- RETURN_IN_EXCEPTION");
87 IF NO_RETURN
= NO_RETURN
THEN
88 FAILED
("PROGRAM_ERROR NOT RAISED - NO_RETURN");
94 COMMENT
("PROGRAM_ERROR RAISED WHEN NO RETURN IN " &