Defect Report #066

Submission Date: 03 Dec 93
Submittor: WG14
Source: Clive Feather
Question
Item 3 - locales
In a conforming implementation, can the value of any of the following expressions (subclause 7.4.2.1) be a value other than 0 or 1? Can the value of the first expression be 0?
strlen(localeconv()->decimal_point)
strlen(localeconv()->thousands_sep)
strlen(localeconv()->mon_decimal_point)
strlen(localeconv()->mon_thousands_sep)
If the value can be greater than 1, can the string contain more than one multibyte character? If so, can the string contain shift sequences? If so, can the string end other than in the initial shift state?
Response
Of the four strlen calls, the first must return 1, the second must return 0 or 1, and the other two must return 0 or more, in a conforming implementation. There is a specific requirement for decimal_point in the second paragraph of subclause 7.4.2.1 Description, and in the individual descriptions ``character'' is intended to imply 0 or 1 while ``string'' is meant to imply 0 or more.
Previous Defect Report < - > Next Defect Report