.
Last update: 1997-05-20
14519-92 #7 Class: Defect situation The standard requires different behavior to the C language binding for conforming implementations. This is being referred to the sponsor for clarifying wording in the next amendment. _____________________________________________________________________________ Topic: Can IS_A_TERMINAL detect/report errors? Relevant Sections: ISO/IEC 14519:1994: section 6.1.4, ISO/IEC 9945-1:1990: section 4.7.2 Defect Report: ----------------------- ISO/IEC 9945-1 does not specify that isatty() can detect or report any errors. ISO/IEC 14519 specifies errors that are required to be detected/reported by IS_A_TERMINAL. WG15 response for 9945-1:1990 (9945-1:1990): -------------------------------------------------- The standard is currently incorrect, in that it should not require Is_A_Terminal to detect any errors. However, Is_A_Terminal is still required to return True if it can 'prove' that the parameter File is associated with a terminal. Conforming applications should not assume that a value of False returned by Is_A_Terminal indicates that no errors as specified in POSIX.5 6.1.4 were detected. Rationale for Interpretation: ----------------------------- POSIX.1 clearly does not require error checking, but it strongly implies that a 'success' value (1) can be trusted. A failure value means either that the file descriptor is not a terminal, or that some other error occurred. Therefore, conforming POSIX.5 applications can depend on the value True indicates a terminal device, but cannot apply any additional meaning to the value False returned by Is_A_Terminal. Editorial note for future revision of standard (not part of the interpretation) ------------------------------------------------------------------------------- This wording will be corrected in the 14519 revision. _____________________________________________________________________________