Bug#784655: can't rebuild casablanca with newer libstdc++6 (sid)
Hi Matthias,
thanks for the quick reply
>are you running sid, or stretch?
in plain sid the package doesn't build at all, in order to trim down the differences I started from a Stretch clean pbuilder environment, and upgraded stuff until I got the problem.
>is the testsuite rebuilt after the new libstdc++ installed? if yes, is the
>libstdc++-5-dev package upgraded as well?
yes, of course the testsuite has been rebuilt, if that matters, I'm compiling with "-std=c++11" flag
so, to resume
starting from stretch, enabling sid repository
apt-get install libstdc++6 libstdc++-5-dev
The following extra packages will be installed:
gcc-5-base libasan2 libatomic1 libcilkrts5 libgcc-5-dev libgcc1 libgomp1 libitm1 liblsan0 libmpx0 libquadmath0 libtsan0 libubsan0
fetch casablanca and try to build.
/casablanca/Release/tests/functional/streams/fstreambuf_tests.cpp:158: error: Failure in OpenForReadDoesntCreateFile2: CHECK_EQUAL(static_cast<int>(std::errc::no_such_file_or_directory), _condFound.value()) where static_cast<int>(std::errc::no_such_file_or_directory)=2 and _condFound.value()=0
>please can you distill down a test case?
the test case seems pretty generic
utility::string_t fname = U("OpenForReadDoesntCreateFile2.txt");
VERIFY_THROWS_SYSTEM_ERROR(OPEN<char>(fname, std::ios_base::in | std::ios_base::binary ).get(), std::errc::no_such_file_or_directory);
std::ifstream is;
VERIFY_IS_NULL(is.rdbuf()->open(fname.c_str(), std::ios::in | std::ios_base::binary));
isn't this something generic?
(sorry I don't undestand too much g++ code, moreover I'm using an embedded UnitTestpp because the Debian one is too outdated)
cheers,
G.
Reply to: