You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@stdcxx.apache.org by "Farid Zaripov (JIRA)" <ji...@apache.org> on 2008/03/26 20:17:25 UTC

[jira] Created: (STDCXX-798) [MSVC 8-x64] 0.printf test fails with number of assertions

[MSVC 8-x64] 0.printf test fails with number of assertions
----------------------------------------------------------

                 Key: STDCXX-798
                 URL: https://issues.apache.org/jira/browse/STDCXX-798
             Project: C++ Standard Library
          Issue Type: Bug
          Components: Test Driver
    Affects Versions: 4.2.0
         Environment: All
            Reporter: Farid Zaripov
             Fix For: 4.2.1


The 0.printf test runs successfully on 32-bit MSVC, but fails on 64-bit MSVC. The failed assertions listed below:

{noformat}
# Assertion failed on line 419: rw_sprintf("%s", ...) == "(invalid address 0x0000000000000020)", got "(invalid address 0x00000020:00000000)"
# Assertion failed on line 429: rw_sprintf("%ls", ...) == "(invalid address 0x0000000000000020)", got "(invalid address 0x00000020:00000000)"
# Assertion failed on line 432: rw_sprintf("%ls", ...) == "(misaligned address 0x000000014011e6e9)", got "(misaligned address 0x4011e6e9:00000001)"
# Assertion failed on line 507: rw_sprintf("%{#ls}", ...) == "(invalid address 0x0000000000000020)", got "(invalid address 0x00000020:00000000)"
# Assertion failed on line 510: rw_sprintf("%{#ls}", ...) == "(misaligned address 0x000000014011e6e9)", got "(misaligned address 0x4011e6e9:00000001)"
# Assertion failed on line 1994: rw_printf("%p", 0, 0, 0) == "0000000000000000", got "00000000:00000000"
# Assertion failed on line 1995: rw_printf("%p", 1, 0, 0) == "0000000000000001", got "00000001:00000000"
# Assertion failed on line 1996: rw_printf("%p", -1, 0, 0) == "00000000ffffffff", got "ffffffff:00000000"
# Assertion failed on line 1998: rw_printf("%#p", 0, 0, 0) == "0x0000000000000000", got "0x00000000:00000000"
# Assertion failed on line 1999: rw_printf("%#p", 291, 0, 0) == "0x0000000000000123", got "0x00000123:00000000"
# Assertion failed on line 2000: rw_printf("%#p", -1, 0, 0) == "0x00000000ffffffff", got "0xffffffff:00000000"
# Assertion failed on line 2047: rw_sprintf("%{f}", ...) == "0000000000000000", got "00000000:00000000"
# Assertion failed on line 2048: rw_sprintf("%{f}", ...) == "0000000000000001", got "00000001:00000000"
# Assertion failed on line 2049: rw_sprintf("%{f}", ...) == "00000000ffffffff", got "ffffffff:00000000"
# Assertion failed on line 2051: rw_sprintf("%{#f}", ...) == "0x0000000000000000", got "0x00000000:00000000"
# Assertion failed on line 2052: rw_sprintf("%{#f}", ...) == "0x0000000000000123", got "0x00000123:00000000"
# Assertion failed on line 2053: rw_sprintf("%{#f}", ...) == "0x00000000ffffffff", got "0xffffffff:00000000"
# Assertion failed on line 2614: rw_sprintf("[%{.3P}]", ...) == "[12345]", got "[123]"
# Assertion failed on line 2615: rw_sprintf("[%{10.3P}]", ...) == "[     12345]", got "[       123]"
# Assertion failed on line 2616: rw_sprintf("[%{+10.3P}]", ...) == "[     12345]", got "[       123]"
# Assertion failed on line 2617: rw_sprintf("[%{-10.3P}]", ...) == "[12345     ]", got "[123       ]"
# Assertion failed on line 2702: rw_sprintf("%{t}", ...) == "(invalid address 0x0000000000000020)", got "(invalid address 0x00000020:00000000)"
# Assertion failed on line 2705: rw_sprintf("%{t}", ...) == "(misaligned address 0x000000014011e6e9)", got "(misaligned address 0x4011e6e9:00000001)"

Failed 23 out of 1743 assertions.
{noformat}

  The first problem is difference between implementations of the format_bad_address() in 0.printf.cpp file and _rw_fmtbadaddr() in rwtest library. The _rw_fmtbadaddr() uses _rw_fmtpointer() to format the pointer value (the pointer divided to parts with size = sizeof (long) and these parts are separated with colon ':') while format_bad_address() formats the pointer as integer by casting it to size_t. The same problem when "%p" and "%{f}" formats are tested: the expected value hardcoded in the test is a string with 16 numerals

  I'm not sure what should be corrected: the format_bad_address() and expected results for pointer formatting in 0.printf test of the _rw_fmtpointer() in test driver?

  The second problem is difference between implementations of the _rw_fmtlong() and _rw_fmtllong(). I think they should be implemented the same way.


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Resolved: (STDCXX-798) [MSVC 8-x64] 0.printf test fails with number of assertions

Posted by "Farid Zaripov (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/STDCXX-798?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Farid Zaripov resolved STDCXX-798.
----------------------------------

    Resolution: Fixed

Fixed thus: http://svn.apache.org/viewvc?rev=641835&view=rev
Will be closed after merging the changes into 4.2.x branch.

> [MSVC 8-x64] 0.printf test fails with number of assertions
> ----------------------------------------------------------
>
>                 Key: STDCXX-798
>                 URL: https://issues.apache.org/jira/browse/STDCXX-798
>             Project: C++ Standard Library
>          Issue Type: Bug
>          Components: Test Driver
>    Affects Versions: 4.2.0
>         Environment: All
>            Reporter: Farid Zaripov
>            Assignee: Farid Zaripov
>             Fix For: 4.2.1
>
>   Original Estimate: 2h
>  Remaining Estimate: 2h
>
> The 0.printf test runs successfully on 32-bit MSVC, but fails on 64-bit MSVC. The failed assertions listed below:
> {noformat}
> # Assertion failed on line 419: rw_sprintf("%s", ...) == "(invalid address 0x0000000000000020)", got "(invalid address 0x00000020:00000000)"
> # Assertion failed on line 429: rw_sprintf("%ls", ...) == "(invalid address 0x0000000000000020)", got "(invalid address 0x00000020:00000000)"
> # Assertion failed on line 432: rw_sprintf("%ls", ...) == "(misaligned address 0x000000014011e6e9)", got "(misaligned address 0x4011e6e9:00000001)"
> # Assertion failed on line 507: rw_sprintf("%{#ls}", ...) == "(invalid address 0x0000000000000020)", got "(invalid address 0x00000020:00000000)"
> # Assertion failed on line 510: rw_sprintf("%{#ls}", ...) == "(misaligned address 0x000000014011e6e9)", got "(misaligned address 0x4011e6e9:00000001)"
> # Assertion failed on line 1994: rw_printf("%p", 0, 0, 0) == "0000000000000000", got "00000000:00000000"
> # Assertion failed on line 1995: rw_printf("%p", 1, 0, 0) == "0000000000000001", got "00000001:00000000"
> # Assertion failed on line 1996: rw_printf("%p", -1, 0, 0) == "00000000ffffffff", got "ffffffff:00000000"
> # Assertion failed on line 1998: rw_printf("%#p", 0, 0, 0) == "0x0000000000000000", got "0x00000000:00000000"
> # Assertion failed on line 1999: rw_printf("%#p", 291, 0, 0) == "0x0000000000000123", got "0x00000123:00000000"
> # Assertion failed on line 2000: rw_printf("%#p", -1, 0, 0) == "0x00000000ffffffff", got "0xffffffff:00000000"
> # Assertion failed on line 2047: rw_sprintf("%{f}", ...) == "0000000000000000", got "00000000:00000000"
> # Assertion failed on line 2048: rw_sprintf("%{f}", ...) == "0000000000000001", got "00000001:00000000"
> # Assertion failed on line 2049: rw_sprintf("%{f}", ...) == "00000000ffffffff", got "ffffffff:00000000"
> # Assertion failed on line 2051: rw_sprintf("%{#f}", ...) == "0x0000000000000000", got "0x00000000:00000000"
> # Assertion failed on line 2052: rw_sprintf("%{#f}", ...) == "0x0000000000000123", got "0x00000123:00000000"
> # Assertion failed on line 2053: rw_sprintf("%{#f}", ...) == "0x00000000ffffffff", got "0xffffffff:00000000"
> # Assertion failed on line 2614: rw_sprintf("[%{.3P}]", ...) == "[12345]", got "[123]"
> # Assertion failed on line 2615: rw_sprintf("[%{10.3P}]", ...) == "[     12345]", got "[       123]"
> # Assertion failed on line 2616: rw_sprintf("[%{+10.3P}]", ...) == "[     12345]", got "[       123]"
> # Assertion failed on line 2617: rw_sprintf("[%{-10.3P}]", ...) == "[12345     ]", got "[123       ]"
> # Assertion failed on line 2702: rw_sprintf("%{t}", ...) == "(invalid address 0x0000000000000020)", got "(invalid address 0x00000020:00000000)"
> # Assertion failed on line 2705: rw_sprintf("%{t}", ...) == "(misaligned address 0x000000014011e6e9)", got "(misaligned address 0x4011e6e9:00000001)"
> Failed 23 out of 1743 assertions.
> {noformat}
>   The first problem is difference between implementations of the format_bad_address() in 0.printf.cpp file and _rw_fmtbadaddr() in rwtest library. The _rw_fmtbadaddr() uses _rw_fmtpointer() to format the pointer value (the pointer divided to parts with size = sizeof (long) and these parts are separated with colon ':') while format_bad_address() formats the pointer as integer by casting it to size_t. The same problem when "%p" and "%{f}" formats are tested: the expected value hardcoded in the test is a string with 16 numerals
>   I'm not sure what should be corrected: the format_bad_address() and expected results for pointer formatting in 0.printf test of the _rw_fmtpointer() in test driver?
>   The second problem is difference between implementations of the _rw_fmtlong() and _rw_fmtllong(). I think they should be implemented the same way.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (STDCXX-798) [MSVC 8-x64] 0.printf test fails with number of assertions

