1-- C9A003A.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-- CHECK THAT ABORTING A TERMINATED TASK DOES NOT CAUSE EXCEPTIONS.
26
27
28-- RM 5/21/82
29-- SPS 11/21/82
30-- PWN 09/11/94  REMOVED PRAGMA PRIORITY FOR ADA 9X
31
32with Impdef;
33WITH REPORT; USE REPORT;
34WITH SYSTEM; USE SYSTEM;
35PROCEDURE  C9A003A  IS
36
37     -- THE TASK WILL HAVE HIGHER PRIORITY ( PRIORITY'LAST )
38
39BEGIN
40
41
42     -------------------------------------------------------------------
43
44
45     TEST ("C9A003A", "CHECK THAT  ABORTING A TERMINATED TASK" &
46                      "  DOES NOT CAUSE EXCEPTIONS"   );
47
48
49     DECLARE
50
51
52          TASK TYPE  T_TYPE  IS
53
54
55               ENTRY  E ;
56
57          END  T_TYPE ;
58
59
60          T_OBJECT1 : T_TYPE ;
61
62
63          TASK BODY  T_TYPE  IS
64               BUSY : BOOLEAN := FALSE ;
65          BEGIN
66
67               NULL;
68
69          END  T_TYPE ;
70
71
72     BEGIN
73
74
75          IF NOT  T_OBJECT1'TERMINATED  THEN
76               DELAY  20.0 * Impdef.One_Second;
77          END IF;
78
79          IF NOT  T_OBJECT1'TERMINATED  THEN
80               COMMENT( "TASK NOT YET TERMINATED (AFTER 20 S.)" );
81          END IF;
82
83
84          BEGIN
85               ABORT T_OBJECT1 ;
86          EXCEPTION
87
88               WHEN  OTHERS  =>
89                    FAILED(  "EXCEPTION RAISED (WHEN ABORTING A" &
90                             "  TERMINATED TASK)"  );
91
92          END ;
93
94
95     END ;
96
97
98     -------------------------------------------------------------------
99
100
101
102     RESULT;
103
104
105END  C9A003A ;
106