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

The Open Brand -- Problem Reporting and Interpretations System


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


Report 1927 Actions


    Problem Report Number 1927
    Submitter's Classification Test Suite problem
    State Resolved
    Resolution Rejected (REJ)
    Problem Resolution ID REJ.X.0563
    Raised 2000-02-03 08:00
    Updated 2003-03-13 08:00
    Published null
    Product Standard Internationalised System Calls and Libraries Extended V2 (UNIX 98)
    Certification Program The Open Brand certification program
    Test Suite VSX4 version 4.4.4
    Test Identification ANSI.hdr/misc/stdlib 48
    Problem Summary PG5R.006 /tset/ANSI.hdr/misc/stdlib/T.stdlib 48 Failed According to the X/Open specification on System Interface and Headers Issue 5 "The following identifiers are reserved regardless of the inclusion of heade...
    Problem Text
    /tset/ANSI.hdr/misc/stdlib/T.stdlib 48 Failed

    According to the X/Open specification on System Interface
    and Headers Issue 5

    "The following identifiers are reserved regardless of the
    inclusion of headers.

    2. All identifiers that begin with an underscore are always reserved
    for use as identifiers with file scope in both the ordinary
    identifier and tag name spaces."

    But in the above test the testsuite complains about a identifier
    _fds_howmany which begins with an underscore.


    Test Output
    /tset/ANSI.hdr/misc/stdlib/T.stdlib 48 Failed

    Test Description:
    For POSIX90 and FIPS modes:
    When _POSIX_SOURCE is defined and no other feature test macros are
    defined, no other symbols than those defined or reserved by
    POSIX.1-1990 are made visible.
    For POSIX96 mode:
    When _POSIX_C_SOURCE is defined with the value 199506L and no
    other feature test macros except _POSIX_SOURCE are defined, no
    other symbols than those defined or reserved by POSIX.1-1996 are
    made visible.
    For XPG4 mode:
    When _XOPEN_SOURCE is defined and no other feature test macros
    except _POSIX_SOURCE, _POSIX_C_SOURCE=1 or _POSIX_C_SOURCE=2 are
    defined, no other symbols than those defined or reserved by XPG4
    are made visible.
    For UNIX98 mode:
    When _XOPEN_SOURCE is defined with the value 500 and no other
    feature test macros except _POSIX_SOURCE or
    _POSIX_C_SOURCE<=199506L are defined, no other symbols than those
    defined or reserved by XSH5 are made visible.
    Posix Ref: Component C Language Definitions Assertion 2.7.2-05(B)

    Test Strategy:
    FOR each unreserved struct/union member made visible by the header
    DEFINE a macro which will cause an error if not protected from
    expansion
    UNDEFINE those macros which correspond to allowed member names
    INCLUDE a copy of the header file modified to identify #defines
    FOR each unreserved symbol made visible by the header
    VERIFY that the symbol name is in a list of allowed names

    Test Information:
    Feature test macros: -D_XOPEN_SOURCE=500
    Compiler or run-time messages or results:
    Illegal #defined symbol: _fds_howmany

    Review Information

    Review Type TSMA Review
    Start Date null
    Completed null
    Status Complete
    Review Recommendation No Resolution Given
    Review Response

    Review Type SA Review
    Start Date null
    Completed null
    Status Complete
    Review Resolution No Resolution Given
    Review Conclusion
    The test result is correct. The failure relates to the definition of
    _fds_howmany as a macro, not as an identifier in the ordinary identifier
    or tag name spaces.

    The only names beginning with underscore that are reserved for use as
    macros are those where the underscore is followed by an upper-case letter
    or another underscore. This derives from the following text in XSH5, which
    was omitted from the submitter's quote:

    "1. All identifiers that begin with an underscore and either an
    upper-case letter or another underscore are always reserved for any
    use by the implementation."

    Thus the names __fds_howmany and _Fds_howmany are allowed to be defined
    as macros, but _fds_howmany is not.

    It is recommended that this request is refused.

    Review Type SA Review
    Start Date null
    Completed null
    Status Complete
    Review Resolution Rejected (REJ)
    Review Conclusion
    This request is refused.

    Problem Reporting System Options:

     

    Back   


Contact the Certification Authority