CVS difference for ai05s/ai05-0231-1.txt
--- ai05s/ai05-0231-1.txt 2010/10/26 03:00:41 1.1
+++ ai05s/ai05-0231-1.txt 2010/11/20 04:50:31 1.2
@@ -1,7 +1,9 @@
-!standard A.16(58/2) 10-10-25 AI05-0231-1/01
+!standard A.16(59/2) 10-11-19 AI05-0231-1/02
!standard A.16(67/2)
!standard A.16(125/2)
!class binding interpretation 10-10-25
+!status Amendment 2012 10-11-19
+!status ARG Approved 8-0-2 10-10-29
!status work item 10-10-25
!status received 10-07-13
!priority Low
@@ -10,7 +12,15 @@
!subject Issues in Ada.Directories
!summary
+Name_Error can be raised by Rename if the New_Name cannot identify a
+file.
+If the pattern of a search is malformed, Name_Error is raised, not
+Use_Error.
+
+Use_Error is raised when an attempt to delete non-empty directory
+with Delete_Directory is made.
+
!question
(1) The description of Rename (A.16(67)) says "The exception
@@ -29,7 +39,7 @@
(2) A.16(104) says "After a successful call on Start_Search, the object
Search may have entries available, but it may have no entries
-avaliable if no files or directories match Pattern and Filter. The
+available if no files or directories match Pattern and Filter. The
exception Name_Error is propagated if the string given by Directory
does not identify an existing directory, or if Pattern does not allow
the identification of any possible external file or directory".
@@ -54,7 +64,7 @@
!wording
-Modify A.16(58/2):
+Modify A.16(59/2):
Deletes an existing empty directory with name Directory. The
exception Name_Error is propagated if the string given as
@@ -77,7 +87,7 @@
Modify A.16(125/2):
-Start_Search and Search should raise {Name_error}[Use_Error] if Pattern
+Start_Search and Search should raise {Name_Error}[Use_Error] if Pattern
is malformed, but not if it could represent a file in the directory but
does not actually do so.
@@ -87,15 +97,67 @@
For (2), we either need to delete the part about malformed patterns in
A.16(104/2) and A.16(112/2), or change the exception in A.16(125/2)
to Name_Error. We do the latter because it's a smaller change.
-[Q: Should we allow either Name_Error or Use_Error in the Implementation
-Advice?]
For (3), the existing wording clearly was a cut-and-paste of too much text.
The wording includes "(or some portion of its contents)" which makes
no sense for an empty directory. We drop that wording.
+!corrigendum A.16(59/2)
+
+@drepl
+@xindent<Deletes an existing empty directory with name Directory. The exception
+Name_Error is propagated if the string given as Directory does not
+identify an existing directory. The exception Use_Error is propagated
+if the external environment does not support the deletion of the directory
+(or some portion of its contents) with the given name (in the absence of
+Name_Error).>
+@dby
+@xindent<Deletes an existing empty directory with name Directory. The
+exception Name_Error is propagated if the string given as
+Directory does not identify an existing directory. The exception
+Use_Error is propagated if the directory is not empty or the external
+environment does not support the deletion of the directory with the
+given name (in the absence of Name_Error).>
+
+!corrigendum A.16(67/2)
+
+@drepl
+@xindent<Renames an existing external file (including directories) with name Old_Name
+to New_Name. The exception Name_Error is propagated if the string given as
+Old_Name does not identify an existing external file. The exception Use_Error
+is propagated if the external environment does not support the renaming of
+the file with the given name (in the absence of Name_Error). In particular,
+Use_Error is propagated if a file or directory already exists with name
+New_Name.>
+@dby
+@xindent<Renames an existing external file (including directories) with name
+Old_Name to New_Name. The exception Name_Error is propagated if the
+string given as Old_Name does not identify an existing external file
+or if the string given as New_Name does not allow the identification
+of an external file. The exception Use_Error is propagated if the
+external environment does not support the renaming of the file with
+the given name (in the absence of Name_Error). In particular, Use_Error
+is propagated if a file or directory already exists with name New_Name.>
+
+!corrigendum A.16(125/2)
+
+@drepl
+Start_Search and Search should raise Use_Error if Pattern
+is malformed, but not if it could represent a file in the directory but
+does not actually do so.
+@dby
+Start_Search and Search should raise Name_Error if Pattern
+is malformed, but not if it could represent a file in the directory but
+does not actually do so.
+
+
!ACATS Test
+No need to change ACATS test for these changes.
+
+!ASIS
+
+There is no impact on ASIS by these changes.
!appendix
!topic Errors in Ada.Directories specification
Questions? Ask the ACAA Technical Agent