You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@mesos.apache.org by Chinmaya Manjunath <ch...@hedviginc.com> on 2014/08/13 00:07:00 UTC

4.8.0 Cxx11 compilation issue

Hello Guys:

I am trying to build mesos on Centos6.5 and 4.8.0 g++ and am hitting the 
following issue,  help is appreciated.

Thanks!



ake[6]: Entering directory 
`/home/chinmaya/work/mesos.old/build/3rdparty/libprocess/3rdparty/stout'
make[6]: Nothing to be done for `all'.
make[6]: Leaving directory 
`/home/chinmaya/work/mesos.old/build/3rdparty/libprocess/3rdparty/stout'
make[6]: Entering directory 
`/home/chinmaya/work/mesos.old/build/3rdparty/libprocess/3rdparty'
make[6]: Nothing to be done for `all-am'.
make[6]: Leaving directory 
`/home/chinmaya/work/mesos.old/build/3rdparty/libprocess/3rdparty'
make[5]: Leaving directory 
`/home/chinmaya/work/mesos.old/build/3rdparty/libprocess/3rdparty'
make[4]: Leaving directory 
`/home/chinmaya/work/mesos.old/build/3rdparty/libprocess/3rdparty'
Making all in .
make[4]: Entering directory 
`/home/chinmaya/work/mesos.old/build/3rdparty/libprocess'
/bin/sh ./libtool  --tag=CXX   --mode=compile g++ 
-DPACKAGE_NAME=\"libprocess\" -DPACKAGE_TARNAME=\"libprocess\" 
-DPACKAGE_VERSION=\"0.0.1\" -DPACKAGE_STRING=\"libprocess\ 0.0.1\" 
-DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DPACKAGE=\"libprocess\" 
-DVERSION=\"0.0.1\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 
-DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 
-DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 
-DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 
-DLT_OBJDIR=\".libs/\" -DHAVE_PTHREAD=1 -DHAVE_LIBZ=1 -I. 
-I../../../3rdparty/libprocess  -I../../../3rdparty/libprocess/include 
-I../../../3rdparty/libprocess/3rdparty/stout/include 
-I3rdparty/boost-1.53.0 -I3rdparty/glog-0.3.3/src -I3rdparty/libev-4.15 
-I3rdparty/picojson-4f93734  -I3rdparty/ry-http-parser-1c3624a  
-Iparser/include  -g -g2 -O2 -Wno-unused-local-typedefs -std=c++11 -MT 
libprocess_la-metrics.lo -MD -MP -MF .deps/libprocess_la-metrics.Tpo -c 
-o libprocess_la-metrics.lo `test -f 'src/metrics/metrics.cpp' || echo 
'../../../3rdparty/libprocess/'`src/metrics/metrics.cpp
libtool: compile:  g++ -DPACKAGE_NAME=\"libprocess\" 
-DPACKAGE_TARNAME=\"libprocess\" -DPACKAGE_VERSION=\"0.0.1\" 
"-DPACKAGE_STRING=\"libprocess 0.0.1\"" -DPACKAGE_BUGREPORT=\"\" 
-DPACKAGE_URL=\"\" -DPACKAGE=\"libprocess\" -DVERSION=\"0.0.1\" 
-DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 
-DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 
-DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 
-DLT_OBJDIR=\".libs/\" -DHAVE_PTHREAD=1 -DHAVE_LIBZ=1 -I. 
-I../../../3rdparty/libprocess -I../../../3rdparty/libprocess/include 
-I../../../3rdparty/libprocess/3rdparty/stout/include 
-I3rdparty/boost-1.53.0 -I3rdparty/glog-0.3.3/src -I3rdparty/libev-4.15 
-I3rdparty/picojson-4f93734 -I3rdparty/ry-http-parser-1c3624a 
-Iparser/include -g -g2 -O2 -Wno-unused-local-typedefs -std=c++11 -MT 
libprocess_la-metrics.lo -MD -MP -MF .deps/libprocess_la-metrics.Tpo -c 
../../../3rdparty/libprocess/src/metrics/metrics.cpp  -fPIC -DPIC -o 
libprocess_la-metrics.o
In file included from 
../../../3rdparty/libprocess/include/process/check.hpp:22:0,
                  from 
../../../3rdparty/libprocess/include/process/collect.hpp:6,
                  from 
../../../3rdparty/libprocess/src/metrics/metrics.cpp:6:
../../../3rdparty/libprocess/include/process/future.hpp: In 
instantiation of 'class process::Future<void>':
/usr/local/include/c++/4.8.0/functional:2177:71:   required by 
substitution of 'template<class _Res, class ... _ArgTypes> 
template<class _Functor> using _Invoke = decltype 
(std::__callable_functor(declval<_Functor&>())((declval<_ArgTypes>)()...)) 
[with _Functor = const std::function<process::Future<void>(const 
process::Future<double>&)>&; _Res = process::Future<void>; _ArgTypes = 
{const process::Future<double>&}]'
/usr/local/include/c++/4.8.0/functional:2331:2:   required by 
substitution of 'template<class _Functor> std::function<_Res(_ArgTypes 
...)>::_Requires<std::function<_Res(_ArgTypes 
...)>::_CheckResult<std::function<_Res(_ArgTypes 
...)>::_Invoke<_Functor>, _Res>, std::function<_Res(_ArgTypes ...)>&> 
std::function<_Res(_ArgTypes ...)>::operator=(_Functor&&) [with _Functor 
= _Functor; _Res = process::Future<void>; _ArgTypes = {const 
process::Future<double>&}] [with _Functor = const 
std::function<process::Future<void>(const process::Future<double>&)>&]'
/usr/local/include/c++/4.8.0/tuple:236:72:   required from 'struct 
std::_Tuple_impl<0ul, std::function<process::Future<void>(const 
process::Future<double>&)>, std::_Placeholder<1> >'
/usr/local/include/c++/4.8.0/tuple:521:11:   required from 'class 
std::tuple<std::function<process::Future<void>(const 
process::Future<double>&)>, std::_Placeholder<1> >'
/usr/local/include/c++/4.8.0/functional:1288:29:   required from 'struct 
std::_Bind<std::_Mem_fn<process::Future<void> 
(std::function<process::Future<void>(const 
process::Future<double>&)>::*)(const 
process::Future<double>&)const>(std::function<process::Future<void>(const process::Future<double>&)>, 
std::_Placeholder<1>)>'
../../../3rdparty/libprocess/include/process/c++11/defer.hpp:237:3:   
required by substitution of 'template<class R, class T, class P0, class 
A0> process::_Deferred<decltype (std::bind((& 
std::function<process::Future<T>(P0)>::operator()), 
std::function<process::Future<T>(P0)>(), a0))> process::defer(const 
process::PID<T>&, R (T::*)(P0), A0) [with R = void; T = 
process::internal::AwaitProcess<double>; P0 = const 
process::Future<double>&; A0 = std::_Placeholder<1>]'
../../../3rdparty/libprocess/include/process/c++11/defer.hpp:237:3:   
required by substitution of 'template<class R, class T, class P0, class 
A0> decltype (process::defer(process->.self(), method, a0)) 
process::defer(const process::Process<T>*, R (T::*)(P0), A0) [with R = 
void; T = process::internal::AwaitProcess<double>; P0 = const 
process::Future<double>&; A0 = std::_Placeholder<1>]'
../../../3rdparty/libprocess/include/process/collect.hpp:129:70:   
required from 'void process::internal::AwaitProcess<T>::initialize() 
[with T = double]'
../../../3rdparty/libprocess/src/metrics/metrics.cpp:179:1:   required 
from here
../../../3rdparty/libprocess/include/process/future.hpp:996:1: error: 
forming reference to void
  Future<T>::Future(const T& _t)
  ^
../../../3rdparty/libprocess/include/process/future.hpp:1169:10: error: 
forming reference to void
  const T& Future<T>::get() const
           ^
In file included from 
../../../3rdparty/libprocess/include/process/check.hpp:22:0,
                  from 
../../../3rdparty/libprocess/include/process/collect.hpp:6,
                  from 
../../../3rdparty/libprocess/src/metrics/metrics.cpp:6:
../../../3rdparty/libprocess/include/process/future.hpp:148:44: error: 
forming reference to void
    typedef lambda::function<void(const T&)> ReadyCallback
                                            ^
../../../3rdparty/libprocess/include/process/future.hpp:208:20: error: 
forming reference to void
    const Future<T>& onReady(F&& f, Prefer) const
                     ^
In file included from 
../../../3rdparty/libprocess/include/process/check.hpp:22:0,
                  from 
../../../3rdparty/libprocess/include/process/collect.hpp:6,
                  from 
../../../3rdparty/libprocess/src/metrics/metrics.cpp:6:
../../../3rdparty/libprocess/include/process/future.hpp:1519:11: error: 
forming reference to void
  Future<X> Future<T>::then(const lambda::function<Future<X>(const T&)>& 
f) const
            ^
../../../3rdparty/libprocess/include/process/future.hpp:1539:11: error: 
forming reference to void
  Future<X> Future<T>::then(const lambda::function<X(const T&)>& f) const
            ^
../../../3rdparty/libprocess/include/process/future.hpp:333:13: error: 
forming reference to void
    Future<X> then(_Deferred<F>&& f, Prefer) const
              ^
../../../3rdparty/libprocess/include/process/future.hpp:347:13: error: 
forming reference to void
    Future<X> then(F&& f, Prefer) const
              ^
../../../3rdparty/libprocess/include/process/future.hpp:1588:6: error: 
forming reference to void
  bool Future<T>::set(const T& _t)
       ^
In file included from 
../../../3rdparty/libprocess/3rdparty/stout/include/stout/check.hpp:28:0,
                  from 
../../../3rdparty/libprocess/include/process/check.hpp:19,
                  from 
../../../3rdparty/libprocess/include/process/collect.hpp:6,
                  from 
../../../3rdparty/libprocess/src/metrics/metrics.cpp:6:
../../../3rdparty/libprocess/3rdparty/stout/include/stout/try.hpp: In 
instantiation of 'class Try<void>':
/usr/local/include/c++/4.8.0/type_traits:1305:35:   required by 
substitution of 'template<class _From1, class _To1> static decltype 
((__test_aux<_To1>(declval<_From1>()), std::__sfinae_types::__one())) 
std::__is_convertible_helper<_From, _To, false>::__test(int) [with 
_From1 = _From1; _To1 = _To1; _From = process::Future<void>; _To = 
process::Future<void>] [with _From1 = process::Future<void>; _To1 = 
process::Future<void>]'
/usr/local/include/c++/4.8.0/type_traits:1312:50:   required from 
'constexpr const bool 
std::__is_convertible_helper<process::Future<void>, 
process::Future<void>, false>::value'
/usr/local/include/c++/4.8.0/type_traits:1317:12:   required from 
'struct std::is_convertible<process::Future<void>, process::Future<void> >'
/usr/local/include/c++/4.8.0/functional:2181:9:   required from 'struct 
std::function<process::Future<void>(const 
process::Future<double>&)>::_CheckResult<process::Future<void>, 
process::Future<void> >'
/usr/local/include/c++/4.8.0/functional:2192:63:   required by 
substitution of 'template<class _Res, class ... _ArgTypes> 
template<class _Cond, class _Tp> using _Requires = typename 
std::enable_if<_Cond:: value, _Tp>::type [with _Cond = 
std::function<process::Future<void>(const 
process::Future<double>&)>::_CheckResult<process::Future<void>, 
process::Future<void> >; _Tp = std::function<process::Future<void>(const 
process::Future<double>&)>&; _Res = process::Future<void>; _ArgTypes = 
{const process::Future<double>&}]'
/usr/local/include/c++/4.8.0/functional:2331:2:   [ skipping 2 
instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/usr/local/include/c++/4.8.0/tuple:521:11:   required from 'class 
std::tuple<std::function<process::Future<void>(const 
process::Future<double>&)>, std::_Placeholder<1> >'
/usr/local/include/c++/4.8.0/functional:1288:29:   required from 'struct 
std::_Bind<std::_Mem_fn<process::Future<void> 
(std::function<process::Future<void>(const 
process::Future<double>&)>::*)(const 
process::Future<double>&)const>(std::function<process::Future<void>(const process::Future<double>&)>, 
std::_Placeholder<1>)>'
../../../3rdparty/libprocess/include/process/c++11/defer.hpp:237:3:   
required by substitution of 'template<class R, class T, class P0, class 
A0> process::_Deferred<decltype (std::bind((& 
std::function<process::Future<T>(P0)>::operator()), 
std::function<process::Future<T>(P0)>(), a0))> process::defer(const 
process::PID<T>&, R (T::*)(P0), A0) [with R = void; T = 
process::internal::AwaitProcess<double>; P0 = const 
process::Future<double>&; A0 = std::_Placeholder<1>]'
../../../3rdparty/libprocess/include/process/c++11/defer.hpp:237:3:   
required by substitution of 'template<class R, class T, class P0, class 
A0> decltype (process::defer(process->.self(), method, a0)) 
process::defer(const process::Process<T>*, R (T::*)(P0), A0) [with R = 
void; T = process::internal::AwaitProcess<double>; P0 = const 
process::Future<double>&; A0 = std::_Placeholder<1>]'
../../../3rdparty/libprocess/include/process/collect.hpp:129:70:   
required from 'void process::internal::AwaitProcess<T>::initialize() 
[with T = double]'

Re: 4.8.0 Cxx11 compilation issue

Posted by Chinmaya Manjunath <ch...@hedviginc.com>.
works with 4.8.2. Thanks!

Chinmaya

> Benjamin Mahler <ma...@gmail.com>
> August 12, 2014 5:04 PM
> Can you try it with 4.8.2?
>
> I ask because most of the developers and many of the CI jobs compile 
> with 4.8.1 or 4.8.2, so it would be nice to rule out an issue with 4.8.0.
>
>
>
> Chinmaya Manjunath <ma...@hedviginc.com>
> August 12, 2014 4:35 PM
> I just tried it with 4.8.0 and got this. Would think that it could 
> happen with 4.8.1 as well.
>
> This error disappears if I configure without cxx11 support, but I see 
> that it is a deprecated setting.
>
>
>
> Benjamin Mahler <ma...@gmail.com>
> August 12, 2014 4:05 PM
> Just curious, do you see this with gcc 4.8.1 / 4.8.2 or only with 4.8.0?
>
>
> On Tue, Aug 12, 2014 at 3:07 PM, Chinmaya Manjunath 
> <ch...@hedviginc.com>
>
> Chinmaya Manjunath <ma...@hedviginc.com>
> August 12, 2014 3:07 PM
> Hello Guys:
>
> I am trying to build mesos on Centos6.5 and 4.8.0 g++ and am hitting 
> the following issue,  help is appreciated.
>
> Thanks!
>
>
>
> ake[6]: Entering directory 
> `/home/chinmaya/work/mesos.old/build/3rdparty/libprocess/3rdparty/stout'
> make[6]: Nothing to be done for `all'.
> make[6]: Leaving directory 
> `/home/chinmaya/work/mesos.old/build/3rdparty/libprocess/3rdparty/stout'
> make[6]: Entering directory 
> `/home/chinmaya/work/mesos.old/build/3rdparty/libprocess/3rdparty'
> make[6]: Nothing to be done for `all-am'.
> make[6]: Leaving directory 
> `/home/chinmaya/work/mesos.old/build/3rdparty/libprocess/3rdparty'
> make[5]: Leaving directory 
> `/home/chinmaya/work/mesos.old/build/3rdparty/libprocess/3rdparty'
> make[4]: Leaving directory 
> `/home/chinmaya/work/mesos.old/build/3rdparty/libprocess/3rdparty'
> Making all in .
> make[4]: Entering directory 
> `/home/chinmaya/work/mesos.old/build/3rdparty/libprocess'
> /bin/sh ./libtool  --tag=CXX   --mode=compile g++ 
> -DPACKAGE_NAME=\"libprocess\" -DPACKAGE_TARNAME=\"libprocess\" 
> -DPACKAGE_VERSION=\"0.0.1\" -DPACKAGE_STRING=\"libprocess\ 0.0.1\" 
> -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DPACKAGE=\"libprocess\" 
> -DVERSION=\"0.0.1\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 
> -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 
> -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 
> -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 
> -DLT_OBJDIR=\".libs/\" -DHAVE_PTHREAD=1 -DHAVE_LIBZ=1 -I. 
> -I../../../3rdparty/libprocess  -I../../../3rdparty/libprocess/include 
> -I../../../3rdparty/libprocess/3rdparty/stout/include 
> -I3rdparty/boost-1.53.0 -I3rdparty/glog-0.3.3/src 
> -I3rdparty/libev-4.15 -I3rdparty/picojson-4f93734  
> -I3rdparty/ry-http-parser-1c3624a  -Iparser/include  -g -g2 -O2 
> -Wno-unused-local-typedefs -std=c++11 -MT libprocess_la-metrics.lo -MD 
> -MP -MF .deps/libprocess_la-metrics.Tpo -c -o libprocess_la-metrics.lo 
> `test -f 'src/metrics/metrics.cpp' || echo 
> '../../../3rdparty/libprocess/'`src/metrics/metrics.cpp
> libtool: compile:  g++ -DPACKAGE_NAME=\"libprocess\" 
> -DPACKAGE_TARNAME=\"libprocess\" -DPACKAGE_VERSION=\"0.0.1\" 
> "-DPACKAGE_STRING=\"libprocess 0.0.1\"" -DPACKAGE_BUGREPORT=\"\" 
> -DPACKAGE_URL=\"\" -DPACKAGE=\"libprocess\" -DVERSION=\"0.0.1\" 
> -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 
> -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 
> -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 
> -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" 
> -DHAVE_PTHREAD=1 -DHAVE_LIBZ=1 -I. -I../../../3rdparty/libprocess 
> -I../../../3rdparty/libprocess/include 
> -I../../../3rdparty/libprocess/3rdparty/stout/include 
> -I3rdparty/boost-1.53.0 -I3rdparty/glog-0.3.3/src 
> -I3rdparty/libev-4.15 -I3rdparty/picojson-4f93734 
> -I3rdparty/ry-http-parser-1c3624a -Iparser/include -g -g2 -O2 
> -Wno-unused-local-typedefs -std=c++11 -MT libprocess_la-metrics.lo -MD 
> -MP -MF .deps/libprocess_la-metrics.Tpo -c 
> ../../../3rdparty/libprocess/src/metrics/metrics.cpp  -fPIC -DPIC -o 
> libprocess_la-metrics.o
> In file included from 
> ../../../3rdparty/libprocess/include/process/check.hpp:22:0,
>                  from 
> ../../../3rdparty/libprocess/include/process/collect.hpp:6,
>                  from 
> ../../../3rdparty/libprocess/src/metrics/metrics.cpp:6:
> ../../../3rdparty/libprocess/include/process/future.hpp: In 
> instantiation of 'class process::Future<void>':
> /usr/local/include/c++/4.8.0/functional:2177:71:   required by 
> substitution of 'template<class _Res, class ... _ArgTypes> 
> template<class _Functor> using _Invoke = decltype 
> (std::__callable_functor(declval<_Functor&>())((declval<_ArgTypes>)()...)) 
> [with _Functor = const std::function<process::Future<void>(const 
> process::Future<double>&)>&; _Res = process::Future<void>; _ArgTypes = 
> {const process::Future<double>&}]'
> /usr/local/include/c++/4.8.0/functional:2331:2:   required by 
> substitution of 'template<class _Functor> std::function<_Res(_ArgTypes 
> ...)>::_Requires<std::function<_Res(_ArgTypes 
> ...)>::_CheckResult<std::function<_Res(_ArgTypes 
> ...)>::_Invoke<_Functor>, _Res>, std::function<_Res(_ArgTypes ...)>&> 
> std::function<_Res(_ArgTypes ...)>::operator=(_Functor&&) [with 
> _Functor = _Functor; _Res = process::Future<void>; _ArgTypes = {const 
> process::Future<double>&}] [with _Functor = const 
> std::function<process::Future<void>(const process::Future<double>&)>&]'
> /usr/local/include/c++/4.8.0/tuple:236:72:   required from 'struct 
> std::_Tuple_impl<0ul, std::function<process::Future<void>(const 
> process::Future<double>&)>, std::_Placeholder<1> >'
> /usr/local/include/c++/4.8.0/tuple:521:11:   required from 'class 
> std::tuple<std::function<process::Future<void>(const 
> process::Future<double>&)>, std::_Placeholder<1> >'
> /usr/local/include/c++/4.8.0/functional:1288:29:   required from 
> 'struct std::_Bind<std::_Mem_fn<process::Future<void> 
> (std::function<process::Future<void>(const 
> process::Future<double>&)>::*)(const 
> process::Future<double>&)const>(std::function<process::Future<void>(const 
> process::Future<double>&)>, std::_Placeholder<1>)>'
> ../../../3rdparty/libprocess/include/process/c++11/defer.hpp:237:3:   
> required by substitution of 'template<class R, class T, class P0, 
> class A0> process::_Deferred<decltype (std::bind((& 
> std::function<process::Future<T>(P0)>::operator()), 
> std::function<process::Future<T>(P0)>(), a0))> process::defer(const 
> process::PID<T>&, R (T::*)(P0), A0) [with R = void; T = 
> process::internal::AwaitProcess<double>; P0 = const 
> process::Future<double>&; A0 = std::_Placeholder<1>]'
> ../../../3rdparty/libprocess/include/process/c++11/defer.hpp:237:3:   
> required by substitution of 'template<class R, class T, class P0, 
> class A0> decltype (process::defer(process->.self(), method, a0)) 
> process::defer(const process::Process<T>*, R (T::*)(P0), A0) [with R = 
> void; T = process::internal::AwaitProcess<double>; P0 = const 
> process::Future<double>&; A0 = std::_Placeholder<1>]'
> ../../../3rdparty/libprocess/include/process/collect.hpp:129:70:   
> required from 'void process::internal::AwaitProcess<T>::initialize() 
> [with T = double]'
> ../../../3rdparty/libprocess/src/metrics/metrics.cpp:179:1:   required 
> from here
> ../../../3rdparty/libprocess/include/process/future.hpp:996:1: error: 
> forming reference to void
>  Future<T>::Future(const T& _t)
>  ^
> ../../../3rdparty/libprocess/include/process/future.hpp:1169:10: 
> error: forming reference to void
>  const T& Future<T>::get() const
>           ^
> In file included from 
> ../../../3rdparty/libprocess/include/process/check.hpp:22:0,
>                  from 
> ../../../3rdparty/libprocess/include/process/collect.hpp:6,
>                  from 
> ../../../3rdparty/libprocess/src/metrics/metrics.cpp:6:
> ../../../3rdparty/libprocess/include/process/future.hpp:148:44: error: 
> forming reference to void
>    typedef lambda::function<void(const T&)> ReadyCallback
>                                            ^
> ../../../3rdparty/libprocess/include/process/future.hpp:208:20: error: 
> forming reference to void
>    const Future<T>& onReady(F&& f, Prefer) const
>                     ^
> In file included from 
> ../../../3rdparty/libprocess/include/process/check.hpp:22:0,
>                  from 
> ../../../3rdparty/libprocess/include/process/collect.hpp:6,
>                  from 
> ../../../3rdparty/libprocess/src/metrics/metrics.cpp:6:
> ../../../3rdparty/libprocess/include/process/future.hpp:1519:11: 
> error: forming reference to void
>  Future<X> Future<T>::then(const lambda::function<Future<X>(const 
> T&)>& f) const
>            ^
> ../../../3rdparty/libprocess/include/process/future.hpp:1539:11: 
> error: forming reference to void
>  Future<X> Future<T>::then(const lambda::function<X(const T&)>& f) const
>            ^
> ../../../3rdparty/libprocess/include/process/future.hpp:333:13: error: 
> forming reference to void
>    Future<X> then(_Deferred<F>&& f, Prefer) const
>              ^
> ../../../3rdparty/libprocess/include/process/future.hpp:347:13: error: 
> forming reference to void
>    Future<X> then(F&& f, Prefer) const
>              ^
> ../../../3rdparty/libprocess/include/process/future.hpp:1588:6: error: 
> forming reference to void
>  bool Future<T>::set(const T& _t)
>       ^
> In file included from 
> ../../../3rdparty/libprocess/3rdparty/stout/include/stout/check.hpp:28:0,
>                  from 
> ../../../3rdparty/libprocess/include/process/check.hpp:19,
>                  from 
> ../../../3rdparty/libprocess/include/process/collect.hpp:6,
>                  from 
> ../../../3rdparty/libprocess/src/metrics/metrics.cpp:6:
> ../../../3rdparty/libprocess/3rdparty/stout/include/stout/try.hpp: In 
> instantiation of 'class Try<void>':
> /usr/local/include/c++/4.8.0/type_traits:1305:35:   required by 
> substitution of 'template<class _From1, class _To1> static decltype 
> ((__test_aux<_To1>(declval<_From1>()), std::__sfinae_types::__one())) 
> std::__is_convertible_helper<_From, _To, false>::__test(int) [with 
> _From1 = _From1; _To1 = _To1; _From = process::Future<void>; _To = 
> process::Future<void>] [with _From1 = process::Future<void>; _To1 = 
> process::Future<void>]'
> /usr/local/include/c++/4.8.0/type_traits:1312:50:   required from 
> 'constexpr const bool 
> std::__is_convertible_helper<process::Future<void>, 
> process::Future<void>, false>::value'
> /usr/local/include/c++/4.8.0/type_traits:1317:12:   required from 
> 'struct std::is_convertible<process::Future<void>, 
> process::Future<void> >'
> /usr/local/include/c++/4.8.0/functional:2181:9:   required from 
> 'struct std::function<process::Future<void>(const 
> process::Future<double>&)>::_CheckResult<process::Future<void>, 
> process::Future<void> >'
> /usr/local/include/c++/4.8.0/functional:2192:63:   required by 
> substitution of 'template<class _Res, class ... _ArgTypes> 
> template<class _Cond, class _Tp> using _Requires = typename 
> std::enable_if<_Cond:: value, _Tp>::type [with _Cond = 
> std::function<process::Future<void>(const 
> process::Future<double>&)>::_CheckResult<process::Future<void>, 
> process::Future<void> >; _Tp = 
> std::function<process::Future<void>(const process::Future<double>&)>&; 
> _Res = process::Future<void>; _ArgTypes = {const 
> process::Future<double>&}]'
> /usr/local/include/c++/4.8.0/functional:2331:2:   [ skipping 2 
> instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
> /usr/local/include/c++/4.8.0/tuple:521:11:   required from 'class 
> std::tuple<std::function<process::Future<void>(const 
> process::Future<double>&)>, std::_Placeholder<1> >'
> /usr/local/include/c++/4.8.0/functional:1288:29:   required from 
> 'struct std::_Bind<std::_Mem_fn<process::Future<void> 
> (std::function<process::Future<void>(const 
> process::Future<double>&)>::*)(const 
> process::Future<double>&)const>(std::function<process::Future<void>(const 
> process::Future<double>&)>, std::_Placeholder<1>)>'
> ../../../3rdparty/libprocess/include/process/c++11/defer.hpp:237:3:   
> required by substitution of 'template<class R, class T, class P0, 
> class A0> process::_Deferred<decltype (std::bind((& 
> std::function<process::Future<T>(P0)>::operator()), 
> std::function<process::Future<T>(P0)>(), a0))> process::defer(const 
> process::PID<T>&, R (T::*)(P0), A0) [with R = void; T = 
> process::internal::AwaitProcess<double>; P0 = const 
> process::Future<double>&; A0 = std::_Placeholder<1>]'
> ../../../3rdparty/libprocess/include/process/c++11/defer.hpp:237:3:   
> required by substitution of 'template<class R, class T, class P0, 
> class A0> decltype (process::defer(process->.self(), method, a0)) 
> process::defer(const process::Process<T>*, R (T::*)(P0), A0) [with R = 
> void; T = process::internal::AwaitProcess<double>; P0 = const 
> process::Future<double>&; A0 = std::_Placeholder<1>]'
> ../../../3rdparty/libprocess/include/process/collect.hpp:129:70:   
> required from 'void process::internal::AwaitProcess<T>::initialize() 
> [with T = double]'

Re: 4.8.0 Cxx11 compilation issue

Posted by Benjamin Mahler <be...@gmail.com>.
Can you try it with 4.8.2?

I ask because most of the developers and many of the CI jobs compile with
4.8.1 or 4.8.2, so it would be nice to rule out an issue with 4.8.0.


On Tue, Aug 12, 2014 at 4:35 PM, Chinmaya Manjunath <ch...@hedviginc.com>
wrote:

> I just tried it with 4.8.0 and got this. Would think that it could happen
> with 4.8.1 as well.
>
> This error disappears if I configure without cxx11 support, but I see that
> it is a deprecated setting.
>
>
>
>   Benjamin Mahler <be...@gmail.com>
>  August 12, 2014 4:05 PM
> Just curious, do you see this with gcc 4.8.1 / 4.8.2 or only with 4.8.0?
>
>
> On Tue, Aug 12, 2014 at 3:07 PM, Chinmaya Manjunath
> <ch...@hedviginc.com> <ch...@hedviginc.com>
>
>   Chinmaya Manjunath <ch...@hedviginc.com>
>  August 12, 2014 3:07 PM
> Hello Guys:
>
> I am trying to build mesos on Centos6.5 and 4.8.0 g++ and am hitting the
> following issue,  help is appreciated.
>
> Thanks!
>
>
>
> ake[6]: Entering directory
> `/home/chinmaya/work/mesos.old/build/3rdparty/libprocess/3rdparty/stout'
> make[6]: Nothing to be done for `all'.
> make[6]: Leaving directory
> `/home/chinmaya/work/mesos.old/build/3rdparty/libprocess/3rdparty/stout'
> make[6]: Entering directory
> `/home/chinmaya/work/mesos.old/build/3rdparty/libprocess/3rdparty'
> make[6]: Nothing to be done for `all-am'.
> make[6]: Leaving directory
> `/home/chinmaya/work/mesos.old/build/3rdparty/libprocess/3rdparty'
> make[5]: Leaving directory
> `/home/chinmaya/work/mesos.old/build/3rdparty/libprocess/3rdparty'
> make[4]: Leaving directory
> `/home/chinmaya/work/mesos.old/build/3rdparty/libprocess/3rdparty'
> Making all in .
> make[4]: Entering directory
> `/home/chinmaya/work/mesos.old/build/3rdparty/libprocess'
> /bin/sh ./libtool  --tag=CXX   --mode=compile g++
> -DPACKAGE_NAME=\"libprocess\" -DPACKAGE_TARNAME=\"libprocess\"
> -DPACKAGE_VERSION=\"0.0.1\" -DPACKAGE_STRING=\"libprocess\ 0.0.1\"
> -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DPACKAGE=\"libprocess\"
> -DVERSION=\"0.0.1\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1
> -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1
> -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1
> -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DHAVE_PTHREAD=1 -DHAVE_LIBZ=1 -I.
> -I../../../3rdparty/libprocess  -I../../../3rdparty/libprocess/include
> -I../../../3rdparty/libprocess/3rdparty/stout/include
> -I3rdparty/boost-1.53.0 -I3rdparty/glog-0.3.3/src -I3rdparty/libev-4.15
> -I3rdparty/picojson-4f93734  -I3rdparty/ry-http-parser-1c3624a
> -Iparser/include  -g -g2 -O2 -Wno-unused-local-typedefs -std=c++11 -MT
> libprocess_la-metrics.lo -MD -MP -MF .deps/libprocess_la-metrics.Tpo -c -o
> libprocess_la-metrics.lo `test -f 'src/metrics/metrics.cpp' || echo
> '../../../3rdparty/libprocess/'`src/metrics/metrics.cpp
> libtool: compile:  g++ -DPACKAGE_NAME=\"libprocess\"
> -DPACKAGE_TARNAME=\"libprocess\" -DPACKAGE_VERSION=\"0.0.1\"
> "-DPACKAGE_STRING=\"libprocess 0.0.1\"" -DPACKAGE_BUGREPORT=\"\"
> -DPACKAGE_URL=\"\" -DPACKAGE=\"libprocess\" -DVERSION=\"0.0.1\"
> -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1
> -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1
> -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\"
> -DHAVE_PTHREAD=1 -DHAVE_LIBZ=1 -I. -I../../../3rdparty/libprocess
> -I../../../3rdparty/libprocess/include
> -I../../../3rdparty/libprocess/3rdparty/stout/include
> -I3rdparty/boost-1.53.0 -I3rdparty/glog-0.3.3/src -I3rdparty/libev-4.15
> -I3rdparty/picojson-4f93734 -I3rdparty/ry-http-parser-1c3624a
> -Iparser/include -g -g2 -O2 -Wno-unused-local-typedefs -std=c++11 -MT
> libprocess_la-metrics.lo -MD -MP -MF .deps/libprocess_la-metrics.Tpo -c
> ../../../3rdparty/libprocess/src/metrics/metrics.cpp  -fPIC -DPIC -o
> libprocess_la-metrics.o
> In file included from
> ../../../3rdparty/libprocess/include/process/check.hpp:22:0,
>                  from
> ../../../3rdparty/libprocess/include/process/collect.hpp:6,
>                  from
> ../../../3rdparty/libprocess/src/metrics/metrics.cpp:6:
> ../../../3rdparty/libprocess/include/process/future.hpp: In instantiation
> of 'class process::Future<void>':
> /usr/local/include/c++/4.8.0/functional:2177:71:   required by
> substitution of 'template<class _Res, class ... _ArgTypes> template<class
> _Functor> using _Invoke = decltype
> (std::__callable_functor(declval<_Functor&>())((declval<_ArgTypes>)()...))
> [with _Functor = const std::function<process::Future<void>(const
> process::Future<double>&)>&; _Res = process::Future<void>; _ArgTypes =
> {const process::Future<double>&}]'
> /usr/local/include/c++/4.8.0/functional:2331:2:   required by substitution
> of 'template<class _Functor> std::function<_Res(_ArgTypes
> ...)>::_Requires<std::function<_Res(_ArgTypes
> ...)>::_CheckResult<std::function<_Res(_ArgTypes ...)>::_Invoke<_Functor>,
> _Res>, std::function<_Res(_ArgTypes ...)>&> std::function<_Res(_ArgTypes
> ...)>::operator=(_Functor&&) [with _Functor = _Functor; _Res =
> process::Future<void>; _ArgTypes = {const process::Future<double>&}] [with
> _Functor = const std::function<process::Future<void>(const
> process::Future<double>&)>&]'
> /usr/local/include/c++/4.8.0/tuple:236:72:   required from 'struct
> std::_Tuple_impl<0ul, std::function<process::Future<void>(const
> process::Future<double>&)>, std::_Placeholder<1> >'
> /usr/local/include/c++/4.8.0/tuple:521:11:   required from 'class
> std::tuple<std::function<process::Future<void>(const
> process::Future<double>&)>, std::_Placeholder<1> >'
> /usr/local/include/c++/4.8.0/functional:1288:29:   required from 'struct
> std::_Bind<std::_Mem_fn<process::Future<void>
> (std::function<process::Future<void>(const
> process::Future<double>&)>::*)(const
> process::Future<double>&)const>(std::function<process::Future<void>(const
> process::Future<double>&)>, std::_Placeholder<1>)>'
> ../../../3rdparty/libprocess/include/process/c++11/defer.hpp:237:3:
> required by substitution of 'template<class R, class T, class P0, class A0>
> process::_Deferred<decltype (std::bind((&
> std::function<process::Future<T>(P0)>::operator()),
> std::function<process::Future<T>(P0)>(), a0))> process::defer(const
> process::PID<T>&, R (T::*)(P0), A0) [with R = void; T =
> process::internal::AwaitProcess<double>; P0 = const
> process::Future<double>&; A0 = std::_Placeholder<1>]'
> ../../../3rdparty/libprocess/include/process/c++11/defer.hpp:237:3:
> required by substitution of 'template<class R, class T, class P0, class A0>
> decltype (process::defer(process->.self(), method, a0))
> process::defer(const process::Process<T>*, R (T::*)(P0), A0) [with R =
> void; T = process::internal::AwaitProcess<double>; P0 = const
> process::Future<double>&; A0 = std::_Placeholder<1>]'
> ../../../3rdparty/libprocess/include/process/collect.hpp:129:70:
> required from 'void process::internal::AwaitProcess<T>::initialize() [with
> T = double]'
> ../../../3rdparty/libprocess/src/metrics/metrics.cpp:179:1:   required
> from here
> ../../../3rdparty/libprocess/include/process/future.hpp:996:1: error:
> forming reference to void
>  Future<T>::Future(const T& _t)
>  ^
> ../../../3rdparty/libprocess/include/process/future.hpp:1169:10: error:
> forming reference to void
>  const T& Future<T>::get() const
>           ^
> In file included from
> ../../../3rdparty/libprocess/include/process/check.hpp:22:0,
>                  from
> ../../../3rdparty/libprocess/include/process/collect.hpp:6,
>                  from
> ../../../3rdparty/libprocess/src/metrics/metrics.cpp:6:
> ../../../3rdparty/libprocess/include/process/future.hpp:148:44: error:
> forming reference to void
>    typedef lambda::function<void(const T&)> ReadyCallback
>                                            ^
> ../../../3rdparty/libprocess/include/process/future.hpp:208:20: error:
> forming reference to void
>    const Future<T>& onReady(F&& f, Prefer) const
>                     ^
> In file included from
> ../../../3rdparty/libprocess/include/process/check.hpp:22:0,
>                  from
> ../../../3rdparty/libprocess/include/process/collect.hpp:6,
>                  from
> ../../../3rdparty/libprocess/src/metrics/metrics.cpp:6:
> ../../../3rdparty/libprocess/include/process/future.hpp:1519:11: error:
> forming reference to void
>  Future<X> Future<T>::then(const lambda::function<Future<X>(const T&)>& f)
> const
>            ^
> ../../../3rdparty/libprocess/include/process/future.hpp:1539:11: error:
> forming reference to void
>  Future<X> Future<T>::then(const lambda::function<X(const T&)>& f) const
>            ^
> ../../../3rdparty/libprocess/include/process/future.hpp:333:13: error:
> forming reference to void
>    Future<X> then(_Deferred<F>&& f, Prefer) const
>              ^
> ../../../3rdparty/libprocess/include/process/future.hpp:347:13: error:
> forming reference to void
>    Future<X> then(F&& f, Prefer) const
>              ^
> ../../../3rdparty/libprocess/include/process/future.hpp:1588:6: error:
> forming reference to void
>  bool Future<T>::set(const T& _t)
>       ^
> In file included from
> ../../../3rdparty/libprocess/3rdparty/stout/include/stout/check.hpp:28:0,
>                  from
> ../../../3rdparty/libprocess/include/process/check.hpp:19,
>                  from
> ../../../3rdparty/libprocess/include/process/collect.hpp:6,
>                  from
> ../../../3rdparty/libprocess/src/metrics/metrics.cpp:6:
> ../../../3rdparty/libprocess/3rdparty/stout/include/stout/try.hpp: In
> instantiation of 'class Try<void>':
> /usr/local/include/c++/4.8.0/type_traits:1305:35:   required by
> substitution of 'template<class _From1, class _To1> static decltype
> ((__test_aux<_To1>(declval<_From1>()), std::__sfinae_types::__one()))
> std::__is_convertible_helper<_From, _To, false>::__test(int) [with _From1 =
> _From1; _To1 = _To1; _From = process::Future<void>; _To =
> process::Future<void>] [with _From1 = process::Future<void>; _To1 =
> process::Future<void>]'
> /usr/local/include/c++/4.8.0/type_traits:1312:50:   required from
> 'constexpr const bool std::__is_convertible_helper<process::Future<void>,
> process::Future<void>, false>::value'
> /usr/local/include/c++/4.8.0/type_traits:1317:12:   required from 'struct
> std::is_convertible<process::Future<void>, process::Future<void> >'
> /usr/local/include/c++/4.8.0/functional:2181:9:   required from 'struct
> std::function<process::Future<void>(const
> process::Future<double>&)>::_CheckResult<process::Future<void>,
> process::Future<void> >'
> /usr/local/include/c++/4.8.0/functional:2192:63:   required by
> substitution of 'template<class _Res, class ... _ArgTypes> template<class
> _Cond, class _Tp> using _Requires = typename std::enable_if<_Cond:: value,
> _Tp>::type [with _Cond = std::function<process::Future<void>(const
> process::Future<double>&)>::_CheckResult<process::Future<void>,
> process::Future<void> >; _Tp = std::function<process::Future<void>(const
> process::Future<double>&)>&; _Res = process::Future<void>; _ArgTypes =
> {const process::Future<double>&}]'
> /usr/local/include/c++/4.8.0/functional:2331:2:   [ skipping 2
> instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
> /usr/local/include/c++/4.8.0/tuple:521:11:   required from 'class
> std::tuple<std::function<process::Future<void>(const
> process::Future<double>&)>, std::_Placeholder<1> >'
> /usr/local/include/c++/4.8.0/functional:1288:29:   required from 'struct
> std::_Bind<std::_Mem_fn<process::Future<void>
> (std::function<process::Future<void>(const
> process::Future<double>&)>::*)(const
> process::Future<double>&)const>(std::function<process::Future<void>(const
> process::Future<double>&)>, std::_Placeholder<1>)>'
> ../../../3rdparty/libprocess/include/process/c++11/defer.hpp:237:3:
> required by substitution of 'template<class R, class T, class P0, class A0>
> process::_Deferred<decltype (std::bind((&
> std::function<process::Future<T>(P0)>::operator()),
> std::function<process::Future<T>(P0)>(), a0))> process::defer(const
> process::PID<T>&, R (T::*)(P0), A0) [with R = void; T =
> process::internal::AwaitProcess<double>; P0 = const
> process::Future<double>&; A0 = std::_Placeholder<1>]'
> ../../../3rdparty/libprocess/include/process/c++11/defer.hpp:237:3:
> required by substitution of 'template<class R, class T, class P0, class A0>
> decltype (process::defer(process->.self(), method, a0))
> process::defer(const process::Process<T>*, R (T::*)(P0), A0) [with R =
> void; T = process::internal::AwaitProcess<double>; P0 = const
> process::Future<double>&; A0 = std::_Placeholder<1>]'
> ../../../3rdparty/libprocess/include/process/collect.hpp:129:70:
> required from 'void process::internal::AwaitProcess<T>::initialize() [with
> T = double]'
>
>

Re: 4.8.0 Cxx11 compilation issue

Posted by Chinmaya Manjunath <ch...@hedviginc.com>.
I just tried it with 4.8.0 and got this. Would think that it could 
happen with 4.8.1 as well.

This error disappears if I configure without cxx11 support, but I see 
that it is a deprecated setting.



> Benjamin Mahler <ma...@gmail.com>
> August 12, 2014 4:05 PM
> Just curious, do you see this with gcc 4.8.1 / 4.8.2 or only with 4.8.0?
>
>
> On Tue, Aug 12, 2014 at 3:07 PM, Chinmaya Manjunath 
> <ch...@hedviginc.com>
>
> Chinmaya Manjunath <ma...@hedviginc.com>
> August 12, 2014 3:07 PM
> Hello Guys:
>
> I am trying to build mesos on Centos6.5 and 4.8.0 g++ and am hitting 
> the following issue,  help is appreciated.
>
> Thanks!
>
>
>
> ake[6]: Entering directory 
> `/home/chinmaya/work/mesos.old/build/3rdparty/libprocess/3rdparty/stout'
> make[6]: Nothing to be done for `all'.
> make[6]: Leaving directory 
> `/home/chinmaya/work/mesos.old/build/3rdparty/libprocess/3rdparty/stout'
> make[6]: Entering directory 
> `/home/chinmaya/work/mesos.old/build/3rdparty/libprocess/3rdparty'
> make[6]: Nothing to be done for `all-am'.
> make[6]: Leaving directory 
> `/home/chinmaya/work/mesos.old/build/3rdparty/libprocess/3rdparty'
> make[5]: Leaving directory 
> `/home/chinmaya/work/mesos.old/build/3rdparty/libprocess/3rdparty'
> make[4]: Leaving directory 
> `/home/chinmaya/work/mesos.old/build/3rdparty/libprocess/3rdparty'
> Making all in .
> make[4]: Entering directory 
> `/home/chinmaya/work/mesos.old/build/3rdparty/libprocess'
> /bin/sh ./libtool  --tag=CXX   --mode=compile g++ 
> -DPACKAGE_NAME=\"libprocess\" -DPACKAGE_TARNAME=\"libprocess\" 
> -DPACKAGE_VERSION=\"0.0.1\" -DPACKAGE_STRING=\"libprocess\ 0.0.1\" 
> -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DPACKAGE=\"libprocess\" 
> -DVERSION=\"0.0.1\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 
> -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 
> -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 
> -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 
> -DLT_OBJDIR=\".libs/\" -DHAVE_PTHREAD=1 -DHAVE_LIBZ=1 -I. 
> -I../../../3rdparty/libprocess  -I../../../3rdparty/libprocess/include 
> -I../../../3rdparty/libprocess/3rdparty/stout/include 
> -I3rdparty/boost-1.53.0 -I3rdparty/glog-0.3.3/src 
> -I3rdparty/libev-4.15 -I3rdparty/picojson-4f93734  
> -I3rdparty/ry-http-parser-1c3624a  -Iparser/include  -g -g2 -O2 
> -Wno-unused-local-typedefs -std=c++11 -MT libprocess_la-metrics.lo -MD 
> -MP -MF .deps/libprocess_la-metrics.Tpo -c -o libprocess_la-metrics.lo 
> `test -f 'src/metrics/metrics.cpp' || echo 
> '../../../3rdparty/libprocess/'`src/metrics/metrics.cpp
> libtool: compile:  g++ -DPACKAGE_NAME=\"libprocess\" 
> -DPACKAGE_TARNAME=\"libprocess\" -DPACKAGE_VERSION=\"0.0.1\" 
> "-DPACKAGE_STRING=\"libprocess 0.0.1\"" -DPACKAGE_BUGREPORT=\"\" 
> -DPACKAGE_URL=\"\" -DPACKAGE=\"libprocess\" -DVERSION=\"0.0.1\" 
> -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 
> -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 
> -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 
> -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" 
> -DHAVE_PTHREAD=1 -DHAVE_LIBZ=1 -I. -I../../../3rdparty/libprocess 
> -I../../../3rdparty/libprocess/include 
> -I../../../3rdparty/libprocess/3rdparty/stout/include 
> -I3rdparty/boost-1.53.0 -I3rdparty/glog-0.3.3/src 
> -I3rdparty/libev-4.15 -I3rdparty/picojson-4f93734 
> -I3rdparty/ry-http-parser-1c3624a -Iparser/include -g -g2 -O2 
> -Wno-unused-local-typedefs -std=c++11 -MT libprocess_la-metrics.lo -MD 
> -MP -MF .deps/libprocess_la-metrics.Tpo -c 
> ../../../3rdparty/libprocess/src/metrics/metrics.cpp  -fPIC -DPIC -o 
> libprocess_la-metrics.o
> In file included from 
> ../../../3rdparty/libprocess/include/process/check.hpp:22:0,
>                  from 
> ../../../3rdparty/libprocess/include/process/collect.hpp:6,
>                  from 
> ../../../3rdparty/libprocess/src/metrics/metrics.cpp:6:
> ../../../3rdparty/libprocess/include/process/future.hpp: In 
> instantiation of 'class process::Future<void>':
> /usr/local/include/c++/4.8.0/functional:2177:71:   required by 
> substitution of 'template<class _Res, class ... _ArgTypes> 
> template<class _Functor> using _Invoke = decltype 
> (std::__callable_functor(declval<_Functor&>())((declval<_ArgTypes>)()...)) 
> [with _Functor = const std::function<process::Future<void>(const 
> process::Future<double>&)>&; _Res = process::Future<void>; _ArgTypes = 
> {const process::Future<double>&}]'
> /usr/local/include/c++/4.8.0/functional:2331:2:   required by 
> substitution of 'template<class _Functor> std::function<_Res(_ArgTypes 
> ...)>::_Requires<std::function<_Res(_ArgTypes 
> ...)>::_CheckResult<std::function<_Res(_ArgTypes 
> ...)>::_Invoke<_Functor>, _Res>, std::function<_Res(_ArgTypes ...)>&> 
> std::function<_Res(_ArgTypes ...)>::operator=(_Functor&&) [with 
> _Functor = _Functor; _Res = process::Future<void>; _ArgTypes = {const 
> process::Future<double>&}] [with _Functor = const 
> std::function<process::Future<void>(const process::Future<double>&)>&]'
> /usr/local/include/c++/4.8.0/tuple:236:72:   required from 'struct 
> std::_Tuple_impl<0ul, std::function<process::Future<void>(const 
> process::Future<double>&)>, std::_Placeholder<1> >'
> /usr/local/include/c++/4.8.0/tuple:521:11:   required from 'class 
> std::tuple<std::function<process::Future<void>(const 
> process::Future<double>&)>, std::_Placeholder<1> >'
> /usr/local/include/c++/4.8.0/functional:1288:29:   required from 
> 'struct std::_Bind<std::_Mem_fn<process::Future<void> 
> (std::function<process::Future<void>(const 
> process::Future<double>&)>::*)(const 
> process::Future<double>&)const>(std::function<process::Future<void>(const 
> process::Future<double>&)>, std::_Placeholder<1>)>'
> ../../../3rdparty/libprocess/include/process/c++11/defer.hpp:237:3:   
> required by substitution of 'template<class R, class T, class P0, 
> class A0> process::_Deferred<decltype (std::bind((& 
> std::function<process::Future<T>(P0)>::operator()), 
> std::function<process::Future<T>(P0)>(), a0))> process::defer(const 
> process::PID<T>&, R (T::*)(P0), A0) [with R = void; T = 
> process::internal::AwaitProcess<double>; P0 = const 
> process::Future<double>&; A0 = std::_Placeholder<1>]'
> ../../../3rdparty/libprocess/include/process/c++11/defer.hpp:237:3:   
> required by substitution of 'template<class R, class T, class P0, 
> class A0> decltype (process::defer(process->.self(), method, a0)) 
> process::defer(const process::Process<T>*, R (T::*)(P0), A0) [with R = 
> void; T = process::internal::AwaitProcess<double>; P0 = const 
> process::Future<double>&; A0 = std::_Placeholder<1>]'
> ../../../3rdparty/libprocess/include/process/collect.hpp:129:70:   
> required from 'void process::internal::AwaitProcess<T>::initialize() 
> [with T = double]'
> ../../../3rdparty/libprocess/src/metrics/metrics.cpp:179:1:   required 
> from here
> ../../../3rdparty/libprocess/include/process/future.hpp:996:1: error: 
> forming reference to void
>  Future<T>::Future(const T& _t)
>  ^
> ../../../3rdparty/libprocess/include/process/future.hpp:1169:10: 
> error: forming reference to void
>  const T& Future<T>::get() const
>           ^
> In file included from 
> ../../../3rdparty/libprocess/include/process/check.hpp:22:0,
>                  from 
> ../../../3rdparty/libprocess/include/process/collect.hpp:6,
>                  from 
> ../../../3rdparty/libprocess/src/metrics/metrics.cpp:6:
> ../../../3rdparty/libprocess/include/process/future.hpp:148:44: error: 
> forming reference to void
>    typedef lambda::function<void(const T&)> ReadyCallback
>                                            ^
> ../../../3rdparty/libprocess/include/process/future.hpp:208:20: error: 
> forming reference to void
>    const Future<T>& onReady(F&& f, Prefer) const
>                     ^
> In file included from 
> ../../../3rdparty/libprocess/include/process/check.hpp:22:0,
>                  from 
> ../../../3rdparty/libprocess/include/process/collect.hpp:6,
>                  from 
> ../../../3rdparty/libprocess/src/metrics/metrics.cpp:6:
> ../../../3rdparty/libprocess/include/process/future.hpp:1519:11: 
> error: forming reference to void
>  Future<X> Future<T>::then(const lambda::function<Future<X>(const 
> T&)>& f) const
>            ^
> ../../../3rdparty/libprocess/include/process/future.hpp:1539:11: 
> error: forming reference to void
>  Future<X> Future<T>::then(const lambda::function<X(const T&)>& f) const
>            ^
> ../../../3rdparty/libprocess/include/process/future.hpp:333:13: error: 
> forming reference to void
>    Future<X> then(_Deferred<F>&& f, Prefer) const
>              ^
> ../../../3rdparty/libprocess/include/process/future.hpp:347:13: error: 
> forming reference to void
>    Future<X> then(F&& f, Prefer) const
>              ^
> ../../../3rdparty/libprocess/include/process/future.hpp:1588:6: error: 
> forming reference to void
>  bool Future<T>::set(const T& _t)
>       ^
> In file included from 
> ../../../3rdparty/libprocess/3rdparty/stout/include/stout/check.hpp:28:0,
>                  from 
> ../../../3rdparty/libprocess/include/process/check.hpp:19,
>                  from 
> ../../../3rdparty/libprocess/include/process/collect.hpp:6,
>                  from 
> ../../../3rdparty/libprocess/src/metrics/metrics.cpp:6:
> ../../../3rdparty/libprocess/3rdparty/stout/include/stout/try.hpp: In 
> instantiation of 'class Try<void>':
> /usr/local/include/c++/4.8.0/type_traits:1305:35:   required by 
> substitution of 'template<class _From1, class _To1> static decltype 
> ((__test_aux<_To1>(declval<_From1>()), std::__sfinae_types::__one())) 
> std::__is_convertible_helper<_From, _To, false>::__test(int) [with 
> _From1 = _From1; _To1 = _To1; _From = process::Future<void>; _To = 
> process::Future<void>] [with _From1 = process::Future<void>; _To1 = 
> process::Future<void>]'
> /usr/local/include/c++/4.8.0/type_traits:1312:50:   required from 
> 'constexpr const bool 
> std::__is_convertible_helper<process::Future<void>, 
> process::Future<void>, false>::value'
> /usr/local/include/c++/4.8.0/type_traits:1317:12:   required from 
> 'struct std::is_convertible<process::Future<void>, 
> process::Future<void> >'
> /usr/local/include/c++/4.8.0/functional:2181:9:   required from 
> 'struct std::function<process::Future<void>(const 
> process::Future<double>&)>::_CheckResult<process::Future<void>, 
> process::Future<void> >'
> /usr/local/include/c++/4.8.0/functional:2192:63:   required by 
> substitution of 'template<class _Res, class ... _ArgTypes> 
> template<class _Cond, class _Tp> using _Requires = typename 
> std::enable_if<_Cond:: value, _Tp>::type [with _Cond = 
> std::function<process::Future<void>(const 
> process::Future<double>&)>::_CheckResult<process::Future<void>, 
> process::Future<void> >; _Tp = 
> std::function<process::Future<void>(const process::Future<double>&)>&; 
> _Res = process::Future<void>; _ArgTypes = {const 
> process::Future<double>&}]'
> /usr/local/include/c++/4.8.0/functional:2331:2:   [ skipping 2 
> instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
> /usr/local/include/c++/4.8.0/tuple:521:11:   required from 'class 
> std::tuple<std::function<process::Future<void>(const 
> process::Future<double>&)>, std::_Placeholder<1> >'
> /usr/local/include/c++/4.8.0/functional:1288:29:   required from 
> 'struct std::_Bind<std::_Mem_fn<process::Future<void> 
> (std::function<process::Future<void>(const 
> process::Future<double>&)>::*)(const 
> process::Future<double>&)const>(std::function<process::Future<void>(const 
> process::Future<double>&)>, std::_Placeholder<1>)>'
> ../../../3rdparty/libprocess/include/process/c++11/defer.hpp:237:3:   
> required by substitution of 'template<class R, class T, class P0, 
> class A0> process::_Deferred<decltype (std::bind((& 
> std::function<process::Future<T>(P0)>::operator()), 
> std::function<process::Future<T>(P0)>(), a0))> process::defer(const 
> process::PID<T>&, R (T::*)(P0), A0) [with R = void; T = 
> process::internal::AwaitProcess<double>; P0 = const 
> process::Future<double>&; A0 = std::_Placeholder<1>]'
> ../../../3rdparty/libprocess/include/process/c++11/defer.hpp:237:3:   
> required by substitution of 'template<class R, class T, class P0, 
> class A0> decltype (process::defer(process->.self(), method, a0)) 
> process::defer(const process::Process<T>*, R (T::*)(P0), A0) [with R = 
> void; T = process::internal::AwaitProcess<double>; P0 = const 
> process::Future<double>&; A0 = std::_Placeholder<1>]'
> ../../../3rdparty/libprocess/include/process/collect.hpp:129:70:   
> required from 'void process::internal::AwaitProcess<T>::initialize() 
> [with T = double]'

Re: 4.8.0 Cxx11 compilation issue

Posted by Benjamin Mahler <be...@gmail.com>.
Just curious, do you see this with gcc 4.8.1 / 4.8.2 or only with 4.8.0?


On Tue, Aug 12, 2014 at 3:07 PM, Chinmaya Manjunath <ch...@hedviginc.com>
wrote:

> Hello Guys:
>
> I am trying to build mesos on Centos6.5 and 4.8.0 g++ and am hitting the
> following issue,  help is appreciated.
>
> Thanks!
>
>
>
> ake[6]: Entering directory `/home/chinmaya/work/mesos.
> old/build/3rdparty/libprocess/3rdparty/stout'
> make[6]: Nothing to be done for `all'.
> make[6]: Leaving directory `/home/chinmaya/work/mesos.
> old/build/3rdparty/libprocess/3rdparty/stout'
> make[6]: Entering directory `/home/chinmaya/work/mesos.
> old/build/3rdparty/libprocess/3rdparty'
> make[6]: Nothing to be done for `all-am'.
> make[6]: Leaving directory `/home/chinmaya/work/mesos.
> old/build/3rdparty/libprocess/3rdparty'
> make[5]: Leaving directory `/home/chinmaya/work/mesos.
> old/build/3rdparty/libprocess/3rdparty'
> make[4]: Leaving directory `/home/chinmaya/work/mesos.
> old/build/3rdparty/libprocess/3rdparty'
> Making all in .
> make[4]: Entering directory `/home/chinmaya/work/mesos.
> old/build/3rdparty/libprocess'
> /bin/sh ./libtool  --tag=CXX   --mode=compile g++
> -DPACKAGE_NAME=\"libprocess\" -DPACKAGE_TARNAME=\"libprocess\"
> -DPACKAGE_VERSION=\"0.0.1\" -DPACKAGE_STRING=\"libprocess\ 0.0.1\"
> -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DPACKAGE=\"libprocess\"
> -DVERSION=\"0.0.1\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1
> -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1
> -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1
> -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DHAVE_PTHREAD=1 -DHAVE_LIBZ=1 -I.
> -I../../../3rdparty/libprocess  -I../../../3rdparty/libprocess/include
> -I../../../3rdparty/libprocess/3rdparty/stout/include
> -I3rdparty/boost-1.53.0 -I3rdparty/glog-0.3.3/src -I3rdparty/libev-4.15
> -I3rdparty/picojson-4f93734  -I3rdparty/ry-http-parser-1c3624a
>  -Iparser/include  -g -g2 -O2 -Wno-unused-local-typedefs -std=c++11 -MT
> libprocess_la-metrics.lo -MD -MP -MF .deps/libprocess_la-metrics.Tpo -c
> -o libprocess_la-metrics.lo `test -f 'src/metrics/metrics.cpp' || echo
> '../../../3rdparty/libprocess/'`src/metrics/metrics.cpp
> libtool: compile:  g++ -DPACKAGE_NAME=\"libprocess\" -DPACKAGE_TARNAME=\"libprocess\"
> -DPACKAGE_VERSION=\"0.0.1\" "-DPACKAGE_STRING=\"libprocess 0.0.1\""
> -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DPACKAGE=\"libprocess\"
> -DVERSION=\"0.0.1\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1
> -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1
> -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1
> -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DHAVE_PTHREAD=1 -DHAVE_LIBZ=1 -I.
> -I../../../3rdparty/libprocess -I../../../3rdparty/libprocess/include
> -I../../../3rdparty/libprocess/3rdparty/stout/include
> -I3rdparty/boost-1.53.0 -I3rdparty/glog-0.3.3/src -I3rdparty/libev-4.15
> -I3rdparty/picojson-4f93734 -I3rdparty/ry-http-parser-1c3624a
> -Iparser/include -g -g2 -O2 -Wno-unused-local-typedefs -std=c++11 -MT
> libprocess_la-metrics.lo -MD -MP -MF .deps/libprocess_la-metrics.Tpo -c
> ../../../3rdparty/libprocess/src/metrics/metrics.cpp  -fPIC -DPIC -o
> libprocess_la-metrics.o
> In file included from ../../../3rdparty/libprocess/
> include/process/check.hpp:22:0,
>                  from ../../../3rdparty/libprocess/
> include/process/collect.hpp:6,
>                  from ../../../3rdparty/libprocess/
> src/metrics/metrics.cpp:6:
> ../../../3rdparty/libprocess/include/process/future.hpp: In instantiation
> of 'class process::Future<void>':
> /usr/local/include/c++/4.8.0/functional:2177:71:   required by
> substitution of 'template<class _Res, class ... _ArgTypes> template<class
> _Functor> using _Invoke = decltype (std::__callable_functor(
> declval<_Functor&>())((declval<_ArgTypes>)()...)) [with _Functor = const
> std::function<process::Future<void>(const process::Future<double>&)>&;
> _Res = process::Future<void>; _ArgTypes = {const process::Future<double>&}]'
> /usr/local/include/c++/4.8.0/functional:2331:2:   required by
> substitution of 'template<class _Functor> std::function<_Res(_ArgTypes
> ...)>::_Requires<std::function<_Res(_ArgTypes ...)>::_CheckResult<std::function<_Res(_ArgTypes
> ...)>::_Invoke<_Functor>, _Res>, std::function<_Res(_ArgTypes ...)>&>
> std::function<_Res(_ArgTypes ...)>::operator=(_Functor&&) [with _Functor =
> _Functor; _Res = process::Future<void>; _ArgTypes = {const
> process::Future<double>&}] [with _Functor = const
> std::function<process::Future<void>(const process::Future<double>&)>&]'
> /usr/local/include/c++/4.8.0/tuple:236:72:   required from 'struct
> std::_Tuple_impl<0ul, std::function<process::Future<void>(const
> process::Future<double>&)>, std::_Placeholder<1> >'
> /usr/local/include/c++/4.8.0/tuple:521:11:   required from 'class
> std::tuple<std::function<process::Future<void>(const
> process::Future<double>&)>, std::_Placeholder<1> >'
> /usr/local/include/c++/4.8.0/functional:1288:29:   required from 'struct
> std::_Bind<std::_Mem_fn<process::Future<void> (std::function<process::Future<void>(const
> process::Future<double>&)>::*)(const process::Future<double>&)
> const>(std::function<process::Future<void>(const
> process::Future<double>&)>, std::_Placeholder<1>)>'
> ../../../3rdparty/libprocess/include/process/c++11/defer.hpp:237:3:
> required by substitution of 'template<class R, class T, class P0, class A0>
> process::_Deferred<decltype (std::bind((& std::function<process::Future<T>(P0)>::operator()),
> std::function<process::Future<T>(P0)>(), a0))> process::defer(const
> process::PID<T>&, R (T::*)(P0), A0) [with R = void; T = process::internal::AwaitProcess<double>;
> P0 = const process::Future<double>&; A0 = std::_Placeholder<1>]'
> ../../../3rdparty/libprocess/include/process/c++11/defer.hpp:237:3:
> required by substitution of 'template<class R, class T, class P0, class A0>
> decltype (process::defer(process->.self(), method, a0))
> process::defer(const process::Process<T>*, R (T::*)(P0), A0) [with R =
> void; T = process::internal::AwaitProcess<double>; P0 = const
> process::Future<double>&; A0 = std::_Placeholder<1>]'
> ../../../3rdparty/libprocess/include/process/collect.hpp:129:70:
> required from 'void process::internal::AwaitProcess<T>::initialize()
> [with T = double]'
> ../../../3rdparty/libprocess/src/metrics/metrics.cpp:179:1:   required
> from here
> ../../../3rdparty/libprocess/include/process/future.hpp:996:1: error:
> forming reference to void
>  Future<T>::Future(const T& _t)
>  ^
> ../../../3rdparty/libprocess/include/process/future.hpp:1169:10: error:
> forming reference to void
>  const T& Future<T>::get() const
>           ^
> In file included from ../../../3rdparty/libprocess/
> include/process/check.hpp:22:0,
>                  from ../../../3rdparty/libprocess/
> include/process/collect.hpp:6,
>                  from ../../../3rdparty/libprocess/
> src/metrics/metrics.cpp:6:
> ../../../3rdparty/libprocess/include/process/future.hpp:148:44: error:
> forming reference to void
>    typedef lambda::function<void(const T&)> ReadyCallback
>                                            ^
> ../../../3rdparty/libprocess/include/process/future.hpp:208:20: error:
> forming reference to void
>    const Future<T>& onReady(F&& f, Prefer) const
>                     ^
> In file included from ../../../3rdparty/libprocess/
> include/process/check.hpp:22:0,
>                  from ../../../3rdparty/libprocess/
> include/process/collect.hpp:6,
>                  from ../../../3rdparty/libprocess/
> src/metrics/metrics.cpp:6:
> ../../../3rdparty/libprocess/include/process/future.hpp:1519:11: error:
> forming reference to void
>  Future<X> Future<T>::then(const lambda::function<Future<X>(const T&)>&
> f) const
>            ^
> ../../../3rdparty/libprocess/include/process/future.hpp:1539:11: error:
> forming reference to void
>  Future<X> Future<T>::then(const lambda::function<X(const T&)>& f) const
>            ^
> ../../../3rdparty/libprocess/include/process/future.hpp:333:13: error:
> forming reference to void
>    Future<X> then(_Deferred<F>&& f, Prefer) const
>              ^
> ../../../3rdparty/libprocess/include/process/future.hpp:347:13: error:
> forming reference to void
>    Future<X> then(F&& f, Prefer) const
>              ^
> ../../../3rdparty/libprocess/include/process/future.hpp:1588:6: error:
> forming reference to void
>  bool Future<T>::set(const T& _t)
>       ^
> In file included from ../../../3rdparty/libprocess/
> 3rdparty/stout/include/stout/check.hpp:28:0,
>                  from ../../../3rdparty/libprocess/
> include/process/check.hpp:19,
>                  from ../../../3rdparty/libprocess/
> include/process/collect.hpp:6,
>                  from ../../../3rdparty/libprocess/
> src/metrics/metrics.cpp:6:
> ../../../3rdparty/libprocess/3rdparty/stout/include/stout/try.hpp: In
> instantiation of 'class Try<void>':
> /usr/local/include/c++/4.8.0/type_traits:1305:35:   required by
> substitution of 'template<class _From1, class _To1> static decltype
> ((__test_aux<_To1>(declval<_From1>()), std::__sfinae_types::__one()))
> std::__is_convertible_helper<_From, _To, false>::__test(int) [with _From1
> = _From1; _To1 = _To1; _From = process::Future<void>; _To =
> process::Future<void>] [with _From1 = process::Future<void>; _To1 =
> process::Future<void>]'
> /usr/local/include/c++/4.8.0/type_traits:1312:50:   required from
> 'constexpr const bool std::__is_convertible_helper<process::Future<void>,
> process::Future<void>, false>::value'
> /usr/local/include/c++/4.8.0/type_traits:1317:12:   required from 'struct
> std::is_convertible<process::Future<void>, process::Future<void> >'
> /usr/local/include/c++/4.8.0/functional:2181:9:   required from 'struct
> std::function<process::Future<void>(const process::Future<double>&)>::_
> CheckResult<process::Future<void>, process::Future<void> >'
> /usr/local/include/c++/4.8.0/functional:2192:63:   required by
> substitution of 'template<class _Res, class ... _ArgTypes> template<class
> _Cond, class _Tp> using _Requires = typename std::enable_if<_Cond:: value,
> _Tp>::type [with _Cond = std::function<process::Future<void>(const
> process::Future<double>&)>::_CheckResult<process::Future<void>,
> process::Future<void> >; _Tp = std::function<process::Future<void>(const
> process::Future<double>&)>&; _Res = process::Future<void>; _ArgTypes =
> {const process::Future<double>&}]'
> /usr/local/include/c++/4.8.0/functional:2331:2:   [ skipping 2
> instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
> /usr/local/include/c++/4.8.0/tuple:521:11:   required from 'class
> std::tuple<std::function<process::Future<void>(const
> process::Future<double>&)>, std::_Placeholder<1> >'
> /usr/local/include/c++/4.8.0/functional:1288:29:   required from 'struct
> std::_Bind<std::_Mem_fn<process::Future<void> (std::function<process::Future<void>(const
> process::Future<double>&)>::*)(const process::Future<double>&)
> const>(std::function<process::Future<void>(const
> process::Future<double>&)>, std::_Placeholder<1>)>'
> ../../../3rdparty/libprocess/include/process/c++11/defer.hpp:237:3:
> required by substitution of 'template<class R, class T, class P0, class A0>
> process::_Deferred<decltype (std::bind((& std::function<process::Future<T>(P0)>::operator()),
> std::function<process::Future<T>(P0)>(), a0))> process::defer(const
> process::PID<T>&, R (T::*)(P0), A0) [with R = void; T = process::internal::AwaitProcess<double>;
> P0 = const process::Future<double>&; A0 = std::_Placeholder<1>]'
> ../../../3rdparty/libprocess/include/process/c++11/defer.hpp:237:3:
> required by substitution of 'template<class R, class T, class P0, class A0>
> decltype (process::defer(process->.self(), method, a0))
> process::defer(const process::Process<T>*, R (T::*)(P0), A0) [with R =
> void; T = process::internal::AwaitProcess<double>; P0 = const
> process::Future<double>&; A0 = std::_Placeholder<1>]'
> ../../../3rdparty/libprocess/include/process/collect.hpp:129:70:
> required from 'void process::internal::AwaitProcess<T>::initialize()
> [with T = double]'
>