I still see a few issues:
* The program iterator_test.cpp aborts when it tries to increment an out-of-range vector iterator with msvc (14 and 12).
I see this on the test matrix, but I haven't been able to reproduce it locally.
That's weird, it's easily reproducible for me with VC14 x86 debug mode.
In the test case you have:
std::vector
* Running the serialization tests under valgrind on Linux flags up a lot of failures (many of which may all be the same issue) - you can reproduce with
bjam toolsetname testing.launcher="valgrind --error-exitcode=1"
Hmmm - there are a number of tests which trap in sanitizers and in valgrind. These are artifacts of the tests and not the library. I think most of these are dangling pointers which result from not deleting dematerialized data structures via pointers. If I had nothing else to do, I might go back and fix these tests - but it's a lot bigger job than meets the eye and I've got other stuff to do.
* There's at least one multiprecision test which fails with the new version (test_cpp_int_deserial.cpp) with vc12 and earlier, but not vc14 strangely. It dies with an archive exception complaining that the archive is invalid with some VC compiler versions but not others.
This last one may actually be either an issue with the iostreams library, or my code. Either way I've pushed a fix for multiprecision. The issue was that constructing an input archive from a std::ifstream dies if there's a peek() on the stream prior to the archive constructor. I suspect this is due to the calls to imbue() in the archive constructor invalidating the stream buffer and the fstream then gets it's internals in a twist. HTH, John.