Posted by "Farid Zaripov (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/STDCXX-798?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Farid Zaripov updated STDCXX-798:
---------------------------------

    Remaining Estimate: 2h
     Original Estimate: 2h

> [MSVC 8-x64] 0.printf test fails with number of assertions
> ----------------------------------------------------------
>
>                 Key: STDCXX-798
>                 URL: https://issues.apache.org/jira/browse/STDCXX-798
>             Project: C++ Standard Library
>          Issue Type: Bug
>          Components: Test Driver
>    Affects Versions: 4.2.0
>         Environment: All
>            Reporter: Farid Zaripov
>             Fix For: 4.2.1
>
>   Original Estimate: 2h
>  Remaining Estimate: 2h
>
> The 0.printf test runs successfully on 32-bit MSVC, but fails on 64-bit MSVC. The failed assertions listed below:
> {noformat}
> # Assertion failed on line 419: rw_sprintf("%s", ...) == "(invalid address 0x0000000000000020)", got "(invalid address 0x00000020:00000000)"
> # Assertion failed on line 429: rw_sprintf("%ls", ...) == "(invalid address 0x0000000000000020)", got "(invalid address 0x00000020:00000000)"
> # Assertion failed on line 432: rw_sprintf("%ls", ...) == "(misaligned address 0x000000014011e6e9)", got "(misaligned address 0x4011e6e9:00000001)"
> # Assertion failed on line 507: rw_sprintf("%{#ls}", ...) == "(invalid address 0x0000000000000020)", got "(invalid address 0x00000020:00000000)"
> # Assertion failed on line 510: rw_sprintf("%{#ls}", ...) == "(misaligned address 0x000000014011e6e9)", got "(misaligned address 0x4011e6e9:00000001)"
> # Assertion failed on line 1994: rw_printf("%p", 0, 0, 0) == "0000000000000000", got "00000000:00000000"
> # Assertion failed on line 1995: rw_printf("%p", 1, 0, 0) == "0000000000000001", got "00000001:00000000"
> # Assertion failed on line 1996: rw_printf("%p", -1, 0, 0) == "00000000ffffffff", got "ffffffff:00000000"
> # Assertion failed on line 1998: rw_printf("%#p", 0, 0, 0) == "0x0000000000000000", got "0x00000000:00000000"
> # Assertion failed on line 1999: rw_printf("%#p", 291, 0, 0) == "0x0000000000000123", got "0x00000123:00000000"
> # Assertion failed on line 2000: rw_printf("%#p", -1, 0, 0) == "0x00000000ffffffff", got "0xffffffff:00000000"
> # Assertion failed on line 2047: rw_sprintf("%{f}", ...) == "0000000000000000", got "00000000:00000000"
> # Assertion failed on line 2048: rw_sprintf("%{f}", ...) == "0000000000000001", got "00000001:00000000"
> # Assertion failed on line 2049: rw_sprintf("%{f}", ...) == "00000000ffffffff", got "ffffffff:00000000"
> # Assertion failed on line 2051: rw_sprintf("%{#f}", ...) == "0x0000000000000000", got "0x00000000:00000000"
> # Assertion failed on line 2052: rw_sprintf("%{#f}", ...) == "0x0000000000000123", got "0x00000123:00000000"
> # Assertion failed on line 2053: rw_sprintf("%{#f}", ...) == "0x00000000ffffffff", got "0xffffffff:00000000"
> # Assertion failed on line 2614: rw_sprintf("[%{.3P}]", ...) == "[12345]", got "[123]"
> # Assertion failed on line 2615: rw_sprintf("[%{10.3P}]", ...) == "[     12345]", got "[       123]"
> # Assertion failed on line 2616: rw_sprintf("[%{+10.3P}]", ...) == "[     12345]", got "[       123]"
> # Assertion failed on line 2617: rw_sprintf("[%{-10.3P}]", ...) == "[12345     ]", got "[123       ]"
> # Assertion failed on line 2702: rw_sprintf("%{t}", ...) == "(invalid address 0x0000000000000020)", got "(invalid address 0x00000020:00000000)"
> # Assertion failed on line 2705: rw_sprintf("%{t}", ...) == "(misaligned address 0x000000014011e6e9)", got "(misaligned address 0x4011e6e9:00000001)"
> Failed 23 out of 1743 assertions.
> {noformat}
>   The first problem is difference between implementations of the format_bad_address() in 0.printf.cpp file and _rw_fmtbadaddr() in rwtest library. The _rw_fmtbadaddr() uses _rw_fmtpointer() to format the pointer value (the pointer divided to parts with size = sizeof (long) and these parts are separated with colon ':') while format_bad_address() formats the pointer as integer by casting it to size_t. The same problem when "%p" and "%{f}" formats are tested: the expected value hardcoded in the test is a string with 16 numerals
>   I'm not sure what should be corrected: the format_bad_address() and expected results for pointer formatting in 0.printf test of the _rw_fmtpointer() in test driver?
>   The second problem is difference between implementations of the _rw_fmtlong() and _rw_fmtllong(). I think they should be implemented the same way.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Assigned: (STDCXX-798) [MSVC 8-x64] 0.printf test fails with number of assertions

