Austin Group Defect Tracker

Aardvark Mark IV


Viewing Issue Simple Details Jump to Notes ] Issue History ] Print ]
ID Category Severity Type Date Submitted Last Update
0001241 [1003.1(2016/18)/Issue7+TC2] Base Definitions and Headers Objection Clarification Requested 2019-03-18 12:02 2019-11-14 14:41
Reporter geoffclare View Status public  
Assigned To
Priority normal Resolution Accepted  
Status Applied  
Name Geoff Clare
Organization The Open Group
User Reference
Section 7.3.3 LC_MONETARY
Page Number 155,157
Line Number 4849,4935
Interp Status ---
Final Accepted Text
Summary 0001241: Empty string values for LC_MONETARY, POSIX locale LC_MONETARY values
Description During work on bug 0001199 a couple of problems with the XBD LC_MONETARY
text were noted, and these are being submitted separately since they are
suitable for a TC3 whereas the resolution of bug 1199 is expected to be
targeted at Issue 8.

The first problem is that lines 4848-4850 can be misread as implying that
string values set to the empty string always mean that the value is not
available in the locale. I think the intention here is to say that if
you want to indicate that a value is not available, then you can set it
to an empty string (as an alternative to omitting the keyword). The reason
this works is because localeconv() has no way to distinguish the two cases,
as stated on lines 4845-6:
The localeconv() function returns {CHAR_MAX} for unspecified integer items and the empty string ("") for unspecified or size zero string items.

The LC_NUMERIC category also has this problem.

The second problem is that line 4935 states "All values are unspecified
in the POSIX locale". This can be interpreted as relating to
unspecified behaviour (i.e allowing implementations to set them
however they like), but the intended meaning is that all values are
unavailable, as shown in the table at the top of page 158 where all of
the column entries under "POSIX Locale Value" are "N/A". The use of
"unspecified" here corresponds to its use in the statement about
localeconv() quoted above, but the latter cannot be misinterpreted
because it is used differently. It would be better if these uses of
"unspecified" were changed to "unavailable".
Desired Action On page 155 line 4845,4846 section 7.3.3, change "unspecified" to "unavailable".

On page 155 line 4848 section 7.3.3, change:
Keywords that are not provided, string values set to the empty string (""), or integer keywords set to -1, are used to indicate that the value is not available in the locale.
to:
Keywords that are not provided, or integer keywords set to -1, can be used to indicate that the value is not available in the locale. String values set to the empty string ("") can be used to indicate that the value is available and is an empty string, or that the value is not available.

On page 157 line 4935 section 7.3.3.1, change:
All values are unspecified in the POSIX locale.
to:
All values shall be unavailable in the POSIX locale.

On page 158 line 4994,4995 section 7.3.4, change "unspecified" to "unavailable".

On page 158 line 4997 section 7.3.4, change:
Keywords that are not provided, string values set to the empty string (""), or integer keywords set to -1, shall be used to indicate that the value is not available in the locale.
to:
Keywords that are not provided, or integer keywords set to -1, can be used to indicate that the value is not available in the locale. String values set to the empty string ("") can be used to indicate that the value is available and is an empty string, or that the value is not available.
Tags tc3-2008
Attached Files

- Relationships
related to 0001199Applied strfmon, if standards compliant, produces highly misleading results 

-  Notes
(0004336)
bhaible (reporter)
2019-03-18 20:50

Makes sense to me.

- Issue History
Date Modified Username Field Change
2019-03-18 12:02 geoffclare New Issue
2019-03-18 12:02 geoffclare Name => Geoff Clare
2019-03-18 12:02 geoffclare Organization => The Open Group
2019-03-18 12:02 geoffclare Section => 7.3.3 LC_MONETARY
2019-03-18 12:02 geoffclare Page Number => 155,157
2019-03-18 12:02 geoffclare Line Number => 4849,4935
2019-03-18 12:02 geoffclare Interp Status => ---
2019-03-18 12:02 geoffclare Relationship added related to 0001199
2019-03-18 20:50 bhaible Note Added: 0004336
2019-06-24 15:50 nick Status New => Resolved
2019-06-24 15:50 nick Resolution Open => Accepted
2019-06-24 15:50 nick Tag Attached: tc3-2008
2019-11-14 14:41 geoffclare Status Resolved => Applied


Mantis 1.1.6[^]
Copyright © 2000 - 2008 Mantis Group
Powered by Mantis Bugtracker