[GH-ISSUE #1384] Unable to compile SecureSocket.cpp on latest master and v2.4.0 #1073

Open
opened 2026-05-05 07:26:50 -06:00 by gitea-mirror · 2 comments
Owner

Originally created by @razorback16 on GitHub (Nov 4, 2021).
Original GitHub issue: https://github.com/debauchee/barrier/issues/1384

What happened?

$ make
Scanning dependencies of target gmock
[ 0%] Building CXX object src/CMakeFiles/gmock.dir//ext/gmock/src/gmock-all.cc.o
[ 1%] Linking CXX static library libgmock.a
[ 1%] Built target gmock
Scanning dependencies of target gtest
[ 1%] Building CXX object src/CMakeFiles/gtest.dir/
/ext/gtest/src/gtest-all.cc.o
[ 1%] Linking CXX static library libgtest.a
[ 1%] Built target gtest
Scanning dependencies of target arch
[ 1%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/Arch.cpp.o
[ 1%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/ArchConsoleStd.cpp.o
[ 2%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/ArchDaemonNone.cpp.o
[ 2%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/IArchString.cpp.o
[ 3%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/unix/ArchConsoleUnix.cpp.o
[ 3%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/unix/ArchDaemonUnix.cpp.o
[ 4%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/unix/ArchInternetUnix.cpp.o
[ 4%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/unix/ArchLogUnix.cpp.o
[ 5%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/unix/ArchMultithreadPosix.cpp.o
[ 5%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/unix/ArchNetworkBSD.cpp.o
[ 5%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/unix/ArchSleepUnix.cpp.o
[ 6%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/unix/ArchStringUnix.cpp.o
[ 6%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/unix/ArchSystemUnix.cpp.o
[ 7%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/unix/ArchTaskBarXWindows.cpp.o
[ 7%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/unix/ArchTimeUnix.cpp.o
[ 8%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/unix/XArchUnix.cpp.o
[ 8%] Linking CXX static library libarch.a
[ 8%] Built target arch
Scanning dependencies of target common
[ 8%] Building CXX object src/lib/common/CMakeFiles/common.dir/DataDirectories_static.cpp.o
[ 9%] Building CXX object src/lib/common/CMakeFiles/common.dir/Version.cpp.o
[ 9%] Building CXX object src/lib/common/CMakeFiles/common.dir/unix/DataDirectories.cpp.o
[ 10%] Linking CXX static library libcommon.a
[ 10%] Built target common
Scanning dependencies of target base
[ 10%] Building CXX object src/lib/base/CMakeFiles/base.dir/Event.cpp.o
[ 11%] Building CXX object src/lib/base/CMakeFiles/base.dir/EventQueue.cpp.o
[ 11%] Building CXX object src/lib/base/CMakeFiles/base.dir/EventTypes.cpp.o
[ 12%] Building CXX object src/lib/base/CMakeFiles/base.dir/FunctionEventJob.cpp.o
[ 12%] Building CXX object src/lib/base/CMakeFiles/base.dir/Log.cpp.o
[ 12%] Building CXX object src/lib/base/CMakeFiles/base.dir/NonBlockingStream.cpp.o
[ 13%] Building CXX object src/lib/base/CMakeFiles/base.dir/SimpleEventQueueBuffer.cpp.o
[ 13%] Building CXX object src/lib/base/CMakeFiles/base.dir/Stopwatch.cpp.o
[ 14%] Building CXX object src/lib/base/CMakeFiles/base.dir/String.cpp.o
[ 14%] Building CXX object src/lib/base/CMakeFiles/base.dir/Unicode.cpp.o
[ 15%] Building CXX object src/lib/base/CMakeFiles/base.dir/XBase.cpp.o
[ 15%] Building CXX object src/lib/base/CMakeFiles/base.dir/log_outputters.cpp.o
[ 16%] Linking CXX static library libbase.a
[ 16%] Built target base
Scanning dependencies of target mt
[ 17%] Building CXX object src/lib/mt/CMakeFiles/mt.dir/CondVar.cpp.o
[ 17%] Building CXX object src/lib/mt/CMakeFiles/mt.dir/Lock.cpp.o
[ 17%] Building CXX object src/lib/mt/CMakeFiles/mt.dir/Mutex.cpp.o
[ 18%] Building CXX object src/lib/mt/CMakeFiles/mt.dir/Thread.cpp.o
[ 18%] Building CXX object src/lib/mt/CMakeFiles/mt.dir/XMT.cpp.o
[ 19%] Linking CXX static library libmt.a
[ 19%] Built target mt
Scanning dependencies of target io
[ 20%] Building CXX object src/lib/io/CMakeFiles/io.dir/StreamBuffer.cpp.o
[ 20%] Building CXX object src/lib/io/CMakeFiles/io.dir/StreamFilter.cpp.o
[ 21%] Building CXX object src/lib/io/CMakeFiles/io.dir/XIO.cpp.o
[ 21%] Building CXX object src/lib/io/CMakeFiles/io.dir/filesystem.cpp.o
[ 22%] Linking CXX static library libio.a
[ 22%] Built target io
Scanning dependencies of target net
[ 22%] Building CXX object src/lib/net/CMakeFiles/net.dir/FingerprintData.cpp.o
[ 23%] Building CXX object src/lib/net/CMakeFiles/net.dir/FingerprintDatabase.cpp.o
[ 23%] Building CXX object src/lib/net/CMakeFiles/net.dir/IDataSocket.cpp.o
[ 24%] Building CXX object src/lib/net/CMakeFiles/net.dir/NetworkAddress.cpp.o
[ 24%] Building CXX object src/lib/net/CMakeFiles/net.dir/SecureListenSocket.cpp.o
[ 24%] Building CXX object src/lib/net/CMakeFiles/net.dir/SecureSocket.cpp.o
/home/subhagato/Downloads/barrier/src/lib/net/SecureSocket.cpp: In instantiation of ‘SecureSocket::secureConnect()::<lambda(auto:1, auto:2, auto:3, auto:4)> [with auto:1 = ISocketMultiplexerJob*; auto:2 = bool; auto:3 = bool; auto:4 = bool]’:
/usr/include/c++/5/type_traits:2346:26: required by substitution of ‘template<class _Fn, class ... _Args> static std::__success_type<decltype (declval<_Fn>()((declval<_Args>)()...))> std::__result_of_other_impl::_S_test(int) [with _Fn = SecureSocket::secureConnect()::<lambda(auto:1, auto:2, auto:3, auto:4)>; _Args = {ISocketMultiplexerJob*, bool, bool, bool}]’
/usr/include/c++/5/type_traits:2357:55: required from ‘struct std::__result_of_impl<false, false, SecureSocket::secureConnect()::<lambda(auto:1, auto:2, auto:3, auto:4)>, ISocketMultiplexerJob*, bool, bool, bool>’
/usr/include/c++/5/type_traits:2361:12: required from ‘class std::result_of<SecureSocket::secureConnect()::<lambda(auto:1, auto:2, auto:3, auto:4)>(ISocketMultiplexerJob*, bool, bool, bool)>’
/usr/include/c++/5/functional:2053:9: required by substitution of ‘template<class _Functor, class, class> std::function<_Res(_ArgTypes ...)>::function(_Functor) [with _Functor = SecureSocket::secureConnect()::<lambda(auto:1, auto:2, auto:3, auto:4)>; = void; = ]’
/usr/include/c++/5/bits/unique_ptr.h:765:69: required from ‘typename std::_MakeUniq<_Tp>::__single_object std::make_unique(_Args&& ...) [with _Tp = TSocketMultiplexerMethodJob; _Args = {SecureSocket::secureConnect()::<lambda(auto:1, auto:2, auto:3, auto:4)>, ArchSocketImpl*, bool, bool}; typename std::_MakeUniq<_Tp>::__single_object = std::unique_ptr<TSocketMultiplexerMethodJob, std::default_delete >]’
/home/subhagato/Downloads/barrier/src/lib/net/SecureSocket.cpp:145:97: required from here
/home/subhagato/Downloads/barrier/src/lib/net/SecureSocket.cpp:144:95: error: cannot call member function ‘MultiplexerJobStatus SecureSocket::serviceConnect(ISocketMultiplexerJob*, bool, bool, bool)’ without object
{ return serviceConnect(j, r, w, e); },
^
In file included from /usr/include/c++/5/memory:81:0,
from /home/subhagato/Downloads/barrier/src/./lib/net/ISocketMultiplexerJob.h:23,
from /home/subhagato/Downloads/barrier/src/./lib/net/TCPSocket.h:22,
from /home/subhagato/Downloads/barrier/src/lib/net/SecureSocket.h:21,
from /home/subhagato/Downloads/barrier/src/lib/net/SecureSocket.cpp:18:
/usr/include/c++/5/bits/unique_ptr.h: In instantiation of ‘typename std::_MakeUniq<_Tp>::__single_object std::make_unique(_Args&& ...) [with _Tp = TSocketMultiplexerMethodJob; _Args = {SecureSocket::secureConnect()::<lambda(auto:1, auto:2, auto:3, auto:4)>, ArchSocketImpl*, bool, bool}; typename std::_MakeUniq<_Tp>::__single_object = std::unique_ptr<TSocketMultiplexerMethodJob, std::default_delete >]’:
/home/subhagato/Downloads/barrier/src/lib/net/SecureSocket.cpp:145:97: required from here
/usr/include/c++/5/bits/unique_ptr.h:765:69: error: no matching function for call to ‘TSocketMultiplexerMethodJob::TSocketMultiplexerMethodJob(SecureSocket::secureConnect()::<lambda(auto:1, auto:2, auto:3, auto:4)>, ArchSocketImpl*, bool, bool)’
{ return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); }
^
In file included from /home/subhagato/Downloads/barrier/src/lib/net/SecureSocket.cpp:21:0:
/home/subhagato/Downloads/barrier/src/./lib/net/TSocketMultiplexerMethodJob.h:33:5: note: candidate: TSocketMultiplexerMethodJob::TSocketMultiplexerMethodJob(const RunFunction&, ArchSocket, bool, bool)
TSocketMultiplexerMethodJob(const RunFunction& func,
^
/home/subhagato/Downloads/barrier/src/./lib/net/TSocketMultiplexerMethodJob.h:33:5: note: no known conversion for argument 1 from ‘SecureSocket::secureConnect()::<lambda(auto:1, auto:2, auto:3, auto:4)>’ to ‘const RunFunction& {aka const std::function<MultiplexerJobStatus(ISocketMultiplexerJob*, bool, bool, bool)>&}’
/home/subhagato/Downloads/barrier/src/./lib/net/TSocketMultiplexerMethodJob.h:28:7: note: candidate: TSocketMultiplexerMethodJob::TSocketMultiplexerMethodJob(const TSocketMultiplexerMethodJob&)
class TSocketMultiplexerMethodJob : public ISocketMultiplexerJob {
^
/home/subhagato/Downloads/barrier/src/./lib/net/TSocketMultiplexerMethodJob.h:28:7: note: candidate expects 1 argument, 4 provided
/home/subhagato/Downloads/barrier/src/lib/net/SecureSocket.cpp: In instantiation of ‘SecureSocket::secureAccept()::<lambda(auto:5, auto:6, auto:7, auto:8)> [with auto:5 = ISocketMultiplexerJob*; auto:6 = bool; auto:7 = bool; auto:8 = bool]’:
/usr/include/c++/5/type_traits:2346:26: required by substitution of ‘template<class _Fn, class ... _Args> static std::__success_type<decltype (declval<_Fn>()((declval<_Args>)()...))> std::__result_of_other_impl::_S_test(int) [with _Fn = SecureSocket::secureAccept()::<lambda(auto:5, auto:6, auto:7, auto:8)>; _Args = {ISocketMultiplexerJob*, bool, bool, bool}]’
/usr/include/c++/5/type_traits:2357:55: required from ‘struct std::__result_of_impl<false, false, SecureSocket::secureAccept()::<lambda(auto:5, auto:6, auto:7, auto:8)>, ISocketMultiplexerJob*, bool, bool, bool>’
/usr/include/c++/5/type_traits:2361:12: required from ‘class std::result_of<SecureSocket::secureAccept()::<lambda(auto:5, auto:6, auto:7, auto:8)>(ISocketMultiplexerJob*, bool, bool, bool)>’
/usr/include/c++/5/functional:2053:9: required by substitution of ‘template<class _Functor, class, class> std::function<_Res(_ArgTypes ...)>::function(_Functor) [with _Functor = SecureSocket::secureAccept()::<lambda(auto:5, auto:6, auto:7, auto:8)>; = void; = ]’
/usr/include/c++/5/bits/unique_ptr.h:765:69: required from ‘typename std::_MakeUniq<_Tp>::__single_object std::make_unique(_Args&& ...) [with _Tp = TSocketMultiplexerMethodJob; _Args = {SecureSocket::secureAccept()::<lambda(auto:5, auto:6, auto:7, auto:8)>, ArchSocketImpl*, bool, bool}; typename std::_MakeUniq<_Tp>::__single_object = std::unique_ptr<TSocketMultiplexerMethodJob, std::default_delete >]’
/home/subhagato/Downloads/barrier/src/lib/net/SecureSocket.cpp:153:97: required from here
/home/subhagato/Downloads/barrier/src/lib/net/SecureSocket.cpp:152:94: error: cannot call member function ‘MultiplexerJobStatus SecureSocket::serviceAccept(ISocketMultiplexerJob*, bool, bool, bool)’ without object
{ return serviceAccept(j, r, w, e); },
^
In file included from /usr/include/c++/5/memory:81:0,
from /home/subhagato/Downloads/barrier/src/./lib/net/ISocketMultiplexerJob.h:23,
from /home/subhagato/Downloads/barrier/src/./lib/net/TCPSocket.h:22,
from /home/subhagato/Downloads/barrier/src/lib/net/SecureSocket.h:21,
from /home/subhagato/Downloads/barrier/src/lib/net/SecureSocket.cpp:18:
/usr/include/c++/5/bits/unique_ptr.h: In instantiation of ‘typename std::_MakeUniq<_Tp>::__single_object std::make_unique(_Args&& ...) [with _Tp = TSocketMultiplexerMethodJob; _Args = {SecureSocket::secureAccept()::<lambda(auto:5, auto:6, auto:7, auto:8)>, ArchSocketImpl*, bool, bool}; typename std::_MakeUniq<_Tp>::__single_object = std::unique_ptr<TSocketMultiplexerMethodJob, std::default_delete >]’:
/home/subhagato/Downloads/barrier/src/lib/net/SecureSocket.cpp:153:97: required from here
/usr/include/c++/5/bits/unique_ptr.h:765:69: error: no matching function for call to ‘TSocketMultiplexerMethodJob::TSocketMultiplexerMethodJob(SecureSocket::secureAccept()::<lambda(auto:5, auto:6, auto:7, auto:8)>, ArchSocketImpl*, bool, bool)’
{ return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); }
^
In file included from /home/subhagato/Downloads/barrier/src/lib/net/SecureSocket.cpp:21:0:
/home/subhagato/Downloads/barrier/src/./lib/net/TSocketMultiplexerMethodJob.h:33:5: note: candidate: TSocketMultiplexerMethodJob::TSocketMultiplexerMethodJob(const RunFunction&, ArchSocket, bool, bool)
TSocketMultiplexerMethodJob(const RunFunction& func,
^
/home/subhagato/Downloads/barrier/src/./lib/net/TSocketMultiplexerMethodJob.h:33:5: note: no known conversion for argument 1 from ‘SecureSocket::secureAccept()::<lambda(auto:5, auto:6, auto:7, auto:8)>’ to ‘const RunFunction& {aka const std::function<MultiplexerJobStatus(ISocketMultiplexerJob*, bool, bool, bool)>&}’
/home/subhagato/Downloads/barrier/src/./lib/net/TSocketMultiplexerMethodJob.h:28:7: note: candidate: TSocketMultiplexerMethodJob::TSocketMultiplexerMethodJob(const TSocketMultiplexerMethodJob&)
class TSocketMultiplexerMethodJob : public ISocketMultiplexerJob {
^
/home/subhagato/Downloads/barrier/src/./lib/net/TSocketMultiplexerMethodJob.h:28:7: note: candidate expects 1 argument, 4 provided
/home/subhagato/Downloads/barrier/src/lib/net/SecureSocket.cpp: In instantiation of ‘SecureSocket::serviceConnect(ISocketMultiplexerJob*, bool, bool, bool)::<lambda(auto:9, auto:10, auto:11, auto:12)> [with auto:9 = ISocketMultiplexerJob*; auto:10 = bool; auto:11 = bool; auto:12 = bool]’:
/usr/include/c++/5/type_traits:2346:26: required by substitution of ‘template<class _Fn, class ... _Args> static std::__success_type<decltype (declval<_Fn>()((declval<_Args>)()...))> std::__result_of_other_impl::_S_test(int) [with _Fn = SecureSocket::serviceConnect(ISocketMultiplexerJob*, bool, bool, bool)::<lambda(auto:9, auto:10, auto:11, auto:12)>; _Args = {ISocketMultiplexerJob*, bool, bool, bool}]’
/usr/include/c++/5/type_traits:2357:55: required from ‘struct std::__result_of_impl<false, false, SecureSocket::serviceConnect(ISocketMultiplexerJob*, bool, bool, bool)::<lambda(auto:9, auto:10, auto:11, auto:12)>, ISocketMultiplexerJob*, bool, bool, bool>’
/usr/include/c++/5/type_traits:2361:12: required from ‘class std::result_of<SecureSocket::serviceConnect(ISocketMultiplexerJob*, bool, bool, bool)::<lambda(auto:9, auto:10, auto:11, auto:12)>(ISocketMultiplexerJob*, bool, bool, bool)>’
/usr/include/c++/5/functional:2053:9: required by substitution of ‘template<class _Functor, class, class> std::function<_Res(_ArgTypes ...)>::function(_Functor) [with _Functor = SecureSocket::serviceConnect(ISocketMultiplexerJob*, bool, bool, bool)::<lambda(auto:9, auto:10, auto:11, auto:12)>; = void; = ]’
/usr/include/c++/5/bits/unique_ptr.h:765:69: required from ‘typename std::_MakeUniq<_Tp>::__single_object std::make_unique(_Args&& ...) [with _Tp = TSocketMultiplexerMethodJob; _Args = {SecureSocket::serviceConnect(ISocketMultiplexerJob*, bool, bool, bool)::<lambda(auto:9, auto:10, auto:11, auto:12)>, ArchSocketImpl*, bool, bool}; typename std::_MakeUniq<_Tp>::__single_object = std::unique_ptr<TSocketMultiplexerMethodJob, std::default_delete >]’
/home/subhagato/Downloads/barrier/src/lib/net/SecureSocket.cpp:777:94: required from here
/home/subhagato/Downloads/barrier/src/lib/net/SecureSocket.cpp:776:92: error: cannot call member function ‘MultiplexerJobStatus SecureSocket::serviceConnect(ISocketMultiplexerJob*, bool, bool, bool)’ without object
{ return serviceConnect(j, r, w, e); },
^
In file included from /usr/include/c++/5/memory:81:0,
from /home/subhagato/Downloads/barrier/src/./lib/net/ISocketMultiplexerJob.h:23,
from /home/subhagato/Downloads/barrier/src/./lib/net/TCPSocket.h:22,
from /home/subhagato/Downloads/barrier/src/lib/net/SecureSocket.h:21,
from /home/subhagato/Downloads/barrier/src/lib/net/SecureSocket.cpp:18:
/usr/include/c++/5/bits/unique_ptr.h: In instantiation of ‘typename std::_MakeUniq<_Tp>::__single_object std::make_unique(_Args&& ...) [with _Tp = TSocketMultiplexerMethodJob; _Args = {SecureSocket::serviceConnect(ISocketMultiplexerJob*, bool, bool, bool)::<lambda(auto:9, auto:10, auto:11, auto:12)>, ArchSocketImpl*, bool, bool}; typename std::_MakeUniq<_Tp>::__single_object = std::unique_ptr<TSocketMultiplexerMethodJob, std::default_delete >]’:
/home/subhagato/Downloads/barrier/src/lib/net/SecureSocket.cpp:777:94: required from here
/usr/include/c++/5/bits/unique_ptr.h:765:69: error: no matching function for call to ‘TSocketMultiplexerMethodJob::TSocketMultiplexerMethodJob(SecureSocket::serviceConnect(ISocketMultiplexerJob*, bool, bool, bool)::<lambda(auto:9, auto:10, auto:11, auto:12)>, ArchSocketImpl*, bool, bool)’
{ return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); }
^
In file included from /home/subhagato/Downloads/barrier/src/lib/net/SecureSocket.cpp:21:0:
/home/subhagato/Downloads/barrier/src/./lib/net/TSocketMultiplexerMethodJob.h:33:5: note: candidate: TSocketMultiplexerMethodJob::TSocketMultiplexerMethodJob(const RunFunction&, ArchSocket, bool, bool)
TSocketMultiplexerMethodJob(const RunFunction& func,
^
/home/subhagato/Downloads/barrier/src/./lib/net/TSocketMultiplexerMethodJob.h:33:5: note: no known conversion for argument 1 from ‘SecureSocket::serviceConnect(ISocketMultiplexerJob*, bool, bool, bool)::<lambda(auto:9, auto:10, auto:11, auto:12)>’ to ‘const RunFunction& {aka const std::function<MultiplexerJobStatus(ISocketMultiplexerJob*, bool, bool, bool)>&}’
/home/subhagato/Downloads/barrier/src/./lib/net/TSocketMultiplexerMethodJob.h:28:7: note: candidate: TSocketMultiplexerMethodJob::TSocketMultiplexerMethodJob(const TSocketMultiplexerMethodJob&)
class TSocketMultiplexerMethodJob : public ISocketMultiplexerJob {
^
/home/subhagato/Downloads/barrier/src/./lib/net/TSocketMultiplexerMethodJob.h:28:7: note: candidate expects 1 argument, 4 provided
/home/subhagato/Downloads/barrier/src/lib/net/SecureSocket.cpp: In instantiation of ‘SecureSocket::serviceAccept(ISocketMultiplexerJob*, bool, bool, bool)::<lambda(auto:13, auto:14, auto:15, auto:16)> [with auto:13 = ISocketMultiplexerJob*; auto:14 = bool; auto:15 = bool; auto:16 = bool]’:
/usr/include/c++/5/type_traits:2346:26: required by substitution of ‘template<class _Fn, class ... _Args> static std::__success_type<decltype (declval<_Fn>()((declval<_Args>)()...))> std::__result_of_other_impl::_S_test(int) [with _Fn = SecureSocket::serviceAccept(ISocketMultiplexerJob*, bool, bool, bool)::<lambda(auto:13, auto:14, auto:15, auto:16)>; _Args = {ISocketMultiplexerJob*, bool, bool, bool}]’
/usr/include/c++/5/type_traits:2357:55: required from ‘struct std::__result_of_impl<false, false, SecureSocket::serviceAccept(ISocketMultiplexerJob*, bool, bool, bool)::<lambda(auto:13, auto:14, auto:15, auto:16)>, ISocketMultiplexerJob*, bool, bool, bool>’
/usr/include/c++/5/type_traits:2361:12: required from ‘class std::result_of<SecureSocket::serviceAccept(ISocketMultiplexerJob*, bool, bool, bool)::<lambda(auto:13, auto:14, auto:15, auto:16)>(ISocketMultiplexerJob*, bool, bool, bool)>’
/usr/include/c++/5/functional:2053:9: required by substitution of ‘template<class _Functor, class, class> std::function<_Res(_ArgTypes ...)>::function(_Functor) [with _Functor = SecureSocket::serviceAccept(ISocketMultiplexerJob*, bool, bool, bool)::<lambda(auto:13, auto:14, auto:15, auto:16)>; = void; = ]’
/usr/include/c++/5/bits/unique_ptr.h:765:69: required from ‘typename std::_MakeUniq<_Tp>::__single_object std::make_unique(_Args&& ...) [with _Tp = TSocketMultiplexerMethodJob; _Args = {SecureSocket::serviceAccept(ISocketMultiplexerJob*, bool, bool, bool)::<lambda(auto:13, auto:14, auto:15, auto:16)>, ArchSocketImpl*, bool, bool}; typename std::_MakeUniq<_Tp>::__single_object = std::unique_ptr<TSocketMultiplexerMethodJob, std::default_delete >]’
/home/subhagato/Downloads/barrier/src/lib/net/SecureSocket.cpp:809:94: required from here
/home/subhagato/Downloads/barrier/src/lib/net/SecureSocket.cpp:808:91: error: cannot call member function ‘MultiplexerJobStatus SecureSocket::serviceAccept(ISocketMultiplexerJob*, bool, bool, bool)’ without object
{ return serviceAccept(j, r, w, e); },
^
In file included from /usr/include/c++/5/memory:81:0,
from /home/subhagato/Downloads/barrier/src/./lib/net/ISocketMultiplexerJob.h:23,
from /home/subhagato/Downloads/barrier/src/./lib/net/TCPSocket.h:22,
from /home/subhagato/Downloads/barrier/src/lib/net/SecureSocket.h:21,
from /home/subhagato/Downloads/barrier/src/lib/net/SecureSocket.cpp:18:
/usr/include/c++/5/bits/unique_ptr.h: In instantiation of ‘typename std::_MakeUniq<_Tp>::__single_object std::make_unique(_Args&& ...) [with _Tp = TSocketMultiplexerMethodJob; _Args = {SecureSocket::serviceAccept(ISocketMultiplexerJob*, bool, bool, bool)::<lambda(auto:13, auto:14, auto:15, auto:16)>, ArchSocketImpl*, bool, bool}; typename std::_MakeUniq<_Tp>::__single_object = std::unique_ptr<TSocketMultiplexerMethodJob, std::default_delete >]’:
/home/subhagato/Downloads/barrier/src/lib/net/SecureSocket.cpp:809:94: required from here
/usr/include/c++/5/bits/unique_ptr.h:765:69: error: no matching function for call to ‘TSocketMultiplexerMethodJob::TSocketMultiplexerMethodJob(SecureSocket::serviceAccept(ISocketMultiplexerJob*, bool, bool, bool)::<lambda(auto:13, auto:14, auto:15, auto:16)>, ArchSocketImpl*, bool, bool)’
{ return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); }
^
In file included from /home/subhagato/Downloads/barrier/src/lib/net/SecureSocket.cpp:21:0:
/home/subhagato/Downloads/barrier/src/./lib/net/TSocketMultiplexerMethodJob.h:33:5: note: candidate: TSocketMultiplexerMethodJob::TSocketMultiplexerMethodJob(const RunFunction&, ArchSocket, bool, bool)
TSocketMultiplexerMethodJob(const RunFunction& func,
^
/home/subhagato/Downloads/barrier/src/./lib/net/TSocketMultiplexerMethodJob.h:33:5: note: no known conversion for argument 1 from ‘SecureSocket::serviceAccept(ISocketMultiplexerJob*, bool, bool, bool)::<lambda(auto:13, auto:14, auto:15, auto:16)>’ to ‘const RunFunction& {aka const std::function<MultiplexerJobStatus(ISocketMultiplexerJob*, bool, bool, bool)>&}’
/home/subhagato/Downloads/barrier/src/./lib/net/TSocketMultiplexerMethodJob.h:28:7: note: candidate: TSocketMultiplexerMethodJob::TSocketMultiplexerMethodJob(const TSocketMultiplexerMethodJob&)
class TSocketMultiplexerMethodJob : public ISocketMultiplexerJob {
^
/home/subhagato/Downloads/barrier/src/./lib/net/TSocketMultiplexerMethodJob.h:28:7: note: candidate expects 1 argument, 4 provided
src/lib/net/CMakeFiles/net.dir/build.make:127: recipe for target 'src/lib/net/CMakeFiles/net.dir/SecureSocket.cpp.o' failed
make[2]: *** [src/lib/net/CMakeFiles/net.dir/SecureSocket.cpp.o] Error 1
CMakeFiles/Makefile2:632: recipe for target 'src/lib/net/CMakeFiles/net.dir/all' failed
make[1]: *** [src/lib/net/CMakeFiles/net.dir/all] Error 2
Makefile:162: recipe for target 'all' failed
make: *** [all] Error 2`

Version

From Git HEAD or commit (specify below)

Git commit hash (if applicable)

v2.4.0

If applicable, where did you install Barrier from?

No response

What OSes are you seeing the problem on? (Check all that apply)

Linux

What OS versions are you using?

Ubuntu 16.04.4 LTS

Relevant log output

No response

Any other information

No response

Originally created by @razorback16 on GitHub (Nov 4, 2021). Original GitHub issue: https://github.com/debauchee/barrier/issues/1384 ### What happened? $ make Scanning dependencies of target gmock [ 0%] Building CXX object src/CMakeFiles/gmock.dir/__/ext/gmock/src/gmock-all.cc.o [ 1%] Linking CXX static library libgmock.a [ 1%] Built target gmock Scanning dependencies of target gtest [ 1%] Building CXX object src/CMakeFiles/gtest.dir/__/ext/gtest/src/gtest-all.cc.o [ 1%] Linking CXX static library libgtest.a [ 1%] Built target gtest Scanning dependencies of target arch [ 1%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/Arch.cpp.o [ 1%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/ArchConsoleStd.cpp.o [ 2%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/ArchDaemonNone.cpp.o [ 2%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/IArchString.cpp.o [ 3%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/unix/ArchConsoleUnix.cpp.o [ 3%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/unix/ArchDaemonUnix.cpp.o [ 4%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/unix/ArchInternetUnix.cpp.o [ 4%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/unix/ArchLogUnix.cpp.o [ 5%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/unix/ArchMultithreadPosix.cpp.o [ 5%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/unix/ArchNetworkBSD.cpp.o [ 5%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/unix/ArchSleepUnix.cpp.o [ 6%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/unix/ArchStringUnix.cpp.o [ 6%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/unix/ArchSystemUnix.cpp.o [ 7%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/unix/ArchTaskBarXWindows.cpp.o [ 7%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/unix/ArchTimeUnix.cpp.o [ 8%] Building CXX object src/lib/arch/CMakeFiles/arch.dir/unix/XArchUnix.cpp.o [ 8%] Linking CXX static library libarch.a [ 8%] Built target arch Scanning dependencies of target common [ 8%] Building CXX object src/lib/common/CMakeFiles/common.dir/DataDirectories_static.cpp.o [ 9%] Building CXX object src/lib/common/CMakeFiles/common.dir/Version.cpp.o [ 9%] Building CXX object src/lib/common/CMakeFiles/common.dir/unix/DataDirectories.cpp.o [ 10%] Linking CXX static library libcommon.a [ 10%] Built target common Scanning dependencies of target base [ 10%] Building CXX object src/lib/base/CMakeFiles/base.dir/Event.cpp.o [ 11%] Building CXX object src/lib/base/CMakeFiles/base.dir/EventQueue.cpp.o [ 11%] Building CXX object src/lib/base/CMakeFiles/base.dir/EventTypes.cpp.o [ 12%] Building CXX object src/lib/base/CMakeFiles/base.dir/FunctionEventJob.cpp.o [ 12%] Building CXX object src/lib/base/CMakeFiles/base.dir/Log.cpp.o [ 12%] Building CXX object src/lib/base/CMakeFiles/base.dir/NonBlockingStream.cpp.o [ 13%] Building CXX object src/lib/base/CMakeFiles/base.dir/SimpleEventQueueBuffer.cpp.o [ 13%] Building CXX object src/lib/base/CMakeFiles/base.dir/Stopwatch.cpp.o [ 14%] Building CXX object src/lib/base/CMakeFiles/base.dir/String.cpp.o [ 14%] Building CXX object src/lib/base/CMakeFiles/base.dir/Unicode.cpp.o [ 15%] Building CXX object src/lib/base/CMakeFiles/base.dir/XBase.cpp.o [ 15%] Building CXX object src/lib/base/CMakeFiles/base.dir/log_outputters.cpp.o [ 16%] Linking CXX static library libbase.a [ 16%] Built target base Scanning dependencies of target mt [ 17%] Building CXX object src/lib/mt/CMakeFiles/mt.dir/CondVar.cpp.o [ 17%] Building CXX object src/lib/mt/CMakeFiles/mt.dir/Lock.cpp.o [ 17%] Building CXX object src/lib/mt/CMakeFiles/mt.dir/Mutex.cpp.o [ 18%] Building CXX object src/lib/mt/CMakeFiles/mt.dir/Thread.cpp.o [ 18%] Building CXX object src/lib/mt/CMakeFiles/mt.dir/XMT.cpp.o [ 19%] Linking CXX static library libmt.a [ 19%] Built target mt Scanning dependencies of target io [ 20%] Building CXX object src/lib/io/CMakeFiles/io.dir/StreamBuffer.cpp.o [ 20%] Building CXX object src/lib/io/CMakeFiles/io.dir/StreamFilter.cpp.o [ 21%] Building CXX object src/lib/io/CMakeFiles/io.dir/XIO.cpp.o [ 21%] Building CXX object src/lib/io/CMakeFiles/io.dir/filesystem.cpp.o [ 22%] Linking CXX static library libio.a [ 22%] Built target io Scanning dependencies of target net [ 22%] Building CXX object src/lib/net/CMakeFiles/net.dir/FingerprintData.cpp.o [ 23%] Building CXX object src/lib/net/CMakeFiles/net.dir/FingerprintDatabase.cpp.o [ 23%] Building CXX object src/lib/net/CMakeFiles/net.dir/IDataSocket.cpp.o [ 24%] Building CXX object src/lib/net/CMakeFiles/net.dir/NetworkAddress.cpp.o [ 24%] Building CXX object src/lib/net/CMakeFiles/net.dir/SecureListenSocket.cpp.o [ 24%] Building CXX object src/lib/net/CMakeFiles/net.dir/SecureSocket.cpp.o /home/subhagato/Downloads/barrier/src/lib/net/SecureSocket.cpp: In instantiation of ‘SecureSocket::secureConnect()::<lambda(auto:1, auto:2, auto:3, auto:4)> [with auto:1 = ISocketMultiplexerJob*; auto:2 = bool; auto:3 = bool; auto:4 = bool]’: /usr/include/c++/5/type_traits:2346:26: required by substitution of ‘template<class _Fn, class ... _Args> static std::__success_type<decltype (declval<_Fn>()((declval<_Args>)()...))> std::__result_of_other_impl::_S_test(int) [with _Fn = SecureSocket::secureConnect()::<lambda(auto:1, auto:2, auto:3, auto:4)>; _Args = {ISocketMultiplexerJob*, bool, bool, bool}]’ /usr/include/c++/5/type_traits:2357:55: required from ‘struct std::__result_of_impl<false, false, SecureSocket::secureConnect()::<lambda(auto:1, auto:2, auto:3, auto:4)>, ISocketMultiplexerJob*, bool, bool, bool>’ /usr/include/c++/5/type_traits:2361:12: required from ‘class std::result_of<SecureSocket::secureConnect()::<lambda(auto:1, auto:2, auto:3, auto:4)>(ISocketMultiplexerJob*, bool, bool, bool)>’ /usr/include/c++/5/functional:2053:9: required by substitution of ‘template<class _Functor, class, class> std::function<_Res(_ArgTypes ...)>::function(_Functor) [with _Functor = SecureSocket::secureConnect()::<lambda(auto:1, auto:2, auto:3, auto:4)>; <template-parameter-1-2> = void; <template-parameter-1-3> = <missing>]’ /usr/include/c++/5/bits/unique_ptr.h:765:69: required from ‘typename std::_MakeUniq<_Tp>::__single_object std::make_unique(_Args&& ...) [with _Tp = TSocketMultiplexerMethodJob; _Args = {SecureSocket::secureConnect()::<lambda(auto:1, auto:2, auto:3, auto:4)>, ArchSocketImpl*, bool, bool}; typename std::_MakeUniq<_Tp>::__single_object = std::unique_ptr<TSocketMultiplexerMethodJob, std::default_delete<TSocketMultiplexerMethodJob> >]’ /home/subhagato/Downloads/barrier/src/lib/net/SecureSocket.cpp:145:97: required from here /home/subhagato/Downloads/barrier/src/lib/net/SecureSocket.cpp:144:95: error: cannot call member function ‘MultiplexerJobStatus SecureSocket::serviceConnect(ISocketMultiplexerJob*, bool, bool, bool)’ without object { return serviceConnect(j, r, w, e); }, ^ In file included from /usr/include/c++/5/memory:81:0, from /home/subhagato/Downloads/barrier/src/./lib/net/ISocketMultiplexerJob.h:23, from /home/subhagato/Downloads/barrier/src/./lib/net/TCPSocket.h:22, from /home/subhagato/Downloads/barrier/src/lib/net/SecureSocket.h:21, from /home/subhagato/Downloads/barrier/src/lib/net/SecureSocket.cpp:18: /usr/include/c++/5/bits/unique_ptr.h: In instantiation of ‘typename std::_MakeUniq<_Tp>::__single_object std::make_unique(_Args&& ...) [with _Tp = TSocketMultiplexerMethodJob; _Args = {SecureSocket::secureConnect()::<lambda(auto:1, auto:2, auto:3, auto:4)>, ArchSocketImpl*, bool, bool}; typename std::_MakeUniq<_Tp>::__single_object = std::unique_ptr<TSocketMultiplexerMethodJob, std::default_delete<TSocketMultiplexerMethodJob> >]’: /home/subhagato/Downloads/barrier/src/lib/net/SecureSocket.cpp:145:97: required from here /usr/include/c++/5/bits/unique_ptr.h:765:69: error: no matching function for call to ‘TSocketMultiplexerMethodJob::TSocketMultiplexerMethodJob(SecureSocket::secureConnect()::<lambda(auto:1, auto:2, auto:3, auto:4)>, ArchSocketImpl*, bool, bool)’ { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } ^ In file included from /home/subhagato/Downloads/barrier/src/lib/net/SecureSocket.cpp:21:0: /home/subhagato/Downloads/barrier/src/./lib/net/TSocketMultiplexerMethodJob.h:33:5: note: candidate: TSocketMultiplexerMethodJob::TSocketMultiplexerMethodJob(const RunFunction&, ArchSocket, bool, bool) TSocketMultiplexerMethodJob(const RunFunction& func, ^ /home/subhagato/Downloads/barrier/src/./lib/net/TSocketMultiplexerMethodJob.h:33:5: note: no known conversion for argument 1 from ‘SecureSocket::secureConnect()::<lambda(auto:1, auto:2, auto:3, auto:4)>’ to ‘const RunFunction& {aka const std::function<MultiplexerJobStatus(ISocketMultiplexerJob*, bool, bool, bool)>&}’ /home/subhagato/Downloads/barrier/src/./lib/net/TSocketMultiplexerMethodJob.h:28:7: note: candidate: TSocketMultiplexerMethodJob::TSocketMultiplexerMethodJob(const TSocketMultiplexerMethodJob&) class TSocketMultiplexerMethodJob : public ISocketMultiplexerJob { ^ /home/subhagato/Downloads/barrier/src/./lib/net/TSocketMultiplexerMethodJob.h:28:7: note: candidate expects 1 argument, 4 provided /home/subhagato/Downloads/barrier/src/lib/net/SecureSocket.cpp: In instantiation of ‘SecureSocket::secureAccept()::<lambda(auto:5, auto:6, auto:7, auto:8)> [with auto:5 = ISocketMultiplexerJob*; auto:6 = bool; auto:7 = bool; auto:8 = bool]’: /usr/include/c++/5/type_traits:2346:26: required by substitution of ‘template<class _Fn, class ... _Args> static std::__success_type<decltype (declval<_Fn>()((declval<_Args>)()...))> std::__result_of_other_impl::_S_test(int) [with _Fn = SecureSocket::secureAccept()::<lambda(auto:5, auto:6, auto:7, auto:8)>; _Args = {ISocketMultiplexerJob*, bool, bool, bool}]’ /usr/include/c++/5/type_traits:2357:55: required from ‘struct std::__result_of_impl<false, false, SecureSocket::secureAccept()::<lambda(auto:5, auto:6, auto:7, auto:8)>, ISocketMultiplexerJob*, bool, bool, bool>’ /usr/include/c++/5/type_traits:2361:12: required from ‘class std::result_of<SecureSocket::secureAccept()::<lambda(auto:5, auto:6, auto:7, auto:8)>(ISocketMultiplexerJob*, bool, bool, bool)>’ /usr/include/c++/5/functional:2053:9: required by substitution of ‘template<class _Functor, class, class> std::function<_Res(_ArgTypes ...)>::function(_Functor) [with _Functor = SecureSocket::secureAccept()::<lambda(auto:5, auto:6, auto:7, auto:8)>; <template-parameter-1-2> = void; <template-parameter-1-3> = <missing>]’ /usr/include/c++/5/bits/unique_ptr.h:765:69: required from ‘typename std::_MakeUniq<_Tp>::__single_object std::make_unique(_Args&& ...) [with _Tp = TSocketMultiplexerMethodJob; _Args = {SecureSocket::secureAccept()::<lambda(auto:5, auto:6, auto:7, auto:8)>, ArchSocketImpl*, bool, bool}; typename std::_MakeUniq<_Tp>::__single_object = std::unique_ptr<TSocketMultiplexerMethodJob, std::default_delete<TSocketMultiplexerMethodJob> >]’ /home/subhagato/Downloads/barrier/src/lib/net/SecureSocket.cpp:153:97: required from here /home/subhagato/Downloads/barrier/src/lib/net/SecureSocket.cpp:152:94: error: cannot call member function ‘MultiplexerJobStatus SecureSocket::serviceAccept(ISocketMultiplexerJob*, bool, bool, bool)’ without object { return serviceAccept(j, r, w, e); }, ^ In file included from /usr/include/c++/5/memory:81:0, from /home/subhagato/Downloads/barrier/src/./lib/net/ISocketMultiplexerJob.h:23, from /home/subhagato/Downloads/barrier/src/./lib/net/TCPSocket.h:22, from /home/subhagato/Downloads/barrier/src/lib/net/SecureSocket.h:21, from /home/subhagato/Downloads/barrier/src/lib/net/SecureSocket.cpp:18: /usr/include/c++/5/bits/unique_ptr.h: In instantiation of ‘typename std::_MakeUniq<_Tp>::__single_object std::make_unique(_Args&& ...) [with _Tp = TSocketMultiplexerMethodJob; _Args = {SecureSocket::secureAccept()::<lambda(auto:5, auto:6, auto:7, auto:8)>, ArchSocketImpl*, bool, bool}; typename std::_MakeUniq<_Tp>::__single_object = std::unique_ptr<TSocketMultiplexerMethodJob, std::default_delete<TSocketMultiplexerMethodJob> >]’: /home/subhagato/Downloads/barrier/src/lib/net/SecureSocket.cpp:153:97: required from here /usr/include/c++/5/bits/unique_ptr.h:765:69: error: no matching function for call to ‘TSocketMultiplexerMethodJob::TSocketMultiplexerMethodJob(SecureSocket::secureAccept()::<lambda(auto:5, auto:6, auto:7, auto:8)>, ArchSocketImpl*, bool, bool)’ { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } ^ In file included from /home/subhagato/Downloads/barrier/src/lib/net/SecureSocket.cpp:21:0: /home/subhagato/Downloads/barrier/src/./lib/net/TSocketMultiplexerMethodJob.h:33:5: note: candidate: TSocketMultiplexerMethodJob::TSocketMultiplexerMethodJob(const RunFunction&, ArchSocket, bool, bool) TSocketMultiplexerMethodJob(const RunFunction& func, ^ /home/subhagato/Downloads/barrier/src/./lib/net/TSocketMultiplexerMethodJob.h:33:5: note: no known conversion for argument 1 from ‘SecureSocket::secureAccept()::<lambda(auto:5, auto:6, auto:7, auto:8)>’ to ‘const RunFunction& {aka const std::function<MultiplexerJobStatus(ISocketMultiplexerJob*, bool, bool, bool)>&}’ /home/subhagato/Downloads/barrier/src/./lib/net/TSocketMultiplexerMethodJob.h:28:7: note: candidate: TSocketMultiplexerMethodJob::TSocketMultiplexerMethodJob(const TSocketMultiplexerMethodJob&) class TSocketMultiplexerMethodJob : public ISocketMultiplexerJob { ^ /home/subhagato/Downloads/barrier/src/./lib/net/TSocketMultiplexerMethodJob.h:28:7: note: candidate expects 1 argument, 4 provided /home/subhagato/Downloads/barrier/src/lib/net/SecureSocket.cpp: In instantiation of ‘SecureSocket::serviceConnect(ISocketMultiplexerJob*, bool, bool, bool)::<lambda(auto:9, auto:10, auto:11, auto:12)> [with auto:9 = ISocketMultiplexerJob*; auto:10 = bool; auto:11 = bool; auto:12 = bool]’: /usr/include/c++/5/type_traits:2346:26: required by substitution of ‘template<class _Fn, class ... _Args> static std::__success_type<decltype (declval<_Fn>()((declval<_Args>)()...))> std::__result_of_other_impl::_S_test(int) [with _Fn = SecureSocket::serviceConnect(ISocketMultiplexerJob*, bool, bool, bool)::<lambda(auto:9, auto:10, auto:11, auto:12)>; _Args = {ISocketMultiplexerJob*, bool, bool, bool}]’ /usr/include/c++/5/type_traits:2357:55: required from ‘struct std::__result_of_impl<false, false, SecureSocket::serviceConnect(ISocketMultiplexerJob*, bool, bool, bool)::<lambda(auto:9, auto:10, auto:11, auto:12)>, ISocketMultiplexerJob*, bool, bool, bool>’ /usr/include/c++/5/type_traits:2361:12: required from ‘class std::result_of<SecureSocket::serviceConnect(ISocketMultiplexerJob*, bool, bool, bool)::<lambda(auto:9, auto:10, auto:11, auto:12)>(ISocketMultiplexerJob*, bool, bool, bool)>’ /usr/include/c++/5/functional:2053:9: required by substitution of ‘template<class _Functor, class, class> std::function<_Res(_ArgTypes ...)>::function(_Functor) [with _Functor = SecureSocket::serviceConnect(ISocketMultiplexerJob*, bool, bool, bool)::<lambda(auto:9, auto:10, auto:11, auto:12)>; <template-parameter-1-2> = void; <template-parameter-1-3> = <missing>]’ /usr/include/c++/5/bits/unique_ptr.h:765:69: required from ‘typename std::_MakeUniq<_Tp>::__single_object std::make_unique(_Args&& ...) [with _Tp = TSocketMultiplexerMethodJob; _Args = {SecureSocket::serviceConnect(ISocketMultiplexerJob*, bool, bool, bool)::<lambda(auto:9, auto:10, auto:11, auto:12)>, ArchSocketImpl*, bool, bool}; typename std::_MakeUniq<_Tp>::__single_object = std::unique_ptr<TSocketMultiplexerMethodJob, std::default_delete<TSocketMultiplexerMethodJob> >]’ /home/subhagato/Downloads/barrier/src/lib/net/SecureSocket.cpp:777:94: required from here /home/subhagato/Downloads/barrier/src/lib/net/SecureSocket.cpp:776:92: error: cannot call member function ‘MultiplexerJobStatus SecureSocket::serviceConnect(ISocketMultiplexerJob*, bool, bool, bool)’ without object { return serviceConnect(j, r, w, e); }, ^ In file included from /usr/include/c++/5/memory:81:0, from /home/subhagato/Downloads/barrier/src/./lib/net/ISocketMultiplexerJob.h:23, from /home/subhagato/Downloads/barrier/src/./lib/net/TCPSocket.h:22, from /home/subhagato/Downloads/barrier/src/lib/net/SecureSocket.h:21, from /home/subhagato/Downloads/barrier/src/lib/net/SecureSocket.cpp:18: /usr/include/c++/5/bits/unique_ptr.h: In instantiation of ‘typename std::_MakeUniq<_Tp>::__single_object std::make_unique(_Args&& ...) [with _Tp = TSocketMultiplexerMethodJob; _Args = {SecureSocket::serviceConnect(ISocketMultiplexerJob*, bool, bool, bool)::<lambda(auto:9, auto:10, auto:11, auto:12)>, ArchSocketImpl*, bool, bool}; typename std::_MakeUniq<_Tp>::__single_object = std::unique_ptr<TSocketMultiplexerMethodJob, std::default_delete<TSocketMultiplexerMethodJob> >]’: /home/subhagato/Downloads/barrier/src/lib/net/SecureSocket.cpp:777:94: required from here /usr/include/c++/5/bits/unique_ptr.h:765:69: error: no matching function for call to ‘TSocketMultiplexerMethodJob::TSocketMultiplexerMethodJob(SecureSocket::serviceConnect(ISocketMultiplexerJob*, bool, bool, bool)::<lambda(auto:9, auto:10, auto:11, auto:12)>, ArchSocketImpl*, bool, bool)’ { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } ^ In file included from /home/subhagato/Downloads/barrier/src/lib/net/SecureSocket.cpp:21:0: /home/subhagato/Downloads/barrier/src/./lib/net/TSocketMultiplexerMethodJob.h:33:5: note: candidate: TSocketMultiplexerMethodJob::TSocketMultiplexerMethodJob(const RunFunction&, ArchSocket, bool, bool) TSocketMultiplexerMethodJob(const RunFunction& func, ^ /home/subhagato/Downloads/barrier/src/./lib/net/TSocketMultiplexerMethodJob.h:33:5: note: no known conversion for argument 1 from ‘SecureSocket::serviceConnect(ISocketMultiplexerJob*, bool, bool, bool)::<lambda(auto:9, auto:10, auto:11, auto:12)>’ to ‘const RunFunction& {aka const std::function<MultiplexerJobStatus(ISocketMultiplexerJob*, bool, bool, bool)>&}’ /home/subhagato/Downloads/barrier/src/./lib/net/TSocketMultiplexerMethodJob.h:28:7: note: candidate: TSocketMultiplexerMethodJob::TSocketMultiplexerMethodJob(const TSocketMultiplexerMethodJob&) class TSocketMultiplexerMethodJob : public ISocketMultiplexerJob { ^ /home/subhagato/Downloads/barrier/src/./lib/net/TSocketMultiplexerMethodJob.h:28:7: note: candidate expects 1 argument, 4 provided /home/subhagato/Downloads/barrier/src/lib/net/SecureSocket.cpp: In instantiation of ‘SecureSocket::serviceAccept(ISocketMultiplexerJob*, bool, bool, bool)::<lambda(auto:13, auto:14, auto:15, auto:16)> [with auto:13 = ISocketMultiplexerJob*; auto:14 = bool; auto:15 = bool; auto:16 = bool]’: /usr/include/c++/5/type_traits:2346:26: required by substitution of ‘template<class _Fn, class ... _Args> static std::__success_type<decltype (declval<_Fn>()((declval<_Args>)()...))> std::__result_of_other_impl::_S_test(int) [with _Fn = SecureSocket::serviceAccept(ISocketMultiplexerJob*, bool, bool, bool)::<lambda(auto:13, auto:14, auto:15, auto:16)>; _Args = {ISocketMultiplexerJob*, bool, bool, bool}]’ /usr/include/c++/5/type_traits:2357:55: required from ‘struct std::__result_of_impl<false, false, SecureSocket::serviceAccept(ISocketMultiplexerJob*, bool, bool, bool)::<lambda(auto:13, auto:14, auto:15, auto:16)>, ISocketMultiplexerJob*, bool, bool, bool>’ /usr/include/c++/5/type_traits:2361:12: required from ‘class std::result_of<SecureSocket::serviceAccept(ISocketMultiplexerJob*, bool, bool, bool)::<lambda(auto:13, auto:14, auto:15, auto:16)>(ISocketMultiplexerJob*, bool, bool, bool)>’ /usr/include/c++/5/functional:2053:9: required by substitution of ‘template<class _Functor, class, class> std::function<_Res(_ArgTypes ...)>::function(_Functor) [with _Functor = SecureSocket::serviceAccept(ISocketMultiplexerJob*, bool, bool, bool)::<lambda(auto:13, auto:14, auto:15, auto:16)>; <template-parameter-1-2> = void; <template-parameter-1-3> = <missing>]’ /usr/include/c++/5/bits/unique_ptr.h:765:69: required from ‘typename std::_MakeUniq<_Tp>::__single_object std::make_unique(_Args&& ...) [with _Tp = TSocketMultiplexerMethodJob; _Args = {SecureSocket::serviceAccept(ISocketMultiplexerJob*, bool, bool, bool)::<lambda(auto:13, auto:14, auto:15, auto:16)>, ArchSocketImpl*, bool, bool}; typename std::_MakeUniq<_Tp>::__single_object = std::unique_ptr<TSocketMultiplexerMethodJob, std::default_delete<TSocketMultiplexerMethodJob> >]’ /home/subhagato/Downloads/barrier/src/lib/net/SecureSocket.cpp:809:94: required from here /home/subhagato/Downloads/barrier/src/lib/net/SecureSocket.cpp:808:91: error: cannot call member function ‘MultiplexerJobStatus SecureSocket::serviceAccept(ISocketMultiplexerJob*, bool, bool, bool)’ without object { return serviceAccept(j, r, w, e); }, ^ In file included from /usr/include/c++/5/memory:81:0, from /home/subhagato/Downloads/barrier/src/./lib/net/ISocketMultiplexerJob.h:23, from /home/subhagato/Downloads/barrier/src/./lib/net/TCPSocket.h:22, from /home/subhagato/Downloads/barrier/src/lib/net/SecureSocket.h:21, from /home/subhagato/Downloads/barrier/src/lib/net/SecureSocket.cpp:18: /usr/include/c++/5/bits/unique_ptr.h: In instantiation of ‘typename std::_MakeUniq<_Tp>::__single_object std::make_unique(_Args&& ...) [with _Tp = TSocketMultiplexerMethodJob; _Args = {SecureSocket::serviceAccept(ISocketMultiplexerJob*, bool, bool, bool)::<lambda(auto:13, auto:14, auto:15, auto:16)>, ArchSocketImpl*, bool, bool}; typename std::_MakeUniq<_Tp>::__single_object = std::unique_ptr<TSocketMultiplexerMethodJob, std::default_delete<TSocketMultiplexerMethodJob> >]’: /home/subhagato/Downloads/barrier/src/lib/net/SecureSocket.cpp:809:94: required from here /usr/include/c++/5/bits/unique_ptr.h:765:69: error: no matching function for call to ‘TSocketMultiplexerMethodJob::TSocketMultiplexerMethodJob(SecureSocket::serviceAccept(ISocketMultiplexerJob*, bool, bool, bool)::<lambda(auto:13, auto:14, auto:15, auto:16)>, ArchSocketImpl*, bool, bool)’ { return unique_ptr<_Tp>(new _Tp(std::forward<_Args>(__args)...)); } ^ In file included from /home/subhagato/Downloads/barrier/src/lib/net/SecureSocket.cpp:21:0: /home/subhagato/Downloads/barrier/src/./lib/net/TSocketMultiplexerMethodJob.h:33:5: note: candidate: TSocketMultiplexerMethodJob::TSocketMultiplexerMethodJob(const RunFunction&, ArchSocket, bool, bool) TSocketMultiplexerMethodJob(const RunFunction& func, ^ /home/subhagato/Downloads/barrier/src/./lib/net/TSocketMultiplexerMethodJob.h:33:5: note: no known conversion for argument 1 from ‘SecureSocket::serviceAccept(ISocketMultiplexerJob*, bool, bool, bool)::<lambda(auto:13, auto:14, auto:15, auto:16)>’ to ‘const RunFunction& {aka const std::function<MultiplexerJobStatus(ISocketMultiplexerJob*, bool, bool, bool)>&}’ /home/subhagato/Downloads/barrier/src/./lib/net/TSocketMultiplexerMethodJob.h:28:7: note: candidate: TSocketMultiplexerMethodJob::TSocketMultiplexerMethodJob(const TSocketMultiplexerMethodJob&) class TSocketMultiplexerMethodJob : public ISocketMultiplexerJob { ^ /home/subhagato/Downloads/barrier/src/./lib/net/TSocketMultiplexerMethodJob.h:28:7: note: candidate expects 1 argument, 4 provided src/lib/net/CMakeFiles/net.dir/build.make:127: recipe for target 'src/lib/net/CMakeFiles/net.dir/SecureSocket.cpp.o' failed make[2]: *** [src/lib/net/CMakeFiles/net.dir/SecureSocket.cpp.o] Error 1 CMakeFiles/Makefile2:632: recipe for target 'src/lib/net/CMakeFiles/net.dir/all' failed make[1]: *** [src/lib/net/CMakeFiles/net.dir/all] Error 2 Makefile:162: recipe for target 'all' failed make: *** [all] Error 2` ### Version From Git HEAD or commit (specify below) ### Git commit hash (if applicable) v2.4.0 ### If applicable, where did you install Barrier from? _No response_ ### What OSes are you seeing the problem on? (Check all that apply) Linux ### What OS versions are you using? Ubuntu 16.04.4 LTS ### Relevant log output _No response_ ### Any other information _No response_
gitea-mirror added the
bug
label 2026-05-05 07:26:50 -06:00
Author
Owner

@p12tic commented on GitHub (Nov 5, 2021):

@razorback16 What does g++ -v output on your machine?

<!-- gh-comment-id:962267536 --> @p12tic commented on GitHub (Nov 5, 2021): @razorback16 What does `g++ -v` output on your machine?
Author
Owner

@razorback16 commented on GitHub (Nov 5, 2021):

$ g++ -v

Using built-in specs.
COLLECT_GCC=g++
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/5/lto-wrapper
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 5.4.0-6ubuntu1~16.04.12' --with-bugurl=file:///usr/share/doc/gcc-5/README.Bugs --enable-languages=c,ada,c++,java,go,d,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-5 --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-libmpx --enable-plugin --with-system-zlib --disable-browser-plugin --enable-java-awt=gtk --enable-gtk-cairo --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-5-amd64/jre --enable-java-home --with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-5-amd64 --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-5-amd64 --with-arch-directory=amd64 --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --enable-objc-gc --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
Thread model: posix
gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.12) 
<!-- gh-comment-id:962268877 --> @razorback16 commented on GitHub (Nov 5, 2021): $ g++ -v ``` Using built-in specs. COLLECT_GCC=g++ COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/5/lto-wrapper Target: x86_64-linux-gnu Configured with: ../src/configure -v --with-pkgversion='Ubuntu 5.4.0-6ubuntu1~16.04.12' --with-bugurl=file:///usr/share/doc/gcc-5/README.Bugs --enable-languages=c,ada,c++,java,go,d,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-5 --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-libmpx --enable-plugin --with-system-zlib --disable-browser-plugin --enable-java-awt=gtk --enable-gtk-cairo --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-5-amd64/jre --enable-java-home --with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-5-amd64 --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-5-amd64 --with-arch-directory=amd64 --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --enable-objc-gc --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu Thread model: posix gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.12) ```
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: github-starred/barrier#1073
No description provided.