20 Dec
2011
20 Dec
'11
9:47 a.m.
Can anyone help decipher this message?
The lines in this call stack have "mangled" names. For instance, _ZNSt6vectorI12lattice_typeSaIS0_EE7reserveEm + 114 designates something like vector<lattice_type>::reserve()
Is it really trying to allocate that size? Is gcc really using malloc under all these boost code? :)
Yes, the bottom line is that it throws bad_alloc due to an attmpt to allocate a very large block. In line [12] you can see a call to boost::serialization::stl::reserve_imp<std::vector<lattice_type> >() it's called when Boost.Serialization loads your vector from a stream. However, for some reason it read an incorrect vector size -- perhaps the file is corrupted or there's some version mismatch.