Anonymous | Login | 2025-01-23 01:26 UTC |
Main | My View | View Issues | Change Log | Docs |
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 | 2024-06-11 09:08 | ||
Reporter | geoffclare | View Status | public | ||||
Assigned To | |||||||
Priority | normal | Resolution | Accepted | ||||
Status | Closed | ||||||
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 | ||||||
|
Mantis 1.1.6[^] Copyright © 2000 - 2008 Mantis Group |