You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@stdcxx.apache.org by "Martin Sebor (JIRA)" <ji...@apache.org> on 2008/02/13 18:03:07 UTC
[jira] Updated: (STDCXX-597) purify reports uninitialized memory
read in _rw_get_char
[ https://issues.apache.org/jira/browse/STDCXX-597?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Martin Sebor updated STDCXX-597:
--------------------------------
Description:
{noformat}
**** Purify instrumented ./21.string.access (pid 2878) ****
UMR: Uninitialized memory read:
* This is occurring while in thread 2878:
_rw_get_char(char const*, char const**, unsigned*) [char.cpp:562]
rw_match(char const*, char const*, unsigned) [char.cpp:816]
test_access<char, std::char_traits<char>, std::allocator<char> >(char, std::char_traits<char>*, char*, StringFunc const&, StringTestCase const&) [21.string.access.cpp:274]
test_access(StringFunc const&, StringTestCase const&) [21.string.access.cpp:317]
_rw_test_case(StringFunc const&, StringTestCase const&, (*)(StringFunc const&, StringTestCase const&)) [21.strings.cpp:1298]
_rw_run_cases(StringFunc const&, StringTest const&) [21.strings.cpp:1353]
* Reading 1 byte from 0x8182256 in the heap.
* Address 0x8182256 is 14 bytes into a malloc'd block at 0x8182248 of 46 bytes.
* This block was allocated from thread -1207973632:
malloc [rtlib.o]
operator new(unsigned) [libstd15d.so]
__rw::__rw_allocate(unsigned, int) [memory.cpp:53]
std::allocator<char>::allocate(unsigned, const*) [_allocator.h:144]
std::string<char, std::char_traits<char>, std::allocator<char>>::_C_get_rep(unsigned, unsigned) [string.cc:102]
std::string<char, std::char_traits<char>, std::allocator<char>>::string<char, std::char_traits<char>, std::allocator<char>>[not-in-charge](char const*, unsigned, std::allocator<char> const&) [string.cc:180]
**** Purify instrumented ./21.string.access (pid 2878) ****
UMR: Uninitialized memory read:
* This is occurring while in thread 2878:
_rw_get_char(char const*, char const**, unsigned*) [char.cpp:562]
rw_match(char const*, char const*, unsigned) [char.cpp:816]
test_access<char, UserTraits<char>, std::allocator<char> >(char, UserTraits<char>*, char*, StringFunc const&, StringTestCase const&) [21.string.access.cpp:274]
test_access(StringFunc const&, StringTestCase const&) [21.string.access.cpp:317]
_rw_test_case(StringFunc const&, StringTestCase const&, (*)(StringFunc const&, StringTestCase const&)) [21.strings.cpp:1298]
_rw_run_cases(StringFunc const&, StringTest const&) [21.strings.cpp:1353]
* Reading 1 byte from 0x818d5a6 in the heap.
* Address 0x818d5a6 is 14 bytes into a malloc'd block at 0x818d598 of 46 bytes.
* This block was allocated from thread -1207973632:
malloc [rtlib.o]
operator new(unsigned) [libstd15d.so]
__rw::__rw_allocate(unsigned, int) [memory.cpp:53]
std::allocator<char>::allocate(unsigned, const*) [_allocator.h:144]
std::basic_string<char, std::char_traits<char>, std::allocator<char>><char, UserTraits<char>, std::allocator<char> >::_C_get_rep(unsigned, unsigned) [string.cc:102]
std::basic_string<char, std::char_traits<char>, std::allocator<char>><char, UserTraits<char>, std::allocator<char> >::basic_string<char, std::char_traits<char>, std::allocator<char>>[not-in-charge](char const*, unsigned, std::allocator<char> const&) [string.cc:180]
{noformat}
was:
**** Purify instrumented ./21.string.access (pid 2878) ****
UMR: Uninitialized memory read:
* This is occurring while in thread 2878:
_rw_get_char(char const*, char const**, unsigned*) [char.cpp:562]
rw_match(char const*, char const*, unsigned) [char.cpp:816]
test_access<char, std::char_traits<char>, std::allocator<char> >(char, std::char_traits<char>*, char*, StringFunc const&, StringTestCase const&) [21.string.access.cpp:274]
test_access(StringFunc const&, StringTestCase const&) [21.string.access.cpp:317]
_rw_test_case(StringFunc const&, StringTestCase const&, (*)(StringFunc const&, StringTestCase const&)) [21.strings.cpp:1298]
_rw_run_cases(StringFunc const&, StringTest const&) [21.strings.cpp:1353]
* Reading 1 byte from 0x8182256 in the heap.
* Address 0x8182256 is 14 bytes into a malloc'd block at 0x8182248 of 46 bytes.
* This block was allocated from thread -1207973632:
malloc [rtlib.o]
operator new(unsigned) [libstd15d.so]
__rw::__rw_allocate(unsigned, int) [memory.cpp:53]
std::allocator<char>::allocate(unsigned, const*) [_allocator.h:144]
std::string<char, std::char_traits<char>, std::allocator<char>>::_C_get_rep(unsigned, unsigned) [string.cc:102]
std::string<char, std::char_traits<char>, std::allocator<char>>::string<char, std::char_traits<char>, std::allocator<char>>[not-in-charge](char const*, unsigned, std::allocator<char> const&) [string.cc:180]
**** Purify instrumented ./21.string.access (pid 2878) ****
UMR: Uninitialized memory read:
* This is occurring while in thread 2878:
_rw_get_char(char const*, char const**, unsigned*) [char.cpp:562]
rw_match(char const*, char const*, unsigned) [char.cpp:816]
test_access<char, UserTraits<char>, std::allocator<char> >(char, UserTraits<char>*, char*, StringFunc const&, StringTestCase const&) [21.string.access.cpp:274]
test_access(StringFunc const&, StringTestCase const&) [21.string.access.cpp:317]
_rw_test_case(StringFunc const&, StringTestCase const&, (*)(StringFunc const&, StringTestCase const&)) [21.strings.cpp:1298]
_rw_run_cases(StringFunc const&, StringTest const&) [21.strings.cpp:1353]
* Reading 1 byte from 0x818d5a6 in the heap.
* Address 0x818d5a6 is 14 bytes into a malloc'd block at 0x818d598 of 46 bytes.
* This block was allocated from thread -1207973632:
malloc [rtlib.o]
operator new(unsigned) [libstd15d.so]
__rw::__rw_allocate(unsigned, int) [memory.cpp:53]
std::allocator<char>::allocate(unsigned, const*) [_allocator.h:144]
std::basic_string<char, std::char_traits<char>, std::allocator<char>><char, UserTraits<char>, std::allocator<char> >::_C_get_rep(unsigned, unsigned) [string.cc:102]
std::basic_string<char, std::char_traits<char>, std::allocator<char>><char, UserTraits<char>, std::allocator<char> >::basic_string<char, std::char_traits<char>, std::allocator<char>>[not-in-charge](char const*, unsigned, std::allocator<char> const&) [string.cc:180]
Disabled formatting.
> purify reports uninitialized memory read in _rw_get_char
> ---------------------------------------------------------
>
> Key: STDCXX-597
> URL: https://issues.apache.org/jira/browse/STDCXX-597
> Project: C++ Standard Library
> Issue Type: Improvement
> Components: Test Driver
> Affects Versions: 4.2.0
> Reporter: Travis Vitek
> Priority: Minor
> Fix For: 4.2.1
>
> Attachments: stdcxx-597.patch
>
> Original Estimate: 2h
> Remaining Estimate: 2h
>
> {noformat}
> **** Purify instrumented ./21.string.access (pid 2878) ****
> UMR: Uninitialized memory read:
> * This is occurring while in thread 2878:
> _rw_get_char(char const*, char const**, unsigned*) [char.cpp:562]
> rw_match(char const*, char const*, unsigned) [char.cpp:816]
> test_access<char, std::char_traits<char>, std::allocator<char> >(char, std::char_traits<char>*, char*, StringFunc const&, StringTestCase const&) [21.string.access.cpp:274]
> test_access(StringFunc const&, StringTestCase const&) [21.string.access.cpp:317]
> _rw_test_case(StringFunc const&, StringTestCase const&, (*)(StringFunc const&, StringTestCase const&)) [21.strings.cpp:1298]
> _rw_run_cases(StringFunc const&, StringTest const&) [21.strings.cpp:1353]
> * Reading 1 byte from 0x8182256 in the heap.
> * Address 0x8182256 is 14 bytes into a malloc'd block at 0x8182248 of 46 bytes.
> * This block was allocated from thread -1207973632:
> malloc [rtlib.o]
> operator new(unsigned) [libstd15d.so]
> __rw::__rw_allocate(unsigned, int) [memory.cpp:53]
> std::allocator<char>::allocate(unsigned, const*) [_allocator.h:144]
> std::string<char, std::char_traits<char>, std::allocator<char>>::_C_get_rep(unsigned, unsigned) [string.cc:102]
> std::string<char, std::char_traits<char>, std::allocator<char>>::string<char, std::char_traits<char>, std::allocator<char>>[not-in-charge](char const*, unsigned, std::allocator<char> const&) [string.cc:180]
> **** Purify instrumented ./21.string.access (pid 2878) ****
> UMR: Uninitialized memory read:
> * This is occurring while in thread 2878:
> _rw_get_char(char const*, char const**, unsigned*) [char.cpp:562]
> rw_match(char const*, char const*, unsigned) [char.cpp:816]
> test_access<char, UserTraits<char>, std::allocator<char> >(char, UserTraits<char>*, char*, StringFunc const&, StringTestCase const&) [21.string.access.cpp:274]
> test_access(StringFunc const&, StringTestCase const&) [21.string.access.cpp:317]
> _rw_test_case(StringFunc const&, StringTestCase const&, (*)(StringFunc const&, StringTestCase const&)) [21.strings.cpp:1298]
> _rw_run_cases(StringFunc const&, StringTest const&) [21.strings.cpp:1353]
> * Reading 1 byte from 0x818d5a6 in the heap.
> * Address 0x818d5a6 is 14 bytes into a malloc'd block at 0x818d598 of 46 bytes.
> * This block was allocated from thread -1207973632:
> malloc [rtlib.o]
> operator new(unsigned) [libstd15d.so]
> __rw::__rw_allocate(unsigned, int) [memory.cpp:53]
> std::allocator<char>::allocate(unsigned, const*) [_allocator.h:144]
> std::basic_string<char, std::char_traits<char>, std::allocator<char>><char, UserTraits<char>, std::allocator<char> >::_C_get_rep(unsigned, unsigned) [string.cc:102]
> std::basic_string<char, std::char_traits<char>, std::allocator<char>><char, UserTraits<char>, std::allocator<char> >::basic_string<char, std::char_traits<char>, std::allocator<char>>[not-in-charge](char const*, unsigned, std::allocator<char> const&) [string.cc:180]
> {noformat}
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.