1-- CE3409E.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-- OBJECTIVE:
26--     CHECK THAT SET_COL RAISES END_ERROR IF NO LINE BEFORE THE END OF
27--     THE FILE IS LONG ENOUGH.
28
29-- APPLICABILITY CRITERIA:
30--     THIS TEST IS APPLICABLE ONLY TO IMPLEMENTATIONS WHICH SUPPORT
31--     TEXT FILES.
32
33-- HISTORY:
34--     ABW 08/26/82
35--     SPS 09/20/82
36--     JBG 01/27/83
37--     TBN 11/10/86  REVISED TEST TO OUTPUT A NOT_APPLICABLE
38--                   RESULT WHEN FILES ARE NOT SUPPORTED.
39--     JLH 08/31/87  REMOVED DEPENDENCE ON RESET, REMOVED UNNECESSARY
40--                   CODE, AND CHECKED FOR USE_ERROR ON DELETE.
41
42WITH REPORT;
43USE REPORT;
44WITH TEXT_IO;
45USE TEXT_IO;
46
47PROCEDURE CE3409E IS
48
49     INCOMPLETE : EXCEPTION;
50     FILE : FILE_TYPE;
51     CHAR : CHARACTER := ('C');
52     ITEM_CHAR : CHARACTER;
53
54BEGIN
55
56     TEST ("CE3409E", "CHECK THAT SET_COL RAISES END_ERROR " &
57                      "WHEN IT ATTEMPTS TO READ THE FILE TERMINATOR");
58
59-- CREATE & INITIALIZE FILE
60
61     BEGIN
62          CREATE (FILE, OUT_FILE, LEGAL_FILE_NAME);
63     EXCEPTION
64          WHEN USE_ERROR =>
65               NOT_APPLICABLE ("USE_ERROR RAISED ON TEXT CREATE WITH " &
66                               "OUT_FILE MODE");
67               RAISE INCOMPLETE;
68          WHEN NAME_ERROR =>
69               NOT_APPLICABLE ("NAME_ERROR RAISED ON TEXT CREATE " &
70                               "WITH OUT_FILE MODE");
71               RAISE INCOMPLETE;
72          WHEN OTHERS =>
73               FAILED ("UNEXPECTED EXCEPTION RAISED ON TEXT CREATE");
74               RAISE INCOMPLETE;
75     END;
76
77     PUT (FILE, "ABCD");
78     NEW_LINE (FILE);
79     PUT (FILE, "DEF");
80
81     CLOSE (FILE);
82
83     BEGIN
84          OPEN (FILE, IN_FILE, LEGAL_FILE_NAME);
85     EXCEPTION
86          WHEN USE_ERROR =>
87               NOT_APPLICABLE ("USE_ERROR RAISED ON TEXT OPEN WITH " &
88                               "IN_FILE MODE");
89               RAISE INCOMPLETE;
90     END;
91
92     BEGIN
93          SET_COL (FILE, 513);
94          FAILED ("END ERROR NOT RAISED ON SET_COL");
95     EXCEPTION
96          WHEN END_ERROR =>
97               NULL;
98          WHEN OTHERS =>
99               FAILED ("UNEXPECTED EXCEPTION RAISED ON SET_COL");
100     END;
101
102     BEGIN
103          DELETE (FILE);
104     EXCEPTION
105          WHEN USE_ERROR =>
106               NULL;
107     END;
108
109     RESULT;
110
111EXCEPTION
112     WHEN INCOMPLETE =>
113          RESULT;
114
115END CE3409E;
116