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

The Open Brand -- Problem Reporting and Interpretations System


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


Report 0718 Actions


    Problem Report Number 0718
    Submitter's Classification Specification problem
    State Resolved
    Resolution Permanent Interpretation (PIN)
    Problem Resolution ID PIN.X.0111
    Raised 1970-01-01 08:00
    Updated 2003-03-13 08:00
    Published 1995-06-16 08:00
    Product Standard Commands and Utilities V2 (UNIX 95)
    Certification Program The Open Brand certification program
    Test Suite VSC version 4.1.3
    Test Identification vsc/tset/m4 26, 27
    Specification Commands and Utilities Issue 4 Version 2
    Location in Spec See Problem Text
    Problem Summary PIN4C.00003 Spec defined behavior changed from XPG3 to XPG4.
    Problem Text
    The X/Open Specification, Commands and Utilities Issue 4, Version 2 states:
    "If the first argument to the ifdef macro is defined and it is not defined to
    be zero, the defining text is the second argument. Otherwise, the defining
    text is the third argument, if specified, or the null string, if not."

    Assertion 26 states:
    "When the first argument of built-in 'ifdef' macro is not defined or is zero,
    then the macro value shall be the third argument."

    Assertion 27 states:
    "When the first argument of built-in 'ifdef' macro is not defined or is zero
    and there is no third argument, then the macro value shall be null."

    The assertions are being tested correctly, however it was not intended that
    m4 be changed from historic practise. XCU4 tried to expand the SVID-like
    description in XCU3 into a POSIX.2-like description in XCU4, and the new
    description differs from historic System V practise.

    The X/Open Specification should state:

    "If the first argument to the ifdef macro is defined,
    the defining text is the second argument. Otherwise, the defining
    text is the third argument, if specified, or the null string, if not."

    Assertion 26 should state:
    "When the first argument of built-in 'ifdef' macro is not defined,
    then the macro value shall be the third argument."

    Assertion 27 should state:
    "When the first argument of built-in 'ifdef' macro is not defined
    and there is no third argument, then the macro value shall be null."
    Test Output
    Assertion #26 (C):
    -37- Output differs from expected output.
    Assertion Result: FAIL

    Assertion #27 (C):
    -38- Output differs from expected output.
    Assertion Result: FAIL

    Review Information

    Review Type TSMA Review
    Start Date null
    Completed null
    Status Complete
    Review Recommendation No Resolution Given
    Review Response
    On the manual page for m4, the original (XPG3) text read:

    "If the first argument is defined, the value is the second argument,
    otherwise it is the third. If there is no third argument, the value is null."

    The XPG4 text reads:

    "If the first argument to the ifdef macro is defined and it is not defined
    to be zero, the defining text is the second argument. Otherwise, the
    defining text is the third argument, if specified, or the null string, if not."

    The changes in the definitions will clearly lead to a difference in
    behaviour. The question raised in the waiver request centres on the issue of
    whether or not this change in behaviour was intended. If this was intended,
    then the test suite is correct and the waiver should be denied. If not, then
    both the specification and the test suite need to be modified, and the
    waiver should be granted. The question of intent should be passed to the
    Base Working Group to be resolved.

    On the assumption that the change of specified behaviour was unintentional,
    it is recommended that the default action should be to grant a
    Permanent Interpretation.

    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