Posted by "Farid Zaripov (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/STDCXX-798?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Farid Zaripov reassigned STDCXX-798:
------------------------------------

    Assignee: Farid Zaripov

> [MSVC 8-x64] 0.printf test fails with number of assertions
> ----------------------------------------------------------
>
>                 Key: STDCXX-798
>                 URL: https://issues.apache.org/jira/browse/STDCXX-798
>             Project: C++ Standard Library
>          Issue Type: Bug
>          Components: Test Driver
>    Affects Versions: 4.2.0
>         Environment: All
>            Reporter: Farid Zaripov
>            Assignee: Farid Zaripov
>             Fix For: 4.2.1
>
>   Original Estimate: 2h
>  Remaining Estimate: 2h
>
> The 0.printf test runs successfully on 32-bit MSVC, but fails on 64-bit MSVC. The failed assertions listed below:
> {noformat}
> # Assertion failed on line 419: rw_sprintf("%s", ...) == "(invalid address 0x0000000000000020)", got "(invalid address 0x00000020:00000000)"
> # Assertion failed on line 429: rw_sprintf("%ls", ...) == "(invalid address 0x0000000000000020)", got "(invalid address 0x00000020:00000000)"
> # Assertion failed on line 432: rw_sprintf("%ls", ...) == "(misaligned address 0x000000014011e6e9)", got "(misaligned address 0x4011e6e9:00000001)"
> # Assertion failed on line 507: rw_sprintf("%{#ls}", ...) == "(invalid address 0x0000000000000020)", got "(invalid address 0x00000020:00000000)"
> # Assertion failed on line 510: rw_sprintf("%{#ls}", ...) == "(misaligned address 0x000000014011e6e9)", got "(misaligned address 0x4011e6e9:00000001)"
> # Assertion failed on line 1994: rw_printf("%p", 0, 0, 0) == "0000000000000000", got "00000000:00000000"
> # Assertion failed on line 1995: rw_printf("%p", 1, 0, 0) == "0000000000000001", got "00000001:00000000"
> # Assertion failed on line 1996: rw_printf("%p", -1, 0, 0) == "00000000ffffffff", got "ffffffff:00000000"
> # Assertion failed on line 1998: rw_printf("%#p", 0, 0, 0) == "0x0000000000000000", got "0x00000000:00000000"
> # Assertion failed on line 1999: rw_printf("%#p", 291, 0, 0) == "0x0000000000000123", got "0x00000123:00000000"
> # Assertion failed on line 2000: rw_printf("%#p", -1, 0, 0) == "0x00000000ffffffff", got "0xffffffff:00000000"
> # Assertion failed on line 2047: rw_sprintf("%{f}", ...) == "0000000000000000", got "00000000:00000000"
> # Assertion failed on line 2048: rw_sprintf("%{f}", ...) == "0000000000000001", got "00000001:00000000"
> # Assertion failed on line 2049: rw_sprintf("%{f}", ...) == "00000000ffffffff", got "ffffffff:00000000"
> # Assertion failed on line 2051: rw_sprintf("%{#f}", ...) == "0x0000000000000000", got "0x00000000:00000000"
> # Assertion failed on line 2052: rw_sprintf("%{#f}", ...) == "0x0000000000000123", got "0x00000123:00000000"
> # Assertion failed on line 2053: rw_sprintf("%{#f}", ...) == "0x00000000ffffffff", got "0xffffffff:00000000"
> # Assertion failed on line 2614: rw_sprintf("[%{.3P}]", ...) == "[12345]", got "[123]"
> # Assertion failed on line 2615: rw_sprintf("[%{10.3P}]", ...) == "[     12345]", got "[       123]"
> # Assertion failed on line 2616: rw_sprintf("[%{+10.3P}]", ...) == "[     12345]", got "[       123]"
> # Assertion failed on line 2617: rw_sprintf("[%{-10.3P}]", ...) == "[12345     ]", got "[123       ]"
> # Assertion failed on line 2702: rw_sprintf("%{t}", ...) == "(invalid address 0x0000000000000020)", got "(invalid address 0x00000020:00000000)"
> # Assertion failed on line 2705: rw_sprintf("%{t}", ...) == "(misaligned address 0x000000014011e6e9)", got "(misaligned address 0x4011e6e9:00000001)"
> Failed 23 out of 1743 assertions.
> {noformat}
>   The first problem is difference between implementations of the format_bad_address() in 0.printf.cpp file and _rw_fmtbadaddr() in rwtest library. The _rw_fmtbadaddr() uses _rw_fmtpointer() to format the pointer value (the pointer divided to parts with size = sizeof (long) and these parts are separated with colon ':') while format_bad_address() formats the pointer as integer by casting it to size_t. The same problem when "%p" and "%{f}" formats are tested: the expected value hardcoded in the test is a string with 16 numerals
>   I'm not sure what should be corrected: the format_bad_address() and expected results for pointer formatting in 0.printf test of the _rw_fmtpointer() in test driver?
>   The second problem is difference between implementations of the _rw_fmtlong() and _rw_fmtllong(). I think they should be implemented the same way.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Closed: (STDCXX-798) [MSVC 8-x64] 0.printf test fails with number of assertions

