The following issue has been SUBMITTED. ====================================================================== https://austingroupbugs.net/view.php?id=1609 ====================================================================== Reported By: geoffclare Assigned To: ====================================================================== Project: 1003.1(2016/18)/Issue7+TC2 Issue ID: 1609 Category: Shell and Utilities Type: Omission Severity: Objection Priority: normal Status: New Name: Geoff Clare Organization: The Open Group User Reference: Section: localedef Page Number: 2911 Line Number: 96190 Interp Status: --- Final Accepted Text: ====================================================================== Date Submitted: 2022-10-18 11:24 UTC Last Modified: 2022-10-18 11:24 UTC ====================================================================== Summary: consequences of giving localedef a bad charmap Description: The EXTENDED DESCRIPTION on the localedef page says:<blockquote>When conflicts occur between the <i>charmap</i> encoding values specified for symbolic names of characters of the portable character set and the implementation-defined assignment of character encoding values, the result is unspecified.</blockquote> There are two omissions here:
1. It should make clear that "conflicts" include omissions. XBD 6.1 requires each supported locale to include the portable character set. The localedef page should say what happens if a user or application tries to create one that omits one or more characters from the portable character set. 2. If the result is unspecified, this means an allowed result is that localedef creates the locale. The description should address what happens if such a locale is used (or attempted to be used). Desired Action: Change the quoted paragraph to:<blockquote>When conflicts (including omissions) occur between the <i>charmap</i> encoding values specified for symbolic names of characters of the portable character set and the implementation-defined assignment of character encoding values, the result is unspecified. If the result is that <i>localedef</i> creates the specified locale, any attempted use of that locale by an application or utility results in undefined behavior.</blockquote> After page 2912 line 96227 section localedef, add a paragraph to RATIONALE:<blockquote>When conflicts (including omissions) occur between the <i>charmap</i> encoding values specified for symbolic names of characters of the portable character set and the implementation-defined assignment of character encoding values, it is recommended that <i>localedef</i> treats this as an error in order to prevent the undefined behavior that results if <i>localedef</i> creates the specified locale and an application or utility attempts to use it.</blockquote> ====================================================================== Issue History Date Modified Username Field Change ====================================================================== 2022-10-18 11:24 geoffclare New Issue 2022-10-18 11:24 geoffclare Name => Geoff Clare 2022-10-18 11:24 geoffclare Organization => The Open Group 2022-10-18 11:24 geoffclare Section => localedef 2022-10-18 11:24 geoffclare Page Number => 2911 2022-10-18 11:24 geoffclare Line Number => 96190 2022-10-18 11:24 geoffclare Interp Status => --- ======================================================================