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

The Open Brand -- Problem Reporting and Interpretations System


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


Report 0879 Actions


    Problem Report Number 0879
    Submitter's Classification Test Suite problem
    State Resolved
    Resolution Test Suite Deficiency (TSD)
    Problem Resolution ID TSD.X.0394
    Raised 1970-01-01 08:00
    Updated 2003-03-13 08:00
    Published 1995-11-03 08:00
    Product Standard Commands and Utilities V2 (UNIX 95)
    Certification Program The Open Brand certification program
    Test Suite VSC version 4.1.4
    Test Identification POSIX.cmd/printf 56, 57
    Problem Summary TSD4C.00117 The test may fail on implementations that issue a warning and exit with a non-zero status if an operand is not completely converted.
    Problem Text
    The test may fail on implementations that issue a warning and exit
    with a non-zero status if an operand is not completely converted.

    In assertion 57, the following code is found:

    line 4228 var1=`printf "%e" \'+3 2> /dev/null`
    line 4233 var2=`printf "%E" \'-3 2> /dev/null`

    Our implementation produces the correct output, decimal 43 or decimal
    45 (the numeric value of the "+" or "-" character). But, the extra 3
    causes the message; "not completely converted" to be produced on
    stderr and a non-zero exit status. Our implementation behavior is
    consistent with the XCU XPG4 V2 specification.

    In assertion 56, the following code is found:

    line 4040 if out=`printf "$fmt" \'$str 2> printf_err_56`


    The failing input is the following lines:
    %d +3
    %i -3

    With this input line 4040 translates to the following:

    if out=`printf "%d" \'+3 2> printf_err_56`
    if out=`printf "%i" \'-3 2> printf_err_56`


    On page 587, it states that:

    "printf "%d\n" 3 +3 -3 \'3 \"+3 "'-3"

    produces

    3 ....
    3 ....
    -3 ....
    51 ....
    43 numeric value of the character '+' in the ISO/IEC646:1991
    standard codeset
    45 numeric value of the character '-' in the ISO/IEC646:1991
    standard codeset"

    On page 586, there is an example stating that a printf with format parameter
    of %d and an argument of "5a" produces stdout of "5" (analagous to the
    output of "43" in the above example) and a stderr of:
    printf: "5a" not completely converted (analagous to the error output
    given above).

    Test Output
    ************************************************************************
    /tset/POSIX.cmd/printf/printf.ex 1 Failed


    Test Information:
    Assertion #56 (A):
    nonzero exit for format '%d' with argument '+3'
    Contents of printf_err_56:
    printf: '+3 not completely converted
    nonzero exit for format '%i' with argument '-3'
    Contents of printf_err_56:
    printf: '-3 not completely converted
    ************************************************************************


    ************************************************************************
    /tset/POSIX.cmd/printf/printf.ex 1 Failed


    Test Information:
    Assertion #57 (C): printf for %e, %E, %f, %g, and %G formats
    Testing %e for '!'
    Testing %E for '!'
    Testing %f for '!'
    Testing %g for '!'
    Testing %G for '!'
    Testing %e for '"'
    Testing %E for '"'
    Testing %f for '"'
    Testing %g for '"'
    Testing %G for '"'
    Testing %e for '#'
    Testing %E for '#'
    Testing %f for '#'
    Testing %g for '#'
    Testing %G for '#'
    Testing %e for '$'
    Testing %E for '$'
    Testing %f for '$'
    Testing %g for '$'
    Testing %G for '$'
    Testing %e for '&'
    Testing %E for '&'
    Testing %f for '&'
    Testing %g for '&'
    Testing %G for '&'
    Testing %e for '''
    Testing %E for '''
    Testing %f for '''
    Testing %g for '''
    Testing %G for '''
    Testing %e for '('
    Testing %E for '('
    Testing %f for '('
    Testing %g for '('
    Testing %G for '('
    Testing %e for ')'
    Testing %E for ')'
    Testing %f for ')'
    Testing %g for ')'
    Testing %G for ')'
    Testing %e for '*'
    Testing %E for '*'
    Testing %f for '*'
    Testing %g for '*'
    Testing %G for '*'
    Testing %e for '+'
    Testing %E for '+'
    Testing %f for '+'
    Testing %g for '+'
    Testing %G for '+'
    Testing %e for ','
    Testing %E for ','
    Testing %f for ','
    Testing %g for ','
    Testing %G for ','
    Testing %e for '-'
    Testing %E for '-'
    Testing %f for '-'
    Testing %g for '-'
    Testing %G for '-'
    Testing %e for '.'
    Testing %E for '.'
    Testing %f for '.'
    Testing %g for '.'
    Testing %G for '.'
    Testing %e for '/'
    Testing %E for '/'
    Testing %f for '/'
    Testing %g for '/'
    Testing %G for '/'
    Testing %e for '0'
    Testing %E for '0'
    Testing %f for '0'
    Testing %g for '0'
    Testing %G for '0'
    Testing %e for '1'
    Testing %E for '1'
    Testing %f for '1'
    Testing %g for '1'
    Testing %G for '1'
    Testing %e for '2'
    Testing %E for '2'
    Testing %f for '2'
    Testing %g for '2'
    Testing %G for '2'
    Testing %e for '3'
    Testing %E for '3'
    Testing %f for '3'
    Testing %g for '3'
    Testing %G for '3'
    Testing %e for '4'
    Testing %E for '4'
    Testing %f for '4'
    Testing %g for '4'
    Testing %G for '4'
    Testing %e for '5'
    Testing %E for '5'
    Testing %f for '5'
    Testing %g for '5'
    Testing %G for '5'
    Testing %e for '6'
    Testing %E for '6'
    Testing %f for '6'
    Testing %g for '6'
    Testing %G for '6'
    Testing %e for '7'
    Testing %E for '7'
    Testing %f for '7'
    Testing %g for '7'
    Testing %G for '7'
    Testing %e for '8'
    Testing %E for '8'
    Testing %f for '8'
    Testing %g for '8'
    Testing %G for '8'
    Testing %e for '9'
    Testing %E for '9'
    Testing %f for '9'
    Testing %g for '9'
    Testing %G for '9'
    Testing %e for ':'
    Testing %E for ':'
    Testing %f for ':'
    Testing %g for ':'
    Testing %G for ':'
    Testing %e for ';'
    Testing %E for ';'
    Testing %f for ';'
    Testing %g for ';'
    Testing %G for ';'
    Testing %e for '<'
    Testing %E for '<'
    Testing %f for '<'
    Testing %g for '<'
    Testing %G for '<'
    Testing %e for '='
    Testing %E for '='
    Testing %f for '='
    Testing %g for '='
    Testing %G for '='
    Testing %e for '>'
    Testing %E for '>'
    Testing %f for '>'
    Testing %g for '>'
    Testing %G for '>'
    Testing %e for '?'
    Testing %E for '?'
    Testing %f for '?'
    Testing %g for '?'
    Testing %G for '?'
    Testing %e for '@'
    Testing %E for '@'
    Testing %f for '@'
    Testing %g for '@'
    Testing %G for '@'
    Testing %e for 'A'
    Testing %E for 'A'
    Testing %f for 'A'
    Testing %g for 'A'
    Testing %G for 'A'
    Testing %e for 'B'
    Testing %E for 'B'
    Testing %f for 'B'
    Testing %g for 'B'
    Testing %G for 'B'
    Testing %e for 'C'
    Testing %E for 'C'
    Testing %f for 'C'
    Testing %g for 'C'
    Testing %G for 'C'
    Testing %e for 'D'
    Testing %E for 'D'
    Testing %f for 'D'
    Testing %g for 'D'
    Testing %G for 'D'
    Testing %e for 'E'
    Testing %E for 'E'
    Testing %f for 'E'
    Testing %g for 'E'
    Testing %G for 'E'
    Testing %e for 'F'
    Testing %E for 'F'
    Testing %f for 'F'
    Testing %g for 'F'
    Testing %G for 'F'
    Testing %e for 'G'
    Testing %E for 'G'
    Testing %f for 'G'
    Testing %g for 'G'
    Testing %G for 'G'
    Testing %e for 'H'
    Testing %E for 'H'
    Testing %f for 'H'
    Testing %g for 'H'
    Testing %G for 'H'
    Testing %e for 'I'
    Testing %E for 'I'
    Testing %f for 'I'
    Testing %g for 'I'
    Testing %G for 'I'
    Testing %e for 'J'
    Testing %E for 'J'
    Testing %f for 'J'
    Testing %g for 'J'
    Testing %G for 'J'
    Testing %e for 'K'
    Testing %E for 'K'
    Testing %f for 'K'
    Testing %g for 'K'
    Testing %G for 'K'
    Testing %e for 'L'
    Testing %E for 'L'
    Testing %f for 'L'
    Testing %g for 'L'
    Testing %G for 'L'
    Testing %e for 'M'
    Testing %E for 'M'
    Testing %f for 'M'
    Testing %g for 'M'
    Testing %G for 'M'
    Testing %e for 'N'
    Testing %E for 'N'
    Testing %f for 'N'
    Testing %g for 'N'
    Testing %G for 'N'
    Testing %e for 'O'
    Testing %E for 'O'
    Testing %f for 'O'
    Testing %g for 'O'
    Testing %G for 'O'
    Testing %e for 'P'
    Testing %E for 'P'
    Testing %f for 'P'
    Testing %g for 'P'
    Testing %G for 'P'
    Testing %e for 'Q'
    Testing %E for 'Q'
    Testing %f for 'Q'
    Testing %g for 'Q'
    Testing %G for 'Q'
    Testing %e for 'R'
    Testing %E for 'R'
    Testing %f for 'R'
    Testing %g for 'R'
    Testing %G for 'R'
    Testing %e for 'S'
    Testing %E for 'S'
    Testing %f for 'S'
    Testing %g for 'S'
    Testing %G for 'S'
    Testing %e for 'T'
    Testing %E for 'T'
    Testing %f for 'T'
    Testing %g for 'T'
    Testing %G for 'T'
    Testing %e for 'U'
    Testing %E for 'U'
    Testing %f for 'U'
    Testing %g for 'U'
    Testing %G for 'U'
    Testing %e for 'V'
    Testing %E for 'V'
    Testing %f for 'V'
    Testing %g for 'V'
    Testing %G for 'V'
    Testing %e for 'W'
    Testing %E for 'W'
    Testing %f for 'W'
    Testing %g for 'W'
    Testing %G for 'W'
    Testing %e for 'X'
    Testing %E for 'X'
    Testing %f for 'X'
    Testing %g for 'X'
    Testing %G for 'X'
    Testing %e for 'Y'
    Testing %E for 'Y'
    Testing %f for 'Y'
    Testing %g for 'Y'
    Testing %G for 'Y'
    Testing %e for 'Z'
    Testing %E for 'Z'
    Testing %f for 'Z'
    Testing %g for 'Z'
    Testing %G for 'Z'
    Testing %e for '['
    Testing %E for '['
    Testing %f for '['
    Testing %g for '['
    Testing %G for '['
    Testing %e for ''
    Testing %E for ''
    Testing %f for ''
    Testing %g for ''
    Testing %G for ''
    Testing %e for ']'
    Testing %E for ']'
    Testing %f for ']'
    Testing %g for ']'
    Testing %G for ']'
    Testing %e for '^'
    Testing %E for '^'
    Testing %f for '^'
    Testing %g for '^'
    Testing %G for '^'
    Testing %e for '_'
    Testing %E for '_'
    Testing %f for '_'
    Testing %g for '_'
    Testing %G for '_'
    Testing %e for '`'
    Testing %E for '`'
    Testing %f for '`'
    Testing %g for '`'
    Testing %G for '`'
    Testing %e for 'a'
    Testing %E for 'a'
    Testing %f for 'a'
    Testing %g for 'a'
    Testing %G for 'a'
    Testing %e for 'b'
    Testing %E for 'b'
    Testing %f for 'b'
    Testing %g for 'b'
    Testing %G for 'b'
    Testing %e for 'c'
    Testing %E for 'c'
    Testing %f for 'c'
    Testing %g for 'c'
    Testing %G for 'c'
    Testing %e for 'd'
    Testing %E for 'd'
    Testing %f for 'd'
    Testing %g for 'd'
    Testing %G for 'd'
    Testing %e for 'e'
    Testing %E for 'e'
    Testing %f for 'e'
    Testing %g for 'e'
    Testing %G for 'e'
    Testing %e for 'f'
    Testing %E for 'f'
    Testing %f for 'f'
    Testing %g for 'f'
    Testing %G for 'f'
    Testing %e for 'g'
    Testing %E for 'g'
    Testing %f for 'g'
    Testing %g for 'g'
    Testing %G for 'g'
    Testing %e for 'h'
    Testing %E for 'h'
    Testing %f for 'h'
    Testing %g for 'h'
    Testing %G for 'h'
    Testing %e for 'i'
    Testing %E for 'i'
    Testing %f for 'i'
    Testing %g for 'i'
    Testing %G for 'i'
    Testing %e for 'j'
    Testing %E for 'j'
    Testing %f for 'j'
    Testing %g for 'j'
    Testing %G for 'j'
    Testing %e for 'k'
    Testing %E for 'k'
    Testing %f for 'k'
    Testing %g for 'k'
    Testing %G for 'k'
    Testing %e for 'l'
    Testing %E for 'l'
    Testing %f for 'l'
    Testing %g for 'l'
    Testing %G for 'l'
    Testing %e for 'm'
    Testing %E for 'm'
    Testing %f for 'm'
    Testing %g for 'm'
    Testing %G for 'm'
    Testing %e for 'n'
    Testing %E for 'n'
    Testing %f for 'n'
    Testing %g for 'n'
    Testing %G for 'n'
    Testing %e for 'o'
    Testing %E for 'o'
    Testing %f for 'o'
    Testing %g for 'o'
    Testing %G for 'o'
    Testing %e for 'p'
    Testing %E for 'p'
    Testing %f for 'p'
    Testing %g for 'p'
    Testing %G for 'p'
    Testing %e for 'q'
    Testing %E for 'q'
    Testing %f for 'q'
    Testing %g for 'q'
    Testing %G for 'q'
    Testing %e for 'r'
    Testing %E for 'r'
    Testing %f for 'r'
    Testing %g for 'r'
    Testing %G for 'r'
    Testing %e for 's'
    Testing %E for 's'
    Testing %f for 's'
    Testing %g for 's'
    Testing %G for 's'
    Testing %e for 't'
    Testing %E for 't'
    Testing %f for 't'
    Testing %g for 't'
    Testing %G for 't'
    Testing %e for 'u'
    Testing %E for 'u'
    Testing %f for 'u'
    Testing %g for 'u'
    Testing %G for 'u'
    Testing %e for 'v'
    Testing %E for 'v'
    Testing %f for 'v'
    Testing %g for 'v'
    Testing %G for 'v'
    Testing %e for 'w'
    Testing %E for 'w'
    Testing %f for 'w'
    Testing %g for 'w'
    Testing %G for 'w'
    Testing %e for 'x'
    Testing %E for 'x'
    Testing %f for 'x'
    Testing %g for 'x'
    Testing %G for 'x'
    Testing %e for 'y'
    Testing %E for 'y'
    Testing %f for 'y'
    Testing %g for 'y'
    Testing %G for 'y'
    Testing %e for 'z'
    Testing %E for 'z'
    Testing %f for 'z'
    Testing %g for 'z'
    Testing %G for 'z'
    Testing %e for '{'
    Testing %E for '{'
    Testing %f for '{'
    Testing %g for '{'
    Testing %G for '{'
    Testing %e for '|'
    Testing %E for '|'
    Testing %f for '|'
    Testing %g for '|'
    Testing %G for '|'
    Testing %e for '}'
    Testing %E for '}'
    Testing %f for '}'
    Testing %g for '}'
    Testing %G for '}'
    Testing %e for '~'
    Testing %E for '~'
    Testing %f for '~'
    Testing %g for '~'
    Testing %G for '~'
    Testing %e for ''
    Testing %E for ''
    Testing %f for ''
    Testing %g for ''
    Testing %G for ''
    Command failed: '[ 0 -eq 0 ]'
    Command failed: '[ 0 -eq 0 ]'
    ************************************************************************

    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