Posted by "Farid Zaripov (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/STDCXX-798?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Farid Zaripov closed STDCXX-798.
--------------------------------


Merged in 4.2.x branch thus: http://svn.apache.org/viewvc?view=rev&revision=648752

> [MSVC 8-x64] 0.printf test fails with number of assertions
> ----------------------------------------------------------
>
>                 Key: STDCXX-798
>                 URL: https://issues.apache.org/jira/browse/STDCXX-798
>             Project: C++ Standard Library
>          Issue Type: Bug
>          Components: Test Driver
>    Affects Versions: 4.2.0
>         Environment: All
>            Reporter: Farid Zaripov
>            Assignee: Farid Zaripov
>             Fix For: 4.2.1
>
>   Original Estimate: 2h
>          Time Spent: 2h
>  Remaining Estimate: 0h
>
> The 0.printf test runs successfully on 32-bit MSVC, but fails on 64-bit MSVC. The failed assertions listed below:
> {noformat}
> # Assertion failed on line 419: rw_sprintf("%s", ...) == "(invalid address 0x0000000000000020)", got "(invalid address 0x00000020:00000000)"
> # Assertion failed on line 429: rw_sprintf("%ls", ...) == "(invalid address 0x0000000000000020)", got "(invalid address 0x00000020:00000000)"
> # Assertion failed on line 432: rw_sprintf("%ls", ...) == "(misaligned address 0x000000014011e6e9)", got "(misaligned address 0x4011e6e9:00000001)"
> # Assertion failed on line 507: rw_sprintf("%{#ls}", ...) == "(invalid address 0x0000000000000020)", got "(invalid address 0x00000020:00000000)"
> # Assertion failed on line 510: rw_sprintf("%{#ls}", ...) == "(misaligned address 0x000000014011e6e9)", got "(misaligned address 0x4011e6e9:00000001)"
> # Assertion failed on line 1994: rw_printf("%p", 0, 0, 0) == "0000000000000000", got "00000000:00000000"
> # Assertion failed on line 1995: rw_printf("%p", 1, 0, 0) == "0000000000000001", got "00000001:00000000"
> # Assertion failed on line 1996: rw_printf("%p", -1, 0, 0) == "00000000ffffffff", got "ffffffff:00000000"
> # Assertion failed on line 1998: rw_printf("%#p", 0, 0, 0) == "0x0000000000000000", got "0x00000000:00000000"
> # Assertion failed on line 1999: rw_printf("%#p", 291, 0, 0) == "0x0000000000000123", got "0x00000123:00000000"
> # Assertion failed on line 2000: rw_printf("%#p", -1, 0, 0) == "0x00000000ffffffff", got "0xffffffff:00000000"
> # Assertion failed on line 2047: rw_sprintf("%{f}", ...) == "0000000000000000", got "00000000:00000000"
> # Assertion failed on line 2048: rw_sprintf("%{f}", ...) == "0000000000000001", got "00000001:00000000"
> # Assertion failed on line 2049: rw_sprintf("%{f}", ...) == "00000000ffffffff", got "ffffffff:00000000"
> # Assertion failed on line 2051: rw_sprintf("%{#f}", ...) == "0x0000000000000000", got "0x00000000:00000000"
> # Assertion failed on line 2052: rw_sprintf("%{#f}", ...) == "0x0000000000000123", got "0x00000123:00000000"
> # Assertion failed on line 2053: rw_sprintf("%{#f}", ...) == "0x00000000ffffffff", got "0xffffffff:00000000"
> # Assertion failed on line 2614: rw_sprintf("[%{.3P}]", ...) == "[12345]", got "[123]"
> # Assertion failed on line 2615: rw_sprintf("[%{10.3P}]", ...) == "[     12345]", got "[       123]"
> # Assertion failed on line 2616: rw_sprintf("[%{+10.3P}]", ...) == "[     12345]", got "[       123]"
> # Assertion failed on line 2617: rw_sprintf("[%{-10.3P}]", ...) == "[12345     ]", got "[123       ]"
> # Assertion failed on line 2702: rw_sprintf("%{t}", ...) == "(invalid address 0x0000000000000020)", got "(invalid address 0x00000020:00000000)"
> # Assertion failed on line 2705: rw_sprintf("%{t}", ...) == "(misaligned address 0x000000014011e6e9)", got "(misaligned address 0x4011e6e9:00000001)"
> Failed 23 out of 1743 assertions.
> {noformat}
>   The first problem is difference between implementations of the format_bad_address() in 0.printf.cpp file and _rw_fmtbadaddr() in rwtest library. The _rw_fmtbadaddr() uses _rw_fmtpointer() to format the pointer value (the pointer divided to parts with size = sizeof (long) and these parts are separated with colon ':') while format_bad_address() formats the pointer as integer by casting it to size_t. The same problem when "%p" and "%{f}" formats are tested: the expected value hardcoded in the test is a string with 16 numerals
>   I'm not sure what should be corrected: the format_bad_address() and expected results for pointer formatting in 0.printf test of the _rw_fmtpointer() in test driver?
>   The second problem is difference between implementations of the _rw_fmtlong() and _rw_fmtllong(). I think they should be implemented the same way.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (STDCXX-798) [MSVC 8-x64] 0.printf test fails with number of assertions

