When I compile this code:
#include <iostream>
int main(void)
{
}
with g++, instrumented with the "purify" utility, purify reports
the following:
UMR: Uninitialized memory read (128 times)
This is occurring while in:
__gconv_get_alias_db [libc.so.6]
wctob [libc.so.6]
std::ctype< wchar_t>::_M_initialize_ctype( void) [libstdc++.so.6]
std::ctype< wchar_t>::ctype( unsigned) [libstdc++.so.6]
std::locale::_Impl::_Impl( unsigned) [libstdc++.so.6]
std::locale::_Impl::_Impl( unsigned) [libstdc++.so.6]
Reading 4 bytes from 0xbfa77a24 on the stack.
Address 0xbfa77a24 is 84 bytes below frame pointer in function wctob
Dunno if this is a g++ problem, purify problem, OS problem, system
library problem, not really an error, or whatever, but it would be
nice to make it go away.
System/compiler info:
uname -a
Linux banat 2.6.15-26-686 #1 SMP PREEMPT Mon Jul 17 20:14:14 UTC 2006
i686 GNU/Linux
g++ --version
g++ (GCC) 4.0.3 (Ubuntu 4.0.3-1ubuntu5)
Without <iostream>, no problem.
--
Summary: purify with iostream reports 128 uninitialized memory
reads
Product: gcc
Version: 4.0.3
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: mstaley at lanl dot gov
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29529