Le 05/09/16 à 17:00, Raffi Enficiaud a écrit :
Le 05/09/16 à 14:28, Raffi Enficiaud a écrit :
Le 05/09/16 à 13:15, Andrey Semashev a écrit :
Hi,
I'm seeing these test failures for gcc 4.6 (MinGW):
http://www.boost.org/development/tests/develop/developer/output/igaztanaga-d...
Looks like the error originates from Boost.Test, and I can also see lots
of failures in Boost.Test itself for that compiler. Is this a known
problem? Any fixes planned?
Thanks for pointing out (and for the reminder). Yes the issue is known:
- https://svn.boost.org/trac/boost/ticket/12093
- http://lists.boost.org/Archives/boost/2016/03/228198.php
There are also other issues with gcc<4.8 in C++0X mode:
http://lists.boost.org/Archives/boost/2016/03/228114.php
I am currently checking a fix for those, I'll keep you updated.
Raffi
The branch "topic/12093-gcc-compilation-issues" of boost.test contain a
fix that is passing my CI. If somebody has a bit of time for testing
that would be great.
Thanks,
Raffi
I managed to fix some of the issues of gcc 4.6, however I still think
there are many issues with this compiler.
For instance, the following code
template<typename T> \
binary_expr > \
operator oper( T&& rhs ) \
{ \
return binary_expr > \
( std::forward<ExprType>( \
*static_cast(this) ), \
std::forward<T>(rhs) ); \
} \
seem to yield a different type "T" between the return type at the
function declaration and the return statement in the function body.
(the difference is in the "Rhs", the error is
=======
test-organization-ts/test_case_template-test.cpp:38:5: error:
‘boost::test_tools::assertion::binary_expr::evaluate(bool)
const [with LExpr = boost::test_tools::assertion::value_expr<int>, Rhs =
int&, OP = boost::test_tools::assertion::op::EQ]’ is not
a member of
‘boost::test_tools::assertion::binary_expr >’
=======
)
I am also experiencing errors that are outside of boost.test (see below).
If anyone has experience with this compiler (and is willing to help),
please do.
Best,
Raffi
========
gcc.compile.c++
../../../bin.v2/libs/test/test/sync-access-test.test/gcc-4.6/debug/threading-multi/multithreading-ts/sync-access-test.o
In file included from
../../../boost/exception/detail/exception_ptr.hpp:20:0,
from ../../../boost/exception_ptr.hpp:9,
from ../../../boost/thread/exceptional_ptr.hpp:10,
from ../../../boost/thread/future.hpp:25,
from ../../../boost/thread.hpp:24,
from multithreading-ts/sync-access-test.cpp:19:
../../../boost/exception/info.hpp: In instantiation of
‘boost::error_info’:
../../../boost/exception/detail/exception_ptr.hpp:95:32: instantiated
from here
../../../boost/exception/info.hpp:66:5: error: ‘class
boost::error_info’ has no member named ‘value_’
../../../boost/container/detail/pair.hpp:85:30: warning:
‘boost::container::piecewise_construct’ defined but not used
[-Wunused-variable]
"/usr/bin/g++-4.6" -ftemplate-depth-128 -O0 -fno-inline -Wall
-pedantic -g -pthread -fPIC -m64 -Wno-long-long -Wno-variadic-macros
-pedantic -std=c++0x -DBOOST_ALL_NO_LIB=1 -DBOOST_CHRONO_STATIC_LINK=1
-DBOOST_SYSTEM_NO_DEPRECATED -DBOOST_SYSTEM_STATIC_LINK=1
-DBOOST_TEST_NO_AUTO_LINK=1 -DBOOST_THREAD_BUILD_LIB=1
-DBOOST_THREAD_POSIX -DBOOST_THREAD_USE_LIB=1
-DBOOST_TIMER_STATIC_LINK=1 -I"../../.." -c -o
"../../../bin.v2/libs/test/test/sync-access-test.test/gcc-4.6/debug/threading-multi/multithreading-ts/sync-access-test.o"
"multithreading-ts/sync-access-test.cpp"
...failed gcc.compile.c++
../../../bin.v2/libs/test/test/sync-access-test.test/gcc-4.6/debug/threading-multi/multithreading-ts/sync-access-test.o...
gcc.compile.c++
../../../bin.v2/libs/thread/build/gcc-4.6/debug/link-static/threading-multi/pthread/thread.o
In file included from
../../../boost/exception/detail/exception_ptr.hpp:20:0,
from ../../../boost/exception_ptr.hpp:9,
from ../../../boost/thread/exceptional_ptr.hpp:10,
from ../../../boost/thread/future.hpp:25,
from ../../../libs/thread/src/pthread/thread.cpp:19:
../../../boost/exception/info.hpp: In instantiation of
‘boost::error_info’:
../../../boost/exception/detail/exception_ptr.hpp:95:32: instantiated
from here
../../../boost/exception/info.hpp:66:5: error: ‘class
boost::error_info’ has no member named ‘value_’
In file included from ../../../boost/atomic/detail/atomic_template.hpp:25:0,
from ../../../boost/atomic/atomic.hpp:22,
from ../../../boost/atomic.hpp:12,
from ../../../boost/thread/pthread/once_atomic.hpp:20,
from ../../../boost/thread/once.hpp:20,
from ../../../libs/thread/src/pthread/thread.cpp:17:
../../../boost/atomic/detail/bitwise_cast.hpp: In function ‘To
boost::atomics::detail::bitwise_cast(const From&) [with To = long
unsigned int, From = void*]’:
../../../boost/atomic/detail/atomic_template.hpp:556:139: instantiated
from here
../../../boost/atomic/detail/bitwise_cast.hpp:39:14: warning: missing
initializer for member ‘boost::atomics::detail::bitwise_cast(const
From&) [with To = long unsigned int, From = void*]::<anonymous
struct>::to’ [-Wmissing-field-initializers]
../../../boost/atomic/detail/bitwise_cast.hpp: In function ‘To
boost::atomics::detail::bitwise_cast(const From&) [with To = void*, From
= long unsigned int]’:
../../../boost/atomic/detail/atomic_template.hpp:574:100: instantiated
from here
../../../boost/atomic/detail/bitwise_cast.hpp:39:14: warning: missing
initializer for member ‘boost::atomics::detail::bitwise_cast(const
From&) [with To = void*, From = long unsigned int]::<anonymous
struct>::to’ [-Wmissing-field-initializers]
../../../boost/container/detail/pair.hpp: At global scope:
../../../boost/container/detail/pair.hpp:85:30: warning:
‘boost::container::piecewise_construct’ defined but not used
[-Wunused-variable]
"/usr/bin/g++-4.6" -ftemplate-depth-128 -O0 -fno-inline -Wall
-pedantic -g -pthread -m64 -Wextra -Wno-long-long -Wno-unused-parameter
-Wunused-function -pedantic -std=c++0x -DBOOST_ALL_NO_LIB=1
-DBOOST_SYSTEM_STATIC_LINK=1 -DBOOST_THREAD_BUILD_LIB=1
-DBOOST_THREAD_DONT_USE_CHRONO -DBOOST_THREAD_POSIX -I"../../.." -c -o
"../../../bin.v2/libs/thread/build/gcc-4.6/debug/link-static/threading-multi/pthread/thread.o"
"../../../libs/thread/src/pthread/thread.cpp"
...failed gcc.compile.c++
../../../bin.v2/libs/thread/build/gcc-4.6/debug/link-static/threading-multi/pthread/thread.o...
...skipped
libboost_thread.a(clean)
for lack of
pthread/thread.o...
...skipped
libboost_thread.a
for lack of
pthread/thread.o...
...skipped
sync-access-test
for lack of
multithreading-ts/sync-access-test.o...
...skipped
sync-access-test.run
for lack of
sync-access-test...
...failed updating 4 targets...
...skipped 11 targets...
...updated 4 targets...
==========