Posted by "Martin Sebor (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/STDCXX-798?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12582409#action_12582409 ] 

Martin Sebor commented on STDCXX-798:
-------------------------------------

I used the colon to make the 64 bit pointers more readable. If you want to get rid of it go ahead.

> [MSVC 8-x64] 0.printf test fails with number of assertions
> ----------------------------------------------------------
>
>                 Key: STDCXX-798
>                 URL: https://issues.apache.org/jira/browse/STDCXX-798
>             Project: C++ Standard Library
>          Issue Type: Bug
>          Components: Test Driver
>    Affects Versions: 4.2.0
>         Environment: All
>            Reporter: Farid Zaripov
>             Fix For: 4.2.1
>
>   Original Estimate: 2h
>  Remaining Estimate: 2h
>
> The 0.printf test runs successfully on 32-bit MSVC, but fails on 64-bit MSVC. The failed assertions listed below:
> {noformat}
> # Assertion failed on line 419: rw_sprintf("%s", ...) == "(invalid address 0x0000000000000020)", got "(invalid address 0x00000020:00000000)"
> # Assertion failed on line 429: rw_sprintf("%ls", ...) == "(invalid address 0x0000000000000020)", got "(invalid address 0x00000020:00000000)"
> # Assertion failed on line 432: rw_sprintf("%ls", ...) == "(misaligned address 0x000000014011e6e9)", got "(misaligned address 0x4011e6e9:00000001)"
> # Assertion failed on line 507: rw_sprintf("%{#ls}", ...) == "(invalid address 0x0000000000000020)", got "(invalid address 0x00000020:00000000)"
> # Assertion failed on line 510: rw_sprintf("%{#ls}", ...) == "(misaligned address 0x000000014011e6e9)", got "(misaligned address 0x4011e6e9:00000001)"
> # Assertion failed on line 1994: rw_printf("%p", 0, 0, 0) == "0000000000000000", got "00000000:00000000"
> # Assertion failed on line 1995: rw_printf("%p", 1, 0, 0) == "0000000000000001", got "00000001:00000000"
> # Assertion failed on line 1996: rw_printf("%p", -1, 0, 0) == "00000000ffffffff", got "ffffffff:00000000"
> # Assertion failed on line 1998: rw_printf("%#p", 0, 0, 0) == "0x0000000000000000", got "0x00000000:00000000"
> # Assertion failed on line 1999: rw_printf("%#p", 291, 0, 0) == "0x0000000000000123", got "0x00000123:00000000"
> # Assertion failed on line 2000: rw_printf("%#p", -1, 0, 0) == "0x00000000ffffffff", got "0xffffffff:00000000"
> # Assertion failed on line 2047: rw_sprintf("%{f}", ...) == "0000000000000000", got "00000000:00000000"
> # Assertion failed on line 2048: rw_sprintf("%{f}", ...) == "0000000000000001", got "00000001:00000000"
> # Assertion failed on line 2049: rw_sprintf("%{f}", ...) == "00000000ffffffff", got "ffffffff:00000000"
> # Assertion failed on line 2051: rw_sprintf("%{#f}", ...) == "0x0000000000000000", got "0x00000000:00000000"
> # Assertion failed on line 2052: rw_sprintf("%{#f}", ...) == "0x0000000000000123", got "0x00000123:00000000"
> # Assertion failed on line 2053: rw_sprintf("%{#f}", ...) == "0x00000000ffffffff", got "0xffffffff:00000000"
> # Assertion failed on line 2614: rw_sprintf("[%{.3P}]", ...) == "[12345]", got "[123]"
> # Assertion failed on line 2615: rw_sprintf("[%{10.3P}]", ...) == "[     12345]", got "[       123]"
> # Assertion failed on line 2616: rw_sprintf("[%{+10.3P}]", ...) == "[     12345]", got "[       123]"
> # Assertion failed on line 2617: rw_sprintf("[%{-10.3P}]", ...) == "[12345     ]", got "[123       ]"
> # Assertion failed on line 2702: rw_sprintf("%{t}", ...) == "(invalid address 0x0000000000000020)", got "(invalid address 0x00000020:00000000)"
> # Assertion failed on line 2705: rw_sprintf("%{t}", ...) == "(misaligned address 0x000000014011e6e9)", got "(misaligned address 0x4011e6e9:00000001)"
> Failed 23 out of 1743 assertions.
> {noformat}
>   The first problem is difference between implementations of the format_bad_address() in 0.printf.cpp file and _rw_fmtbadaddr() in rwtest library. The _rw_fmtbadaddr() uses _rw_fmtpointer() to format the pointer value (the pointer divided to parts with size = sizeof (long) and these parts are separated with colon ':') while format_bad_address() formats the pointer as integer by casting it to size_t. The same problem when "%p" and "%{f}" formats are tested: the expected value hardcoded in the test is a string with 16 numerals
>   I'm not sure what should be corrected: the format_bad_address() and expected results for pointer formatting in 0.printf test of the _rw_fmtpointer() in test driver?
>   The second problem is difference between implementations of the _rw_fmtlong() and _rw_fmtllong(). I think they should be implemented the same way.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (STDCXX-798) [MSVC 8-x64] 0.printf test fails with number of assertions

