Version 1.1.1.1 of ais/ai-00178.txt
!standard 09.05.01 (18) 97-03-19 AI95-00178/00
!class binding interpretation 97-03-19
!status received 97-03-19
!priority Low
!difficulty Medium
!subject Which I/O operations are potentially blocking?
!summary 97-03-19
!question 97-03-19
!recommendation 97-03-19
!wording 97-03-19
!discussion 97-03-19
!appendix
!section 9.5.1(18)
!subject Which I/O operations are potentially blocking?
!reference RM95-9.5.1(18)
!from Norman Cohen
!reference 97-15708.a Norman H. Cohen 97-1-22>>
!discussion
9.5.1(18) states that "the subprograms of the language-defined input-output
packages that manipulate files (implicitly or explicitly) are potentially
blocking." It is not clear what this means.
1. Is "that manipulate files" meant to modify "subprograms" (in which case
the versions of Put that write to strings are excluded) or "packages" (in
which case these versions of Put might be included, but see #2).
2. Is a subprogram provided by an instance of a generic package nested in
Ada.Text_IO considered a subprogram "of" Ada.Text_IO?
3. Which subprograms are considered to "manipulate files"? Is any
subprogram with a File_Type parameter, plus any counterpart that operates
in the same way on a default file, considered to "manuipulate files", or is
manipulation of files restricted to subprograms that perform what A.8.2
calls "File Management"? Indeed, are the file-management functions that
query properties of an internal file (Mode, Name, Form, Is_Open) considered
to manipulate files?
****************************************************************
Questions? Ask the ACAA Technical Agent