View Issue Details

IDProjectCategoryView StatusLast Update
00010211003.1(2013)/Issue7+TC1System Interfacespublic2024-06-11 08:58
Reporterch3root Assigned To 
PrioritynormalSeverityCommentTypeError
Status ClosedResolutionAccepted As Marked 
NameAlexander Cherepanov
Organization
User Reference
Sectionfwprintf
Page Number987, 988
Line Number33355, 33360, 33368-33369
Interp StatusApproved
Final Accepted Text0001021:0003484
Summary0001021: fwprintf EOVERFLOW
DescriptionThe description[1] of fwprintf family of functions (please note "w" in the name) mentions EOVERFLOW as applicable to swprintf only. The same problem was reported and fixed for fprintf family (without "w" in the name) in the issue #316[2]. Similar fixes should be applied to fwprintf.

[1] http://pubs.opengroup.org/onlinepubs/9699919799/functions/fwprintf.html
[2] http://austingroupbugs.net/view.php?id=316

P.S. http://austingroupbugs.net/view.php?id=761 is also applicable to fwprintf.

P.P.S. The "Return value" part of the description reads: "or a negative value if an output error was encountered". However errors are not strictly limited to output. E.g. C11 reads: "or a negative value
if an output or encoding error occurred" (please note "or encoding" part). This is not very important given that EILSEQ is mentioned in the "Error" part of the description but if someone thinks this warrants a separate bug report please let me know or just file. fprintf is affected too.
Desired ActionFix the fwprintf description similar to http://austingroupbugs.net/view.php?id=316 .
Tagstc3-2008

Activities

geoffclare

2016-11-10 16:34

manager   bugnote:0003484

Interpretation response
------------------------

The standard states the requirements for the error handling for the
wprintf family of functions, and conforming implementations must conform
to this. However, concerns have been raised about this which are being
referred to the sponsor.

Rationale:
-------------
None.

Notes to the Editor (not part of this interpretation):
-------------------------------------------------------

On (2016 edition) page 915 line 31020 section fprintf() change:
If an output error was encountered
to:
If an error was encountered

On (2016 edition) page 998 line 33977 section fwprintf() change:
if an output error was encountered
to:
if an error was encountered

On (2016 edition) page 998 line 33982 add:
[EOVERFLOW]
[CX] The value to be returned is greater than {INT_MAX}.[/CX]

On (2016 edition) page 999 line 33988 change:
The value of n is greater than {INT_MAX} or the number of bytes needed to hold the output excluding the terminating null is greater than {INT_MAX}.
to:
The value of n is greater than {INT_MAX}.

ajosey

2016-12-15 18:08

manager   bugnote:0003517

Interpretation proposed: 15 Dec 2016

ajosey

2017-01-18 15:23

manager   bugnote:0003547

Interpretation Approved: 18 Jan 2017

Issue History

Date Modified Username Field Change
2016-01-10 16:53 ch3root New Issue
2016-01-10 16:53 ch3root Name => Alexander Cherepanov
2016-01-10 16:53 ch3root Section => fwprintf
2016-01-10 16:53 ch3root Page Number => unknown
2016-01-10 16:53 ch3root Line Number => unknown
2016-11-10 16:34 geoffclare Note Added: 0003484
2016-11-10 16:35 geoffclare Interp Status => Pending
2016-11-10 16:35 geoffclare Final Accepted Text => 0001021:0003484
2016-11-10 16:35 geoffclare Status New => Interpretation Required
2016-11-10 16:35 geoffclare Resolution Open => Accepted As Marked
2016-11-10 16:35 geoffclare Tag Attached: tc3-2008
2016-11-10 18:09 Don Cragun Page Number unknown => 987, 999
2016-11-10 18:09 Don Cragun Line Number unknown => 33355, 33360, 33988-33989
2016-11-10 18:12 Don Cragun Page Number 987, 999 => 987, 988
2016-11-10 18:12 Don Cragun Line Number 33355, 33360, 33988-33989 => 33355, 33360, 33368-33369
2016-12-15 18:08 ajosey Interp Status Pending => Proposed
2016-12-15 18:08 ajosey Note Added: 0003517
2017-01-18 15:23 ajosey Interp Status Proposed => Approved
2017-01-18 15:23 ajosey Note Added: 0003547
2019-10-21 14:09 geoffclare Status Interpretation Required => Applied
2024-06-11 08:58 agadmin Status Applied => Closed