HomeAbout Us A-Z IndexSearch * Contact Us Register LoginPress Shop

The Open Brand -- Problem Reporting and Interpretations System


Problem Report 0336 Details

Help Show help | Quick Search | Submit a Test Suite Support Request | Click here to view your privileges

This page provides all information on Problem Report 0336.


Report 0336 Actions


    Problem Report Number 0336
    Submitter's Classification Test Suite problem
    State Resolved
    Resolution Permanent Interpretation (PIN)
    Problem Resolution ID PIN.X.0052
    Raised 1995-09-29 08:00
    Updated 2003-03-13 08:00
    Published 1995-11-02 08:00
    Product Standard Internationalised System Calls and Libraries (XPG4)
    Certification Program The Open Brand certification program
    Test Suite VSX4 version 4.3.5
    Test Identification /XPG4.os/wstring/wcscoll/T.wcscoll,et.al.
    Specification System Interfaces and Headers Issue 4
    Location in Spec See Problem Text
    Problem Summary PIN4.052 >From XSH4 version 2, p. 523: Upon successful completion, setlocale() returns the string associated with the specified category for the new locale. Otherwise, setlocale() returns a null pointer and th...
    Problem Text

    >From XSH4 version 2, p. 523:

    Upon successful completion, setlocale() returns the string associated
    with the specified category for the new locale. Otherwise, setlocale()
    returns a null pointer and the program's locale is not changed.

    The standard does not specify the return value if an unspecifed category
    in an otherwise valid locale is selected. In this case, we consider the
    operation unsuccessful, return a null pointer, and leave the locale
    unchanged.

    In the instances above, setlocale(LC_<cat>,"VSX4L0") failed, where VSX4L0 is
    a pseudolanguage having only an LC_CTYPE category and <cat> is a category
    unspecified in VSX4L0. The test suite expects a successful selection of an
    undefined category. This behavior is undefined and the test suite is in
    error.

    Test Output
    Test Results:

    /tset/XPG4.os/wstring/wcscoll/T.wcscoll 1 Unresolved

    Test Description:
    If wcscoll() is supported:
    When
    a. there has been no previously successful call to setlocale();
    b. collating information is not available for the currently
    specified language; then a call to wcscoll() is exactly equivalent
    to a call to wcscmp().
    Otherwise:
    A call to wcscoll() sets errno to ENOSYS.

    Test Information:
    setlocale(3, "VSX4L0") failed
    Check installation of locale

    The following tests also fail in the same manner:

    XPG4.os/wstring/wcsxfrm/T.wcsxfrm 1 Unresolved
    ANSI.os/genuts/atof/T.atof 2 Unresolved
    ANSI.os/genuts/strtod_X/T.strtod_X 3 Unresolved
    ANSI.os/string/strcoll_X/T.strcoll_X 2 Unresolved
    ANSI.os/string/strxfrm_X/T.strxfrm_X 2 Unresolved
    XPG4.os/wgenuts/wcstod/T.wcstod 3 Unresolved

    Review Information

    Review Type TSMA Review
    Start Date null
    Completed null
    Status Complete
    Review Recommendation No Resolution Given
    Review Response
    The problem that is described in this request relates to a mixture of a grey
    area in the XSH specification and the manner in which the test suite is set
    up to for the pseudo languages.

    The XSH specification does not define the manner in which the setlocale() call
    will deal with a locale category that is not specified for a particular locale.
    It seems that there are currently two styles of implementation provided by
    XPG tested system. It is necessary for systems to deal with this situation
    because the XBD and XCU clearly state that the localedef command needs to
    cater for the valid case that a non-empty subset of the categories are given
    in the input file. There is also an issue with the nl_lamginfo() interface
    which specifies that, in the case that an unsupported category is specified
    on a call to setlocale(), the information relating to the POSIX locale should
    be provided. However, this does not place a requirement on setlocale() to
    allow setting of an "empty" locale category.

    If the above is accepted, then it would be best to set up the VSX4L0 locale
    such that all of the categories are present and, except for those categories
    already defined in the user instructions, with the values omitted if this
    is possible or otherwise set to the POSIX locale equivalents. This should
    cause all the tests to pass, though the test nl_langinfo 3 will effectively
    produce a "false pass" because of the way in which the locale is set.

    I recommend that a Permanent Interpretation is granted and that the K/RT
    working group is asked to confirm that the behaviour of setlocale() with
    respect to a locale category that is "empty" for a given locale is unspecified.
    The user should then be instructed to set the VSX4L0 locale information as
    suggested in the previous paragraph.

    Review Type Expert Group Review
    Start Date null
    Completed null
    Status Complete
    Review Resolution No Resolution Given
    Review Conclusion
    There was no disagreement. A permanent interpretation should be granted
    on the grounds that the behaviour is undefined.

    Review Type SA Review
    Start Date null
    Completed null
    Status Complete
    Review Resolution Permanent Interpretation (PIN)
    Review Conclusion
    A Permanent Interpretation is granted.

    Problem Reporting System Options:

     

    Back   


Contact the Certification Authority