Posted by "Farid Zaripov (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/STDCXX-798?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12582406#action_12582406 ] 

Farid Zaripov commented on STDCXX-798:
--------------------------------------

On the first problem I'd like to change the pointer formatting in the rwtest library. I don't like to see the 64-bit pointer on flat 64-bit platform in segment:offset format which was used at the time of the 16-bit DOS :)


> [MSVC 8-x64] 0.printf test fails with number of assertions
> ----------------------------------------------------------
>
>                 Key: STDCXX-798
>                 URL: https://issues.apache.org/jira/browse/STDCXX-798
>             Project: C++ Standard Library
>          Issue Type: Bug
>          Components: Test Driver
>    Affects Versions: 4.2.0
>         Environment: All
>            Reporter: Farid Zaripov
>             Fix For: 4.2.1
>
>   Original Estimate: 2h
>  Remaining Estimate: 2h
>
> The 0.printf test runs successfully on 32-bit MSVC, but fails on 64-bit MSVC. The failed assertions listed below:
> {noformat}
> # Assertion failed on line 419: rw_sprintf("%s", ...) == "(invalid address 0x0000000000000020)", got "(invalid address 0x00000020:00000000)"
> # Assertion failed on line 429: rw_sprintf("%ls", ...) == "(invalid address 0x0000000000000020)", got "(invalid address 0x00000020:00000000)"
> # Assertion failed on line 432: rw_sprintf("%ls", ...) == "(misaligned address 0x000000014011e6e9)", got "(misaligned address 0x4011e6e9:00000001)"
> # Assertion failed on line 507: rw_sprintf("%{#ls}", ...) == "(invalid address 0x0000000000000020)", got "(invalid address 0x00000020:00000000)"
> # Assertion failed on line 510: rw_sprintf("%{#ls}", ...) == "(misaligned address 0x000000014011e6e9)", got "(misaligned address 0x4011e6e9:00000001)"
> # Assertion failed on line 1994: rw_printf("%p", 0, 0, 0) == "0000000000000000", got "00000000:00000000"
> # Assertion failed on line 1995: rw_printf("%p", 1, 0, 0) == "0000000000000001", got "00000001:00000000"
> # Assertion failed on line 1996: rw_printf("%p", -1, 0, 0) == "00000000ffffffff", got "ffffffff:00000000"
> # Assertion failed on line 1998: rw_printf("%#p", 0, 0, 0) == "0x0000000000000000", got "0x00000000:00000000"
> # Assertion failed on line 1999: rw_printf("%#p", 291, 0, 0) == "0x0000000000000123", got "0x00000123:00000000"
> # Assertion failed on line 2000: rw_printf("%#p", -1, 0, 0) == "0x00000000ffffffff", got "0xffffffff:00000000"
> # Assertion failed on line 2047: rw_sprintf("%{f}", ...) == "0000000000000000", got "00000000:00000000"
> # Assertion failed on line 2048: rw_sprintf("%{f}", ...) == "0000000000000001", got "00000001:00000000"
> # Assertion failed on line 2049: rw_sprintf("%{f}", ...) == "00000000ffffffff", got "ffffffff:00000000"
> # Assertion failed on line 2051: rw_sprintf("%{#f}", ...) == "0x0000000000000000", got "0x00000000:00000000"
> # Assertion failed on line 2052: rw_sprintf("%{#f}", ...) == "0x0000000000000123", got "0x00000123:00000000"
> # Assertion failed on line 2053: rw_sprintf("%{#f}", ...) == "0x00000000ffffffff", got "0xffffffff:00000000"
> # Assertion failed on line 2614: rw_sprintf("[%{.3P}]", ...) == "[12345]", got "[123]"
> # Assertion failed on line 2615: rw_sprintf("[%{10.3P}]", ...) == "[     12345]", got "[       123]"
> # Assertion failed on line 2616: rw_sprintf("[%{+10.3P}]", ...) == "[     12345]", got "[       123]"
> # Assertion failed on line 2617: rw_sprintf("[%{-10.3P}]", ...) == "[12345     ]", got "[123       ]"
> # Assertion failed on line 2702: rw_sprintf("%{t}", ...) == "(invalid address 0x0000000000000020)", got "(invalid address 0x00000020:00000000)"
> # Assertion failed on line 2705: rw_sprintf("%{t}", ...) == "(misaligned address 0x000000014011e6e9)", got "(misaligned address 0x4011e6e9:00000001)"
> Failed 23 out of 1743 assertions.
> {noformat}
>   The first problem is difference between implementations of the format_bad_address() in 0.printf.cpp file and _rw_fmtbadaddr() in rwtest library. The _rw_fmtbadaddr() uses _rw_fmtpointer() to format the pointer value (the pointer divided to parts with size = sizeof (long) and these parts are separated with colon ':') while format_bad_address() formats the pointer as integer by casting it to size_t. The same problem when "%p" and "%{f}" formats are tested: the expected value hardcoded in the test is a string with 16 numerals
>   I'm not sure what should be corrected: the format_bad_address() and expected results for pointer formatting in 0.printf test of the _rw_fmtpointer() in test driver?
>   The second problem is difference between implementations of the _rw_fmtlong() and _rw_fmtllong(). I think they should be implemented the same way.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.