Closed jzmaddock closed 8 months ago
Line boost/lexical_cast/detail/converter_lexical_streams.hpp:594:17
is
stream.exceptions(std::ios::badbit);
where stream
has just been declared as
std::basic_istream<CharT, Traits> stream(&buf);
so this doesn't look like a legitimate lexical_cast
issue. The documentation of -fsanitize=memory says that all code needs to be instrumented, and in this case the standard library probably hasn't been.
@pdimov is absolutely right - msan requires instrumentation for all the code, including C++ Standard Library, libc and c++ runtimes.
We use lexical_cast
in some projects that build and test the whole world with msan, no issues so far
I haven't been able to figure out if this is a real issue or not, but it is super-annoying as it prevents running the multiprecision tests with -fsanitize=memory.
If I compile:
With
clang++ -fsanitize=memory
then I see: