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

The Open Brand -- Problem Reporting and Interpretations System


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


Report 1231 Actions


    Problem Report Number 1231
    Submitter's Classification Test Suite problem
    State Resolved
    Resolution Rejected (REJ)
    Problem Resolution ID REJ.X.0433
    Raised 1970-01-01 08:00
    Updated 2003-03-13 08:00
    Published null
    Product Standard Internationalised System Calls and Libraries Extended (UNIX 95)
    Certification Program The Open Brand certification program
    Test Suite VSU version 4.0.2
    Test Identification Headers/sys/time.h 29 31 33
    Problem Summary PG4U.00032 FD_SET, FD_CLR and FD_ISSET macros should be allowed to evaluate their macros more than once.
    Problem Text
    Tests 29,31,33 for sys/time.h fail because they claim that the macros
    FD_SET(), FD_CLR(), and FD_ISSET() should only evaluate their arguments
    once. This requirement is not in CASPEC, and the tests are testing an
    internal implementation detail, which they should not be doing.
    Test Output
    TEST CASE: sys/time.h

    TEST PURPOSE #29
    If the macro void FD_SET(int fd, fd_set *fdset) is
    defined in sys/time.h it shall evaluate each of its
    arguments exactly once, fully protected by parentheses
    where necessary, and return void.
    TEST: Argument evaluation
    ERROR: Argument 1 of FD_SET evaluated 2 times
    29 FAIL

    TEST PURPOSE #31
    If the macro void FD_CLR(int fd, fd_set *fdset) is
    defined in sys/time.h it shall evaluate each of its
    arguments exactly once, fully protected by parentheses
    where necessary, and return void.
    TEST: Argument evaluation
    ERROR: Argument 1 of FD_CLR evaluated 2 times
    31 FAIL

    TEST PURPOSE #33
    If the macro int FD_ISSET(int fd, fd_set *fdset) is
    defined in sys/time.h it shall evaluate each of its
    arguments exactly once, fully protected by parentheses
    where necessary, and return a value of the correct type.
    TEST: Argument evaluation
    ERROR: Argument 1 of FD_ISSET evaluated 2 times
    TEST: Return protection
    TEST: Return type
    33 FAIL

    Review Information

    Review Type TSMA Review
    Start Date null
    Completed null
    Status Complete
    Review Recommendation No Resolution Given
    Review Response
    We recommend this request be refused.

    1170 base resolution #33 has already addressed this issue. It
    states

    REQUEST:

    Traditional implementations of the FD_SET, FD_CLR, FD_ISSET
    macros evaluate their first argument more than once.

    In the absence of further information from the specification the
    test suite assumes that the macros should only evaluate their
    arguments once and flag existing inplementations as being
    non-compliant.

    We belive the specification should be changed to allow existing
    practice.

    X/OPEN RESOLUTION:

    If macro versions of these functions are provided they must
    evaluate their arguments only once. This is an ISO C
    requirement.

    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