Dominic Hamon created MESOS-2192:
------------------------------------
Summary: libprocess fails to build under g++-4.6 - src/clock.cpp
Key: MESOS-2192
URL: https://issues.apache.org/jira/browse/MESOS-2192
Project: Mesos
Issue Type: Bug
Components: libprocess
Affects Versions: 0.21.0
Reporter: Dominic Hamon
Assignee: Benjamin Hindman
Priority: Critical
configured with '--enable-debug --disable-java --with-network-isolator' on
ubuntu 14:
{noformat}
In file included from
../../../3rdparty/libprocess/3rdparty/stout/include/stout/lambda.hpp:28:0,
from ../../../3rdparty/libprocess/include/process/clock.hpp:13,
from ../../../3rdparty/libprocess/src/clock.cpp:8:
/usr/include/c++/4.6/tr1/functional: In member function '_Res
std::tr1::function<_Res(_ArgTypes ...)>::operator()(_ArgTypes ...) const [with
_Res = void, _ArgTypes = {std::list<process::Timer>&&}]':
../../../3rdparty/libprocess/src/clock.cpp:167:36: instantiated from here
/usr/include/c++/4.6/tr1/functional:2040:46: error: invalid initialization of
reference of type 'std::list<process::Timer>&&' from expression of type
'std::list<process::Timer>'
/usr/include/c++/4.6/tr1/functional:2040:46: error: return-statement with a
value, in function returning 'void' [-fpermissive]
make[4]: *** [libprocess_la-clock.lo] Error 1
make[4]: *** Waiting for unfinished jobs....
In file included from
../../../3rdparty/libprocess/3rdparty/stout/include/stout/lambda.hpp:28:0,
from ../../../3rdparty/libprocess/include/process/clock.hpp:13,
from
../../../3rdparty/libprocess/include/process/future.hpp:21,
from ../../../3rdparty/libprocess/include/process/check.hpp:22,
from ../../../3rdparty/libprocess/src/process.cpp:44:
/usr/include/c++/4.6/tr1/functional: In member function 'typename
std::tr1::result_of<_Functor(typename
std::tr1::result_of<std::tr1::_Mu<_Bound_args>(_Bound_args,
std::tr1::tuple<_Args ...>)>::type ...)>::type
std::tr1::_Bind<_Functor(_Bound_args ...)>::__call(const std::tr1::tuple<_Args
...>&, std::tr1::_Index_tuple<_Indexes ...>) [with _Args =
{std::list<process::Timer>&}, int ..._Indexes = {0}, _Functor = void
(*)(std::list<process::Timer>&&), _Bound_args = {std::tr1::_Placeholder<1>},
typename std::tr1::result_of<_Functor(typename
std::tr1::result_of<std::tr1::_Mu<_Bound_args>(_Bound_args,
std::tr1::tuple<_Args ...>)>::type ...)>::type = void]':
/usr/include/c++/4.6/tr1/functional:1207:68: instantiated from 'typename
std::tr1::result_of<_Functor(typename
std::tr1::result_of<std::tr1::_Mu<_Bound_args>(_Bound_args,
std::tr1::tuple<_UElements ...>)>::type ...)>::type
std::tr1::_Bind<_Functor(_Bound_args ...)>::operator()(_Args& ...) [with _Args
= {std::list<process::Timer>}, _Functor = void
(*)(std::list<process::Timer>&&), _Bound_args = {std::tr1::_Placeholder<1>},
typename std::tr1::result_of<_Functor(typename
std::tr1::result_of<std::tr1::_Mu<_Bound_args>(_Bound_args,
std::tr1::tuple<_UElements ...>)>::type ...)>::type = void]'
/usr/include/c++/4.6/tr1/functional:1684:9: instantiated from 'static void
std::tr1::_Function_handler<void(_ArgTypes ...), _Functor>::_M_invoke(const
std::tr1::_Any_data&, _ArgTypes ...) [with _Functor = std::tr1::_Bind<void
(*(std::tr1::_Placeholder<1>))(std::list<process::Timer>&&)>, _ArgTypes =
{std::list<process::Timer>&&}]'
/usr/include/c++/4.6/tr1/functional:2021:6: instantiated from
'std::tr1::function<_Res(_ArgTypes ...)>::function(_Functor, typename
__gnu_cxx::__enable_if<(! std::tr1::is_integral<_Functor>::value),
std::tr1::function<_Res(_ArgTypes ...)>::_Useless>::__type) [with _Functor =
std::tr1::_Bind<void
(*(std::tr1::_Placeholder<1>))(std::list<process::Timer>&&)>, _Res = void,
_ArgTypes = {std::list<process::Timer>&&}, typename __gnu_cxx::__enable_if<(!
std::tr1::is_integral<_Functor>::value), std::tr1::function<_Res(_ArgTypes
...)>::_Useless>::__type =
std::tr1::function<void(std::list<process::Timer>&&)>::_Useless]'
../../../3rdparty/libprocess/src/process.cpp:913:56: instantiated from here
/usr/include/c++/4.6/tr1/functional:1153:69: error: invalid initialization of
reference of type 'std::list<process::Timer>&&' from expression of type
'std::list<process::Timer>'
/usr/include/c++/4.6/tr1/functional:1153:69: error: return-statement with a
value, in function returning 'void' [-fpermissive]
make[4]: *** [libprocess_la-process.lo] Error 1
make[3]: *** [check-recursive] Error 1
make[2]: *** [check-recursive] Error 1
make[1]: *** [check] Error 2
make: *** [check-recursive] Error 1
{noformat}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)