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

The Open Brand -- Problem Reporting and Interpretations System


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


Report 0317 Actions


    Problem Report Number 0317
    Submitter's Classification Specification problem
    State Resolved
    Resolution Permanent Interpretation (PIN)
    Problem Resolution ID PIN.X.0033
    Raised 1994-06-13 08:00
    Updated 2003-03-13 08:00
    Published 1994-06-14 08:00
    Product Standard Internationalised System Calls and Libraries (XPG4)
    Certification Program The Open Brand certification program
    Test Suite VSX4 version 4.3.4
    Test Identification XPG4.os/wstring/wcsxfrm 2
    Specification System Interfaces and Headers Issue 4
    Location in Spec See Problem Text
    Problem Summary PIN4.033 The system supports the wcsxfrm() function in the C locale only and returns ENOSYS for other locales. The constant _XOPEN_ENH_I18N is set to (-1L) in <unistd.h>. This is a documented grey area, suppor...
    Problem Text
    The system supports the wcsxfrm() function in the C locale only
    and returns ENOSYS for other locales.
    The constant _XOPEN_ENH_I18N is set to (-1L) in <unistd.h>.

    This is a documented grey area, supported by the X/Open XoTGbase interpretation
    request reference VWG/067/033094

    Test Output
    ************************************************************************
    /tset/XPG4.os/wstring/wcsxfrm/T.wcsxfrm 2 Failed

    Test Description:
    If wcsxfrm() is supported:
    A call to wcsxfrm() transforms the wide string pointed to by s2
    into the wide character array pointed to by s1 taking account of
    the language dependent collating information defined for the
    current locale value for the LC_COLLATE category.
    The resulting wide string s1 is such that the wide string will be
    correctly ordered against another transformed wide string for the
    specified language collating sequence using the function wcscmp().
    The result of this wcscmp() corresponds to the result of a
    wcscoll() on the original strings.
    Otherwise:
    A call to wcsxfrm() returns (size_t)-1 and sets errno to ENOSYS.

    Test Strategy:
    FOR locale SET to VSX4L1 and VSX4L2
    VERIFY collation of accented characters in correct order
    VERIFY that strings with different primary order collate in primary
    order sequence even though secondary ordering differs
    VERIFY collation of accented characters against non-accented
    characters
    VERIFY collation of dictionary orderings (upper/lower case)
    VERIFY that don't care characters are ignored.
    SET locale to other language
    VERIFY collating sequence is for current language

    Test Information:
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    wcsxfrm() gave ENOSYS but a previous call did not
    ************************************************************************

    Review Information

    Review Type TSMA Review
    Start Date null
    Completed null
    Status Complete
    Review Recommendation No Resolution Given
    Review Response
    This is an agreed grey area and a permanent interpretation is recommended.

    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