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

The Open Brand -- Problem Reporting and Interpretations System


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


Report 0812 Actions


    Problem Report Number 0812
    Submitter's Classification Test Suite problem
    State Resolved
    Resolution Test Suite Deficiency (TSD)
    Problem Resolution ID TSD.X.0327
    Raised 1970-01-01 08:00
    Updated 2003-03-13 08:00
    Published 1996-07-19 08:00
    Product Standard Commands and Utilities V2 (UNIX 95)
    Certification Program The Open Brand certification program
    Test Suite VSC version 4.1.5
    Test Identification POSIX.cmd/printf 60
    Problem Summary TSD4C.00184 This test may fail implementations that evaluate arithmetic constants such as 127-38.
    Problem Text
    This test may fail implementations that evaluate arithmetic constants such
    as 127-38.

    The test expects stdout to be "123 78" but our shell yields "0 78".

    The test wrongly assumes that stdout will be "123 78". POSIX.2 says
    (p. 396, lines 8251-2) that if printf cannot completely
    convert an operand into an internal value, printf "shall continue
    processing any remaining operands and shall write the value accumulated
    at the time the error was detected to standard output".

    We can see though why the original test developers assume what they do.
    The X/Open spec is a reprint of the POSIX.2 spec for printf with no extensions
    but X/Open have taken the POSIX.2 rationale and printed this
    as application usage. Note application usage is non-normative
    just as POSIX rationale is.

    The POSIX rationale on page 942 at the paragraph starting
    on line 7846 says "If written in C, the printf utility could use
    the strtol() function to parse ..." and then on page 943 lists
    a number of examples including:

    "Argument Stdout Diagnostic Message
    5a 5 printf ...."

    On lines 7890-7892 says "Note that the value shown on stdout
    is what would be expected as the result value from ... strtol()"

    Our implementation of printf differs from the example in the POSIX
    rationale and/or X/Open application usage.

    This issue has the associated POSIX ruling pasc-1003.2-142 that allows this
    behavior.
    Test Output
    400|247 60 1 18:42:17|IC Start
    200|247 1 18:42:17|TP Start
    520|247 1 22486 1 1|Assertion #60 (A):
    520|247 1 22486 1 11|Unexpected output
    220|247 1 1 18:42:17|FAIL
    410|247 60 1 18:42:17|IC End

    Review Information

    Review Type TSMA Review
    Start Date null
    Completed null
    Status Complete
    Review Recommendation No Resolution Given
    Review Response
    We agree this is a test suite deficiency in the test
    suite version(s) listed.

    Review Type SA Review
    Start Date null
    Completed null
    Status Complete
    Review Resolution Test Suite Deficiency (TSD)
    Review Conclusion
    This is an agreed Test Suite Deficiency.

    Problem Reporting System Options:

     

    Back   


Contact the Certification Authority