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

The Open Brand -- Problem Reporting and Interpretations System


Problem Report 0337 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 0337.


Report 0337 Actions


    Problem Report Number 0337
    Submitter's Classification Test Suite problem
    State Resolved
    Resolution Permanent Interpretation (PIN)
    Problem Resolution ID PIN.X.0053
    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 ANSI.os/charhandle/isalnum_X 1
    Specification System Interfaces and Headers Issue 4
    Location in Spec See Problem Text
    Problem Summary PIN4.053 >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.

    and earlier on the same page:

    The value LC_ALL for category names the program's entire locale; other
    values for category name only part of the program's locale.

    The standard does not specify the return value for cases where
    setlocale(LC_ALL, LOCALE) successfully sets some categories but not
    others. In these cases, we consider the operation unsuccessful, return
    a null pointer, and leave the locale unchanged.

    In the instances above, setlocale(LC_ALL,"VSX4L0") failed, where VSX4L0 is
    a pseudolanguage having only an LC_CTYPE category. The test suite expects
    the new LC_TYPE to be selected and the other categories unspecified. This
    behavior is undefined and the test suite in is error.

    Test Output Test Results:

    /tset/ANSI.os/charhandle/Misalnum_X/T.isalnum_X 1 Unresolved

    Test Description:
    In a locale where character type information is not defined
    isalnum()
    classifies characters as they would be in the 'C' locale.

    Test Information:
    Pseudo Language VSX4L0 is not available
    Check instalation of pseudo language

    The following tests also fail in the same manner:

    ANSI.os/charhandle/Misalpha_X/T.isalpha_X 1 Unresolved
    ANSI.os/charhandle/Miscntrl_X/T.iscntrl_X 1 Unresolved
    ANSI.os/charhandle/Misgraph_X/T.isgraph_X 1 Unresolved
    ANSI.os/charhandle/Mislower_X/T.islower_X 1 Unresolved
    ANSI.os/charhandle/Misprint_X/T.isprint_X 1 Unresolved
    ANSI.os/charhandle/Mispunct_X/T.ispunct_X 1 Unresolved
    ANSI.os/charhandle/Misspace_X/T.isspace_X 1 Unresolved
    ANSI.os/charhandle/Misupper_X/T.isupper_X 1 Unresolved
    ANSI.os/charhandle/isalnum_X/T.isalnum_X 1 Unresolved
    ANSI.os/charhandle/isalpha_X/T.isalpha_X 1 Unresolved
    ANSI.os/charhandle/iscntrl_X/T.iscntrl_X 1 Unresolved
    ANSI.os/charhandle/isgraph_X/T.isgraph_X 1 Unresolved
    ANSI.os/charhandle/islower_X/T.islower_X 1 Unresolved
    ANSI.os/charhandle/isprint_X/T.isprint_X 1 Unresolved
    ANSI.os/charhandle/ispunct_X/T.ispunct_X 1 Unresolved
    ANSI.os/charhandle/isspace_X/T.isspace_X 1 Unresolved
    ANSI.os/charhandle/isupper_X/T.isupper_X 1 Unresolved
    ANSI.os/charhandle/tolower_X/T.tolower_X 1 Unresolved
    ANSI.os/charhandle/toupper_X/T.toupper_X 1 Unresolved
    ANSI.os/streamio/printf/T.fprintf 58 Unresolved
    ANSI.os/streamio/printf/T.printf 58 Unresolved
    ANSI.os/streamio/printf/T.sprintf 58 Unresolved
    ANSI.os/streamio/scanf/T.fscanf 48 Unresolved
    ANSI.os/streamio/scanf/T.scanf 48 Unresolved
    ANSI.os/streamio/scanf/T.sscanf 48 Unresolved
    ANSI.os/streamio/vprintf/T.vfprintf 58 Unresolved
    ANSI.os/streamio/vprintf/T.vprintf 58 Unresolved
    ANSI.os/streamio/vprintf/T.vsprintf 58 Unresolved
    XOPEN.os/locale/nl_langinf/T.nl_langinf 3 Unresolved
    XPG4.os/locale/localeconv/T.localeconv 2 Unresolved
    XPG4.os/locale/localeconv/T.localeconv 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