|
From: Tom H. <to...@co...> - 2009-02-06 19:02:19
|
Ross Boylan wrote: > On Fri, 2009-02-06 at 19:47 +0100, Julian Seward wrote: >>> invalid read. However, there is no indication of why it is invalid. >> Um, it says it is invalid because you are reading freed memory: > I believe those are 2 separate error reports. The addresses are > different, and the indentation seems to indicate they are distinct > items. Am I misreading? Yes - there is an instruction at address 0x40904A which is reading memory at address 0x5588760 that was previously freed. Tom >>> ==27712== Invalid read of size 8 >>> ==27712== at 0x40904A: std::valarray<int>::size() const >>> (valarray:772) >> [...] >>> ==27712== Address 0x5588760 is 0 bytes inside a block of size 104 >>> free'd >>> ==27712== at 0x4A1B17F: operator delete(void*) >>> (vg_replace_malloc.c:244) >>> ==27712== by 0x4968F1: data() (Data_test.cc:123) >>> ==27712== by 0x43903E: boost::unit_test::ut_detail::unused >>> boost::unit_test::ut_detail::invoker<boost::unit_test::ut_detail::unused>:: >>> invoke<void (*)()>(void (*)()&) (callback.hpp:56) >> [...] >> >> J -- Tom Hughes (to...@co...) http://www.compton.nu/ |