Boost logo

Boost :

Subject: [boost] [contract] differentiate regressions with libc++
From: Lorenzo Caminiti (lorcaminiti_at_[hidden])
Date: 2017-10-29 03:37:19


Hello all,

Another question on the regression tests. How am I supposed to
differentiate GCC 6.0 between
CrystaX-apilevel-19-armeabi-v7a-gnu-libstdc++ and
CrystaX-apilevel-19-armeabi-v7a-hard-llvm-libc++?
http://www.boost.org/development/tests/develop/developer/contract.html

They both use the same toolset name "gcc-gnu-6", but when libc++ is
used instead of libstdc++ Boost.Contract tests give these linker
errors:

../boost/smart_ptr/detail/sp_counted_impl.hpp:146: error: undefined
reference to 'operator delete(void*, unsigned int)'
/home/cislave/.crystax/ci-boost/regression/android-19-armeabi-v7a-hard-llvm-develop/tmp/crystax-ndk-10.3.2/sources/cxx-stl/llvm-libc++/3.6/libcxx/include/sstream:189:
error: undefined reference to 'operator delete(void*, unsigned int)'
../boost/iostreams/detail/streambuf/indirect_streambuf.hpp:50: error:
undefined reference to 'operator delete(void*, unsigned int)'
/home/cislave/.crystax/ci-boost/regression/android-19-armeabi-v7a-hard-llvm-develop/tmp/crystax-ndk-10.3.2/sources/cxx-stl/llvm-libc++/3.6/libcxx/include/sstream:740:
error: undefined reference to 'operator delete(void*, unsigned int)'
collect2: error: ld returned 1 exit status

I wanted to mark the link errors for libc++ as expected failures while
leaving libstdc++ unmarked (because there are no link errors for
libstdc++). However, I don't know how to do that because the toolset
name is the same "gcc-gnu-6" for both runs with libstdc++ (column 6)
and with libc++ (column 10).

Should the toolset names be unique instead? For example, should names
like gcc-gnu-6~libstdc++ and gcc-gnu-6~libc++ have been used in this
case instead of using just gcc-gnu-6 for both runs?

Thank you.
--Lorenzo


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk