Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Build error with Boost 1.75.0 #238

Closed
yurybura opened this issue Dec 14, 2020 · 19 comments · Fixed by #241
Closed

Build error with Boost 1.75.0 #238

yurybura opened this issue Dec 14, 2020 · 19 comments · Fixed by #241

Comments

@yurybura
Copy link

telnetpp doesn't compile with MSVC compiler and Boost 1.75.0.
Error:

[6/24] "C:\PROGRA~2\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.27.29110\bin\Hostx64\x64\cl.exe"   /TP -Dtelnetpp_EXPORTS -ID:\buildtrees\telnetpp\src\c050d4c659-52a444ec23.clean\include -ID:\installed\x64-windows\include /nologo /DWIN32 /D_WINDOWS /W3 /utf-8 /GR /EHsc /MP  /D_DEBUG /MDd /Z7 /Ob0 /Od /RTC1  -std:c++14 /showIncludes /FoCMakeFiles\telnetpp.dir\src\options\msdp\variable.cpp.obj /FdCMakeFiles\telnetpp.dir\ /FS -c D:\buildtrees\telnetpp\src\c050d4c659-52a444ec23.clean\src\options\msdp\variable.cpp
FAILED: CMakeFiles/telnetpp.dir/src/options/msdp/variable.cpp.obj 
"C:\PROGRA~2\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.27.29110\bin\Hostx64\x64\cl.exe"   /TP -Dtelnetpp_EXPORTS -ID:\buildtrees\telnetpp\src\c050d4c659-52a444ec23.clean\include -ID:\installed\x64-windows\include /nologo /DWIN32 /D_WINDOWS /W3 /utf-8 /GR /EHsc /MP  /D_DEBUG /MDd /Z7 /Ob0 /Od /RTC1  -std:c++14 /showIncludes /FoCMakeFiles\telnetpp.dir\src\options\msdp\variable.cpp.obj /FdCMakeFiles\telnetpp.dir\ /FS -c D:\buildtrees\telnetpp\src\c050d4c659-52a444ec23.clean\src\options\msdp\variable.cpp
D:\buildtrees\telnetpp\src\c050d4c659-52a444ec23.clean\include\telnetpp/options/msdp/variable.hpp(70): warning C4251: 'telnetpp::options::msdp::variable::name': class 'std::basic_string<telnetpp::byte,std::char_traits<telnetpp::byte>,std::allocator<telnetpp::byte>>' needs to have dll-interface to be used by clients of struct 'telnetpp::options::msdp::variable'
D:\buildtrees\telnetpp\src\c050d4c659-52a444ec23.clean\include\telnetpp/core.hpp(43): note: see declaration of 'std::basic_string<telnetpp::byte,std::char_traits<telnetpp::byte>,std::allocator<telnetpp::byte>>'
D:\buildtrees\telnetpp\src\c050d4c659-52a444ec23.clean\include\telnetpp/options/msdp/variable.hpp(71): warning C4251: 'telnetpp::options::msdp::variable::value': class 'boost::variant<telnetpp::options::msdp::string_value,telnetpp::options::msdp::array_value,boost::recursive_wrapper<telnetpp::options::msdp::table_value>>' needs to have dll-interface to be used by clients of struct 'telnetpp::options::msdp::variable'
D:\buildtrees\telnetpp\src\c050d4c659-52a444ec23.clean\include\telnetpp/options/msdp/variable.hpp(22): note: see declaration of 'boost::variant<telnetpp::options::msdp::string_value,telnetpp::options::msdp::array_value,boost::recursive_wrapper<telnetpp::options::msdp::table_value>>'
D:\installed\x64-windows\include\boost/move/detail/type_traits.hpp(968): error C2079: 'boost::move_detail::alignment_of_hack<T>::t1' uses undefined struct 'telnetpp::options::msdp::variable' 
...

More information you can find in PR: microsoft/vcpkg#15090
Full build log: https://dev.azure.com/vcpkg/c1ee48cb-0df2-4ab3-8384-b1df5a79fe53/_apis/build/builds/46451/artifacts?artifactName=failure%20logs%20for%20x64-windows&api-version=6.0&%24format=zip

@KazDragon
Copy link
Owner

Hi @yurybura. Thanks for your bug report.

This seems to be related to the vcpkg port, which I am not the maintainer for (although I am happy that someone felt it was worthwhile to do so). In fact, I only started supporting MSVC officially as a target a couple of days ago.

This looks like some dllimport/dllexport issue. I don't have a huge amount of familiarity with that, so it might take a little while to figure out. Any help would be appreciated

@KazDragon
Copy link
Owner

Ok, it seems that shared libraries do generate a lot of noise, but that isn't what actually broke in the full build linked. That was here:

D:\installed\x64-windows\include\boost/move/detail/type_traits.hpp(968): error C2079: 'boost::move_detail::alignment_of_hack<T>::t1' uses undefined struct 'telnetpp::options::msdp::variable' with [ T=telnetpp::options::msdp::variable ] D:\installed\x64-windows\include\boost/move/detail/type_traits.hpp(985): note: see reference to class template instantiation 'boost::move_detail::alignment_of_hack<T>' being compiled with [ T=telnetpp::options::msdp::variable ] D:\installed\x64-windows\include\boost/move/detail/type_traits.hpp(997): note: see reference to class template instantiation 'boost::move_detail::alignment_of_impl<T>' being compiled with [ T=telnetpp::options::msdp::variable ] D:\installed\x64-windows\include\boost/container/small_vector.hpp(417): note: see reference to class template instantiation 'boost::move_detail::alignment_of<T>' being compiled with [ T=telnetpp::options::msdp::variable ] D:\installed\x64-windows\include\boost/container/small_vector.hpp(549): note: see reference to class template instantiation 'boost::container::small_vector_base<T,Allocator,Options>' being compiled with [ T=telnetpp::options::msdp::variable, Allocator=void, Options=void ] D:\installed\x64-windows\include\boost/type_traits/is_nothrow_move_assignable.hpp(29): note: see reference to class template instantiation

@yurybura
Copy link
Author

yurybura commented Dec 15, 2020

@KazDragon Thank you for your attention to this issue. I would appreciate any help too).

@KazDragon
Copy link
Owner

So I have downloaded and installed Boost 1.75.0 and built Telnet++ against it. It compiled and linked just fine. I cannot reproduce your issue. Does this issue still present itself to you if you are building with static libraries instead of dynamic libraries?

@cenit
Copy link

cenit commented Dec 17, 2020

What is the compiler version you both used? that might explain the differences in behaviour

@KazDragon
Copy link
Owner

I ported Telnet++ to Visual Studio 2019 just last week (whoever did the vcpkg was way ahead of me, and I am grateful to them).

@KazDragon
Copy link
Owner

The issue may well be that the version of Telnet++ in vcpkg has not been updated in 7 months.

@niclar
Copy link

niclar commented Dec 18, 2020

@KazDragon can you push an update ?

@yurybura
Copy link
Author

@yurybura
Copy link
Author

I think Telnet++ is failed with dynamic linking in Visual Studio.

@KazDragon
Copy link
Owner

I've just integrated a change that enables Telnet++ to be built as a dll on Visual Studio 2019. Does this solve your problem?

@yurybura
Copy link
Author

@KazDragon Thank you for support.
I've made a local test with your latest changes. Full log:

d:\libs\telnetpp>mkdir build

d:\libs\telnetpp>cd build

d:\libs\telnetpp\build>cmake -G "Visual Studio 16 2019" -A x64 -DCMAKE_TOOLCHAIN_FILE=d:\libs\yurybura\vcpkg\scripts\buildsystems\vcpkg.cmake -DTELNETPP_WITH_ZLIB=False -DBUILD_SHARED_LIBS=True -DTELNETPP_WITH_TESTS=False ..
-- Selecting Windows SDK version 10.0.18362.0 to target Windows 10.0.18363.
-- The C compiler identification is MSVC 19.28.29335.0
-- The CXX compiler identification is MSVC 19.28.29335.0
-- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio/2019/Professional/VC/Tools/MSVC/14.28.29333/bin/Hostx64/x64/cl.exe
-- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio/2019/Professional/VC/Tools/MSVC/14.28.29333/bin/Hostx64/x64/cl.exe - works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: C:/Program Files (x86)/Microsoft Visual Studio/2019/Professional/VC/Tools/MSVC/14.28.29333/bin/Hostx64/x64/cl.exe
-- Check for working CXX compiler: C:/Program Files (x86)/Microsoft Visual Studio/2019/Professional/VC/Tools/MSVC/14.28.29333/bin/Hostx64/x64/cl.exe - works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
CMake Deprecation Warning at CMakeLists.txt:12 (cmake_policy):
  The OLD behavior for policy CMP0063 will be removed from a future version
  of CMake.

  The cmake-policies(7) manual explains that the OLD behaviors of all
  policies are deprecated and that a policy should be set to OLD only under
  specific short-term circumstances.  Projects should be ported to the NEW
  behavior and not rely on setting a policy to OLD.


Building Telnet++ with build type:
Building Telnet++ with zlib: False
Building Telnet++ with code coverage: OFF
Building Telnet++ with sanitizers: OFF
Building Telnet++ with tests: False
Building Telnet++ with only documentation: OFF
-- Could NOT find Doxygen (missing: DOXYGEN_EXECUTABLE)
CMake Warning at C:/Program Files/CMake/share/cmake-3.17/Modules/FindBoost.cmake:1164 (message):
  New Boost version may have incorrect or missing dependencies and imported
  targets
Call Stack (most recent call first):
  C:/Program Files/CMake/share/cmake-3.17/Modules/FindBoost.cmake:1286 (_Boost_COMPONENT_DEPENDENCIES)
  C:/Program Files/CMake/share/cmake-3.17/Modules/FindBoost.cmake:1887 (_Boost_MISSING_DEPENDENCIES)
  D:/libs/yurybura/vcpkg/scripts/buildsystems/vcpkg.cmake:589 (_find_package)
  CMakeLists.txt:85 (find_package)


-- Found Boost: D:/libs/yurybura/vcpkg/installed/x64-windows/include (found suitable version "1.75.0", minimum required is "1.69.0") found components: container
-- Performing Test COMPILER_HAS_DEPRECATED_ATTR
-- Performing Test COMPILER_HAS_DEPRECATED_ATTR - Failed
-- Performing Test COMPILER_HAS_DEPRECATED
-- Performing Test COMPILER_HAS_DEPRECATED - Success
-- Configuring done
-- Generating done
-- Build files have been written to: D:/libs/telnetpp/build

d:\libs\telnetpp\build>cmake --build . --config Release
Microsoft (R) Build Engine version 16.8.2+25e4d540b for .NET Framework
Copyright (C) Microsoft Corporation. All rights reserved.

  Checking Build System
  Building Custom Rule D:/libs/telnetpp/CMakeLists.txt
  command.cpp
  element.cpp
D:\libs\telnetpp\include\telnetpp/subnegotiation.hpp(43,19): warning C4251: 'telnetpp::subnegotiation::content_': class 'gsl::span<const telnetpp::byte>' needs to have dll-interface to be used by clients of class 'telnetpp::subnegotiati
on' [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\telnetpp\include\telnetpp/core.hpp(39): message : see declaration of 'gsl::span<const telnetpp::byte>' [D:\libs\telnetpp\build\telnetpp.vcxproj]
  negotiation.cpp
  codec.cpp
D:\libs\telnetpp\include\telnetpp/options/mccp/codec.hpp(83,30): warning C4275: non dll-interface class 'std::domain_error' used as base for dll-interface class 'telnetpp::options::mccp::corrupted_stream_error' [D:\libs\telnetpp\build\t
elnetpp.vcxproj]
C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.28.29333\include\stdexcept(39): message : see declaration of 'std::domain_error' [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\telnetpp\include\telnetpp/options/mccp/codec.hpp(82): message : see declaration of 'telnetpp::options::mccp::corrupted_stream_error' [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\telnetpp\include\telnetpp/options/mccp/codec.hpp(85,1): warning C4275: non dll-interface class 'boost::exception' used as base for dll-interface class 'telnetpp::options::mccp::corrupted_stream_error' [D:\libs\telnetpp\build\tel
netpp.vcxproj]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/exception/exception.hpp(222): message : see declaration of 'boost::exception' [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\telnetpp\include\telnetpp/options/mccp/codec.hpp(82): message : see declaration of 'telnetpp::options::mccp::corrupted_stream_error' [D:\libs\telnetpp\build\telnetpp.vcxproj]
  variable.cpp
D:\libs\telnetpp\include\telnetpp/options/msdp/variable.hpp(70,32): warning C4251: 'telnetpp::options::msdp::variable::name': class 'std::basic_string<telnetpp::byte,std::char_traits<telnetpp::byte>,std::allocator<telnetpp::byte>>' need
s to have dll-interface to be used by clients of struct 'telnetpp::options::msdp::variable' [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\telnetpp\include\telnetpp/core.hpp(43): message : see declaration of 'std::basic_string<telnetpp::byte,std::char_traits<telnetpp::byte>,std::allocator<telnetpp::byte>>' [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\telnetpp\include\telnetpp/options/msdp/variable.hpp(71,21): warning C4251: 'telnetpp::options::msdp::variable::value': class 'boost::variant<telnetpp::options::msdp::string_value,telnetpp::options::msdp::array_value,boost::recur
sive_wrapper<telnetpp::options::msdp::table_value>>' needs to have dll-interface to be used by clients of struct 'telnetpp::options::msdp::variable' [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\telnetpp\include\telnetpp/options/msdp/variable.hpp(22): message : see declaration of 'boost::variant<telnetpp::options::msdp::string_value,telnetpp::options::msdp::array_value,boost::recursive_wrapper<telnetpp::options::msdp::t
able_value>>' [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/move/detail/type_traits.hpp(968,6): error C2079: 'boost::move_detail::alignment_of_hack<T>::t1' uses undefined struct 'telnetpp::options::msdp::variable' [D:\libs\telnetpp\build
\telnetpp.vcxproj]
          with
          [
              T=telnetpp::options::msdp::variable
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/move/detail/type_traits.hpp(985): message : see reference to class template instantiation 'boost::move_detail::alignment_of_hack<T>' being compiled [D:\libs\telnetpp\build\telne
tpp.vcxproj]
          with
          [
              T=telnetpp::options::msdp::variable
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/move/detail/type_traits.hpp(997): message : see reference to class template instantiation 'boost::move_detail::alignment_of_impl<T>' being compiled [D:\libs\telnetpp\build\telne
tpp.vcxproj]
          with
          [
              T=telnetpp::options::msdp::variable
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/container/small_vector.hpp(417): message : see reference to class template instantiation 'boost::move_detail::alignment_of<T>' being compiled [D:\libs\telnetpp\build\telnetpp.vc
xproj]
          with
          [
              T=telnetpp::options::msdp::variable
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/container/small_vector.hpp(549): message : see reference to class template instantiation 'boost::container::small_vector_base<T,Allocator,Options>' being compiled [D:\libs\telne
tpp\build\telnetpp.vcxproj]
          with
          [
              T=telnetpp::options::msdp::variable,
              Allocator=void,
              Options=void
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/type_traits/is_nothrow_move_assignable.hpp(29): message : see reference to class template instantiation 'boost::container::small_vector<telnetpp::options::msdp::variable,4,void,
void>' being compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/aux_/has_type.hpp(20): message : see reference to class template instantiation 'boost::is_nothrow_move_assignable<U1>' being compiled [D:\libs\telnetpp\build\telnetpp.vcxpro
j]
          with
          [
              U1=boost::recursive_wrapper<telnetpp::options::msdp::table_value>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/aux_/has_type.hpp(20): message : while compiling class template member function 'boost::mpl::aux::yes_tag boost::mpl::aux::has_type<boost::is_nothrow_move_assignable<U1>,boo
st::mpl::bool_<true>>::gcc_3_2_wknd::test(volatile const boost::mpl::aux::type_wrapper<U> *,boost::mpl::aux::type_wrapper<U::type> *)' [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              U1=boost::recursive_wrapper<telnetpp::options::msdp::table_value>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/aux_/preprocessed/plain/quote.hpp(36): message : see reference to class template instantiation 'boost::mpl::aux::has_type<boost::is_nothrow_move_assignable<U1>,boost::mpl::b
ool_<true>>' being compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              U1=boost::recursive_wrapper<telnetpp::options::msdp::table_value>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/aux_/preprocessed/plain/apply_wrap.hpp(39): message : see reference to class template instantiation 'boost::mpl::quote1<F,Tag>::apply<T1>' being compiled [D:\libs\telnetpp\b
uild\telnetpp.vcxproj]
          with
          [
              F=boost::is_nothrow_move_assignable,
              Tag=boost::mpl::void_,
              T1=boost::recursive_wrapper<telnetpp::options::msdp::table_value>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/aux_/preprocessed/plain/bind.hpp(144): message : see reference to class template instantiation 'boost::mpl::apply_wrap1<boost::mpl::quote1<F,Tag>,boost::recursive_wrapper<te
lnetpp::options::msdp::table_value>>' being compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              F=boost::is_nothrow_move_assignable,
              Tag=boost::mpl::void_
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/aux_/preprocessed/plain/apply_wrap.hpp(80): message : see reference to class template instantiation 'boost::mpl::bind1<boost::mpl::quote1<F,Tag>,boost::mpl::arg<1>>::apply<T
1,T2,T3,T4,T5>' being compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              F=boost::is_nothrow_move_assignable,
              Tag=boost::mpl::void_,
              T1=boost::recursive_wrapper<telnetpp::options::msdp::table_value>,
              T2=boost::mpl::na,
              T3=boost::mpl::na,
              T4=boost::mpl::na,
              T5=boost::mpl::na
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/aux_/preprocessed/plain/bind.hpp(160): message : see reference to class template instantiation 'boost::mpl::apply_wrap5<boost::mpl::bind1<boost::mpl::quote1<F,Tag>,boost::mp
l::arg<1>>,U1,U2,U3,U4,U5>' being compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              F=boost::is_nothrow_move_assignable,
              Tag=boost::mpl::void_,
              U1=boost::recursive_wrapper<telnetpp::options::msdp::table_value>,
              U2=boost::mpl::na,
              U3=boost::mpl::na,
              U4=boost::mpl::na,
              U5=boost::mpl::na
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/aux_/preprocessed/plain/bind.hpp(143): message : see reference to class template instantiation 'boost::mpl::aux::resolve_bind_arg<boost::mpl::bind1<boost::mpl::quote1<F,Tag>
,boost::mpl::arg<1>>,U1,U2,U3,U4,U5>' being compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              F=boost::is_nothrow_move_assignable,
              Tag=boost::mpl::void_,
              U1=boost::recursive_wrapper<telnetpp::options::msdp::table_value>,
              U2=boost::mpl::na,
              U3=boost::mpl::na,
              U4=boost::mpl::na,
              U5=boost::mpl::na
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/aux_/preprocessed/plain/apply_wrap.hpp(39): message : see reference to class template instantiation 'boost::mpl::bind1<boost::mpl::quote1<F,Tag>,boost::mpl::bind1<boost::mpl
::quote1<boost::is_nothrow_move_assignable,Tag>,boost::mpl::arg<1>>>::apply<T1,boost::mpl::na,boost::mpl::na,boost::mpl::na,boost::mpl::na>' being compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              F=boost::mpl::not_,
              Tag=boost::mpl::void_,
              T1=boost::recursive_wrapper<telnetpp::options::msdp::table_value>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/aux_/preprocessed/plain/apply.hpp(43): message : see reference to class template instantiation 'boost::mpl::apply_wrap1<boost::mpl::protect<boost::mpl::bind1<boost::mpl::quo
te1<F,Tag>,boost::mpl::bind1<boost::mpl::quote1<boost::is_nothrow_move_assignable,Tag>,boost::mpl::arg<1>>>,0>,T1>' being compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              F=boost::mpl::not_,
              Tag=boost::mpl::void_,
              T1=boost::recursive_wrapper<telnetpp::options::msdp::table_value>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/aux_/iter_apply.hpp(28): message : see reference to class template instantiation 'boost::mpl::apply1<F,boost::recursive_wrapper<telnetpp::options::msdp::table_value>>' being
 compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              F=boost::mpl::not_<boost::is_nothrow_move_assignable<boost::mpl::_1>>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/not.hpp(40): message : see reference to class template instantiation 'boost::mpl::aux::iter_apply1<Predicate,Iterator>' being compiled [D:\libs\telnetpp\build\telnetpp.vcxpr
oj]
          with
          [
              Predicate=boost::mpl::not_<boost::is_nothrow_move_assignable<boost::mpl::_1>>,
              Iterator=boost::mpl::l_iter<boost::mpl::l_item<boost::mpl::long_<1>,boost::recursive_wrapper<telnetpp::options::msdp::table_value>,boost::mpl::l_end>>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/aux_/preprocessed/plain/and.hpp(24): message : see reference to class template instantiation 'boost::mpl::not_<boost::mpl::aux::iter_apply1<Predicate,Iterator>>' being compi
led [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              Predicate=boost::mpl::not_<boost::is_nothrow_move_assignable<boost::mpl::_1>>,
              Iterator=boost::mpl::l_iter<boost::mpl::l_item<boost::mpl::long_<1>,boost::recursive_wrapper<telnetpp::options::msdp::table_value>,boost::mpl::l_end>>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/aux_/preprocessed/plain/and.hpp(55): message : see reference to class template instantiation 'boost::mpl::aux::and_impl<true,T2,T3,T3,T5>' being compiled [D:\libs\telnetpp\b
uild\telnetpp.vcxproj]
          with
          [
              T2=boost::mpl::apply1<boost::mpl::protect<boost::mpl::aux::find_if_pred<boost::mpl::not_<boost::is_nothrow_move_assignable<boost::mpl::_1>>>,0>,boost::mpl::l_iter<boost::mpl::l_item<boost::mpl::long_<1>,boost::recursive_wr
  apper<telnetpp::options::msdp::table_value>,boost::mpl::l_end>>>,
              T3=boost::mpl::true_,
              T5=boost::mpl::true_
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/iter_fold_if.hpp(46): message : see reference to class template instantiation 'boost::mpl::and_<boost::mpl::not_<boost::is_same<Iterator,LastIterator>>,boost::mpl::apply1<Pr
edicate,Iterator>,boost::mpl::true_,boost::mpl::true_,boost::mpl::true_>' being compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              Iterator=boost::mpl::l_iter<boost::mpl::l_item<boost::mpl::long_<1>,boost::recursive_wrapper<telnetpp::options::msdp::table_value>,boost::mpl::l_end>>,
              LastIterator=boost::mpl::l_iter<boost::mpl::l_end>,
              Predicate=boost::mpl::protect<boost::mpl::aux::find_if_pred<boost::mpl::not_<boost::is_nothrow_move_assignable<boost::mpl::_1>>>,0>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/aux_/preprocessed/plain/apply_wrap.hpp(49): message : see reference to class template instantiation 'boost::mpl::aux::iter_fold_if_pred<ForwardPredicate,boost::mpl::l_iter<b
oost::mpl::l_end>>::apply<T1,T2>' being compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              ForwardPredicate=boost::mpl::protect<boost::mpl::aux::find_if_pred<boost::mpl::not_<boost::is_nothrow_move_assignable<boost::mpl::_1>>>,0>,
              T1=void,
              T2=boost::mpl::l_iter<boost::mpl::l_item<boost::mpl::long_<1>,boost::recursive_wrapper<telnetpp::options::msdp::table_value>,boost::mpl::l_end>>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/aux_/preprocessed/plain/apply.hpp(63): message : see reference to class template instantiation 'boost::mpl::apply_wrap2<boost::mpl::protect<boost::mpl::aux::iter_fold_if_pre
d<ForwardPredicate,boost::mpl::l_iter<boost::mpl::l_end>>,0>,T1,T2>' being compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              ForwardPredicate=boost::mpl::protect<boost::mpl::aux::find_if_pred<boost::mpl::not_<boost::is_nothrow_move_assignable<boost::mpl::_1>>>,0>,
              T1=void,
              T2=boost::mpl::l_iter<boost::mpl::l_item<boost::mpl::long_<1>,boost::recursive_wrapper<telnetpp::options::msdp::table_value>,boost::mpl::l_end>>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/aux_/preprocessed/plain/iter_fold_if_impl.hpp(62): message : see reference to class template instantiation 'boost::mpl::apply2<Predicate,State,Iterator>' being compiled [D:\
libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              Predicate=boost::mpl::protect<boost::mpl::aux::iter_fold_if_pred<boost::mpl::protect<boost::mpl::aux::find_if_pred<boost::mpl::not_<boost::is_nothrow_move_assignable<boost::mpl::_1>>>,0>,boost::mpl::l_iter<boost::mpl::l_en
  d>>,0>,
              State=void,
              Iterator=boost::mpl::l_iter<boost::mpl::l_item<boost::mpl::long_<1>,boost::recursive_wrapper<telnetpp::options::msdp::table_value>,boost::mpl::l_end>>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/aux_/preprocessed/plain/iter_fold_if_impl.hpp(103): message : see reference to class template instantiation 'boost::mpl::aux::iter_fold_if_forward_step<boost::mpl::l_iter<bo
ost::mpl::l_item<boost::mpl::long_<1>,T0,boost::mpl::l_end>>,void,ForwardOp,ForwardPredicate>' being compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              T0=boost::recursive_wrapper<telnetpp::options::msdp::table_value>,
              ForwardOp=boost::mpl::arg<1>,
              ForwardPredicate=boost::mpl::protect<boost::mpl::aux::iter_fold_if_pred<boost::mpl::protect<boost::mpl::aux::find_if_pred<boost::mpl::not_<boost::is_nothrow_move_assignable<boost::mpl::_1>>>,0>,boost::mpl::l_iter<boost::mp
  l::l_end>>,0>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/iter_fold_if.hpp(94): message : see reference to class template instantiation 'boost::mpl::aux::iter_fold_if_impl<boost::mpl::l_iter<boost::mpl::l_item<boost::mpl::long_<3>,
T,boost::mpl::l_item<boost::mpl::long_<2>,boost::container::small_vector<T,4,void,void>,boost::mpl::l_item<boost::mpl::long_<1>,T0,boost::mpl::l_end>>>>,State,ForwardOp,boost::mpl::protect<boost::mpl::aux::iter_fold_if_pred<ForwardPredi
cate,boost::mpl::l_iter<boost::mpl::l_end>>,0>,BackwardOp,boost::mpl::always<boost::mpl::false_>>' being compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              T=std::basic_string<telnetpp::byte,std::char_traits<telnetpp::byte>,std::allocator<telnetpp::byte>>,
              T0=boost::recursive_wrapper<telnetpp::options::msdp::table_value>,
              State=void,
              ForwardOp=boost::mpl::arg<1>,
              ForwardPredicate=boost::mpl::protect<boost::mpl::aux::find_if_pred<boost::mpl::not_<boost::is_nothrow_move_assignable<boost::mpl::_1>>>,0>,
              BackwardOp=boost::mpl::na
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/iter_fold_if.hpp(102): message : see reference to class template instantiation 'boost::mpl::iter_fold_if<Sequence,void,boost::mpl::arg<1>,boost::mpl::protect<boost::mpl::aux
::find_if_pred<Predicate>,0>,boost::mpl::na,boost::mpl::na>::result_' being compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              Sequence=boost::mpl::l_item<boost::mpl::long_<3>,std::basic_string<telnetpp::byte,std::char_traits<telnetpp::byte>,std::allocator<telnetpp::byte>>,boost::mpl::l_item<boost::mpl::long_<2>,boost::container::small_vector<teln
  etpp::options::msdp::string_value,4,void,void>,boost::mpl::l_item<boost::mpl::long_<1>,boost::recursive_wrapper<telnetpp::options::msdp::table_value>,boost::mpl::l_end>>>,
              Predicate=boost::mpl::not_<boost::is_nothrow_move_assignable<boost::mpl::_1>>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/find_if.hpp(39): message : see reference to class template instantiation 'boost::mpl::iter_fold_if<Sequence,void,boost::mpl::arg<1>,boost::mpl::protect<boost::mpl::aux::find
_if_pred<Predicate>,0>,boost::mpl::na,boost::mpl::na>' being compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              Sequence=boost::mpl::l_item<boost::mpl::long_<3>,std::basic_string<telnetpp::byte,std::char_traits<telnetpp::byte>,std::allocator<telnetpp::byte>>,boost::mpl::l_item<boost::mpl::long_<2>,boost::container::small_vector<teln
  etpp::options::msdp::string_value,4,void,void>,boost::mpl::l_item<boost::mpl::long_<1>,boost::recursive_wrapper<telnetpp::options::msdp::table_value>,boost::mpl::l_end>>>,
              Predicate=boost::mpl::not_<boost::is_nothrow_move_assignable<boost::mpl::_1>>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/variant/variant.hpp(251): message : see reference to class template instantiation 'boost::mpl::find_if<Types,boost::mpl::not_<boost::is_nothrow_move_assignable<boost::mpl::_1>>>
' being compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              Types=boost::mpl::l_item<boost::mpl::long_<3>,std::basic_string<telnetpp::byte,std::char_traits<telnetpp::byte>,std::allocator<telnetpp::byte>>,boost::mpl::l_item<boost::mpl::long_<2>,boost::container::small_vector<telnetp
  p::options::msdp::string_value,4,void,void>,boost::mpl::l_item<boost::mpl::long_<1>,boost::recursive_wrapper<telnetpp::options::msdp::table_value>,boost::mpl::l_end>>>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/variant/variant.hpp(2173): message : see reference to class template instantiation 'boost::detail::variant::is_variant_move_noexcept_assignable<boost::mpl::l_item<boost::mpl::lo
ng_<3>,T,boost::mpl::l_item<boost::mpl::long_<2>,boost::container::small_vector<T,4,void,void>,boost::mpl::l_item<boost::mpl::long_<1>,T0,boost::mpl::l_end>>>>' being compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              T=std::basic_string<telnetpp::byte,std::char_traits<telnetpp::byte>,std::allocator<telnetpp::byte>>,
              T0=boost::recursive_wrapper<telnetpp::options::msdp::table_value>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/move/detail/type_traits.hpp(970,6): error C2079: 'boost::move_detail::alignment_of_hack<T>::t2' uses undefined struct 'telnetpp::options::msdp::variable' [D:\libs\telnetpp\build
\telnetpp.vcxproj]
          with
          [
              T=telnetpp::options::msdp::variable
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/move/detail/type_traits.hpp(985): error C2027: use of undefined type 'telnetpp::options::msdp::variable' [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\telnetpp\include\telnetpp/options/msdp/variable.hpp(33): message : see declaration of 'telnetpp::options::msdp::variable' [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/container/small_vector.hpp(421,1): error C2027: use of undefined type 'telnetpp::options::msdp::variable' [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\telnetpp\include\telnetpp/options/msdp/variable.hpp(33): message : see declaration of 'telnetpp::options::msdp::variable' [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/move/detail/type_traits.hpp(1175,4): error C2338: Align > 0 [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/container/small_vector.hpp(421): message : see reference to class template instantiation 'boost::move_detail::aligned_storage<0,0>' being compiled [D:\libs\telnetpp\build\telnet
pp.vcxproj]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/move/detail/type_traits.hpp(1110,3): error C2079: 'boost::move_detail::aligned_struct_wrapper<1,0>::aligner' uses undefined struct 'boost::move_detail::aligned_struct<1,0>' [D:\
libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/move/detail/type_traits.hpp(968): message : see reference to class template instantiation 'boost::move_detail::aligned_struct_wrapper<1,0>' being compiled [D:\libs\telnetpp\buil
d\telnetpp.vcxproj]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/move/detail/type_traits.hpp(985): message : see reference to class template instantiation 'boost::move_detail::alignment_of_hack<T>' being compiled [D:\libs\telnetpp\build\telne
tpp.vcxproj]
          with
          [
              T=boost::move_detail::aligned_struct_wrapper<1,0>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/move/detail/type_traits.hpp(997): message : see reference to class template instantiation 'boost::move_detail::alignment_of_impl<T>' being compiled [D:\libs\telnetpp\build\telne
tpp.vcxproj]
          with
          [
              T=boost::move_detail::aligned_struct_wrapper<1,0>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/move/detail/type_traits.hpp(1179): message : see reference to class template instantiation 'boost::move_detail::alignment_of<boost::move_detail::aligned_struct_wrapper<1,0>>' be
ing compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/move/detail/type_traits.hpp(1111,1): error C2027: use of undefined type 'boost::move_detail::aligned_struct<1,0>' [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/move/detail/type_traits.hpp(1109): message : see declaration of 'boost::move_detail::aligned_struct<1,0>' [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/container/small_vector.hpp(502,1): error C2027: use of undefined type 'telnetpp::options::msdp::variable' [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\telnetpp\include\telnetpp/options/msdp/variable.hpp(33): message : see declaration of 'telnetpp::options::msdp::variable' [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/container/small_vector.hpp(528): message : see reference to class template instantiation 'boost::container::small_vector_storage_calculator<boost::move_detail::aligned_struct_wr
apper<1,0>,Allocator,telnetpp::options::msdp::variable,4,Options>' being compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              Allocator=void,
              Options=void
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/container/small_vector.hpp(549): message : see reference to class template instantiation 'boost::container::small_vector_storage_definer<T,Allocator,4,Options>' being compiled [
D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              T=telnetpp::options::msdp::variable,
              Allocator=void,
              Options=void
          ]
  session.cpp
D:\libs\telnetpp\include\telnetpp/subnegotiation.hpp(43,19): warning C4251: 'telnetpp::subnegotiation::content_': class 'gsl::span<const telnetpp::byte>' needs to have dll-interface to be used by clients of class 'telnetpp::subnegotiati
on' [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\telnetpp\include\telnetpp/core.hpp(39): message : see declaration of 'gsl::span<const telnetpp::byte>' [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\telnetpp\include\telnetpp/option.hpp(235,1): warning C4251: 'telnetpp::option<LocalPositive,LocalNegative,RemotePositive,RemoteNegative>::on_state_changed': class 'boost::signals2::signal<void (const telnetpp::option<LocalPositi
ve,LocalNegative,RemotePositive,RemoteNegative>::continuation &),boost::signals2::optional_last_value<void>,int,std::less<Group>,boost::function<Signature>,boost::function<R (const boost::signals2::connection &,const telnetpp::option<Lo
calPositive,LocalNegative,RemotePositive,RemoteNegative>::continuation &)>,boost::signals2::mutex>' needs to have dll-interface to be used by clients of class 'telnetpp::option<LocalPositive,LocalNegative,RemotePositive,RemoteNegative>'
 [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              Group=int,
              Signature=void (const telnetpp::option<LocalPositive,LocalNegative,RemotePositive,RemoteNegative>::continuation &),
              R=void
          ]
D:\libs\telnetpp\include\telnetpp/option.hpp(235): message : see declaration of 'boost::signals2::signal<void (const telnetpp::option<LocalPositive,LocalNegative,RemotePositive,RemoteNegative>::continuation &),boost::signals2::optional_
last_value<void>,int,std::less<Group>,boost::function<Signature>,boost::function<R (const boost::signals2::connection &,const telnetpp::option<LocalPositive,LocalNegative,RemotePositive,RemoteNegative>::continuation &)>,boost::signals2:
:mutex>' [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              Group=int,
              Signature=void (const telnetpp::option<LocalPositive,LocalNegative,RemotePositive,RemoteNegative>::continuation &),
              R=void
          ]
D:\libs\telnetpp\include\telnetpp/option.hpp(265): message : see reference to class template instantiation 'telnetpp::option<LocalPositive,LocalNegative,RemotePositive,RemoteNegative>' being compiled [D:\libs\telnetpp\build\telnetpp.vcx
proj]
D:\libs\telnetpp\include\telnetpp/session.hpp(282,61): warning C4251: 'telnetpp::session::unparsed_buffer_': class 'std::basic_string<telnetpp::byte,std::char_traits<telnetpp::byte>,std::allocator<telnetpp::byte>>' needs to have dll-int
erface to be used by clients of class 'telnetpp::session' [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\telnetpp\include\telnetpp/core.hpp(43): message : see declaration of 'std::basic_string<telnetpp::byte,std::char_traits<telnetpp::byte>,std::allocator<telnetpp::byte>>' [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\telnetpp\include\telnetpp/session.hpp(283,60): warning C4251: 'telnetpp::session::command_router_': class 'telnetpp::detail::command_router' needs to have dll-interface to be used by clients of class 'telnetpp::session' [D:\libs
\telnetpp\build\telnetpp.vcxproj]
D:\libs\telnetpp\include\telnetpp/detail/command_router.hpp(17): message : see declaration of 'telnetpp::detail::command_router' [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\telnetpp\include\telnetpp/session.hpp(284,64): warning C4251: 'telnetpp::session::negotiation_router_': class 'telnetpp::detail::negotiation_router' needs to have dll-interface to be used by clients of class 'telnetpp::session'
[D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\telnetpp\include\telnetpp/detail/negotiation_router.hpp(24): message : see declaration of 'telnetpp::detail::negotiation_router' [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\telnetpp\include\telnetpp/session.hpp(285,67): warning C4251: 'telnetpp::session::subnegotiation_router_': class 'telnetpp::detail::subnegotiation_router' needs to have dll-interface to be used by clients of class 'telnetpp::ses
sion' [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\telnetpp\include\telnetpp/detail/subnegotiation_router.hpp(18): message : see declaration of 'telnetpp::detail::subnegotiation_router' [D:\libs\telnetpp\build\telnetpp.vcxproj]
  subnegotiation.cpp
D:\libs\telnetpp\include\telnetpp/subnegotiation.hpp(43,19): warning C4251: 'telnetpp::subnegotiation::content_': class 'gsl::span<const telnetpp::byte>' needs to have dll-interface to be used by clients of class 'telnetpp::subnegotiati
on' [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\telnetpp\include\telnetpp/core.hpp(39): message : see declaration of 'gsl::span<const telnetpp::byte>' [D:\libs\telnetpp\build\telnetpp.vcxproj]
  decoder.cpp
D:\libs\telnetpp\include\telnetpp/options/msdp/variable.hpp(70,32): warning C4251: 'telnetpp::options::msdp::variable::name': class 'std::basic_string<telnetpp::byte,std::char_traits<telnetpp::byte>,std::allocator<telnetpp::byte>>' need
s to have dll-interface to be used by clients of struct 'telnetpp::options::msdp::variable' [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\telnetpp\include\telnetpp/core.hpp(43): message : see declaration of 'std::basic_string<telnetpp::byte,std::char_traits<telnetpp::byte>,std::allocator<telnetpp::byte>>' [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\telnetpp\include\telnetpp/options/msdp/variable.hpp(71,21): warning C4251: 'telnetpp::options::msdp::variable::value': class 'boost::variant<telnetpp::options::msdp::string_value,telnetpp::options::msdp::array_value,boost::recur
sive_wrapper<telnetpp::options::msdp::table_value>>' needs to have dll-interface to be used by clients of struct 'telnetpp::options::msdp::variable' [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\telnetpp\include\telnetpp/options/msdp/variable.hpp(22): message : see declaration of 'boost::variant<telnetpp::options::msdp::string_value,telnetpp::options::msdp::array_value,boost::recursive_wrapper<telnetpp::options::msdp::t
able_value>>' [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/move/detail/type_traits.hpp(968,6): error C2079: 'boost::move_detail::alignment_of_hack<T>::t1' uses undefined struct 'telnetpp::options::msdp::variable' [D:\libs\telnetpp\build
\telnetpp.vcxproj]
          with
          [
              T=telnetpp::options::msdp::variable
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/move/detail/type_traits.hpp(985): message : see reference to class template instantiation 'boost::move_detail::alignment_of_hack<T>' being compiled [D:\libs\telnetpp\build\telne
tpp.vcxproj]
          with
          [
              T=telnetpp::options::msdp::variable
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/move/detail/type_traits.hpp(997): message : see reference to class template instantiation 'boost::move_detail::alignment_of_impl<T>' being compiled [D:\libs\telnetpp\build\telne
tpp.vcxproj]
          with
          [
              T=telnetpp::options::msdp::variable
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/container/small_vector.hpp(417): message : see reference to class template instantiation 'boost::move_detail::alignment_of<T>' being compiled [D:\libs\telnetpp\build\telnetpp.vc
xproj]
          with
          [
              T=telnetpp::options::msdp::variable
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/container/small_vector.hpp(549): message : see reference to class template instantiation 'boost::container::small_vector_base<T,Allocator,Options>' being compiled [D:\libs\telne
tpp\build\telnetpp.vcxproj]
          with
          [
              T=telnetpp::options::msdp::variable,
              Allocator=void,
              Options=void
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/type_traits/is_nothrow_move_assignable.hpp(29): message : see reference to class template instantiation 'boost::container::small_vector<telnetpp::options::msdp::variable,4,void,
void>' being compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/aux_/has_type.hpp(20): message : see reference to class template instantiation 'boost::is_nothrow_move_assignable<U1>' being compiled [D:\libs\telnetpp\build\telnetpp.vcxpro
j]
          with
          [
              U1=boost::recursive_wrapper<telnetpp::options::msdp::table_value>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/aux_/has_type.hpp(20): message : while compiling class template member function 'boost::mpl::aux::yes_tag boost::mpl::aux::has_type<boost::is_nothrow_move_assignable<U1>,boo
st::mpl::bool_<true>>::gcc_3_2_wknd::test(volatile const boost::mpl::aux::type_wrapper<U> *,boost::mpl::aux::type_wrapper<U::type> *)' [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              U1=boost::recursive_wrapper<telnetpp::options::msdp::table_value>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/aux_/preprocessed/plain/quote.hpp(36): message : see reference to class template instantiation 'boost::mpl::aux::has_type<boost::is_nothrow_move_assignable<U1>,boost::mpl::b
ool_<true>>' being compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              U1=boost::recursive_wrapper<telnetpp::options::msdp::table_value>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/aux_/preprocessed/plain/apply_wrap.hpp(39): message : see reference to class template instantiation 'boost::mpl::quote1<F,Tag>::apply<T1>' being compiled [D:\libs\telnetpp\b
uild\telnetpp.vcxproj]
          with
          [
              F=boost::is_nothrow_move_assignable,
              Tag=boost::mpl::void_,
              T1=boost::recursive_wrapper<telnetpp::options::msdp::table_value>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/aux_/preprocessed/plain/bind.hpp(144): message : see reference to class template instantiation 'boost::mpl::apply_wrap1<boost::mpl::quote1<F,Tag>,boost::recursive_wrapper<te
lnetpp::options::msdp::table_value>>' being compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              F=boost::is_nothrow_move_assignable,
              Tag=boost::mpl::void_
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/aux_/preprocessed/plain/apply_wrap.hpp(80): message : see reference to class template instantiation 'boost::mpl::bind1<boost::mpl::quote1<F,Tag>,boost::mpl::arg<1>>::apply<T
1,T2,T3,T4,T5>' being compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              F=boost::is_nothrow_move_assignable,
              Tag=boost::mpl::void_,
              T1=boost::recursive_wrapper<telnetpp::options::msdp::table_value>,
              T2=boost::mpl::na,
              T3=boost::mpl::na,
              T4=boost::mpl::na,
              T5=boost::mpl::na
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/aux_/preprocessed/plain/bind.hpp(160): message : see reference to class template instantiation 'boost::mpl::apply_wrap5<boost::mpl::bind1<boost::mpl::quote1<F,Tag>,boost::mp
l::arg<1>>,U1,U2,U3,U4,U5>' being compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              F=boost::is_nothrow_move_assignable,
              Tag=boost::mpl::void_,
              U1=boost::recursive_wrapper<telnetpp::options::msdp::table_value>,
              U2=boost::mpl::na,
              U3=boost::mpl::na,
              U4=boost::mpl::na,
              U5=boost::mpl::na
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/aux_/preprocessed/plain/bind.hpp(143): message : see reference to class template instantiation 'boost::mpl::aux::resolve_bind_arg<boost::mpl::bind1<boost::mpl::quote1<F,Tag>
,boost::mpl::arg<1>>,U1,U2,U3,U4,U5>' being compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              F=boost::is_nothrow_move_assignable,
              Tag=boost::mpl::void_,
              U1=boost::recursive_wrapper<telnetpp::options::msdp::table_value>,
              U2=boost::mpl::na,
              U3=boost::mpl::na,
              U4=boost::mpl::na,
              U5=boost::mpl::na
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/aux_/preprocessed/plain/apply_wrap.hpp(39): message : see reference to class template instantiation 'boost::mpl::bind1<boost::mpl::quote1<F,Tag>,boost::mpl::bind1<boost::mpl
::quote1<boost::is_nothrow_move_assignable,Tag>,boost::mpl::arg<1>>>::apply<T1,boost::mpl::na,boost::mpl::na,boost::mpl::na,boost::mpl::na>' being compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              F=boost::mpl::not_,
              Tag=boost::mpl::void_,
              T1=boost::recursive_wrapper<telnetpp::options::msdp::table_value>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/aux_/preprocessed/plain/apply.hpp(43): message : see reference to class template instantiation 'boost::mpl::apply_wrap1<boost::mpl::protect<boost::mpl::bind1<boost::mpl::quo
te1<F,Tag>,boost::mpl::bind1<boost::mpl::quote1<boost::is_nothrow_move_assignable,Tag>,boost::mpl::arg<1>>>,0>,T1>' being compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              F=boost::mpl::not_,
              Tag=boost::mpl::void_,
              T1=boost::recursive_wrapper<telnetpp::options::msdp::table_value>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/aux_/iter_apply.hpp(28): message : see reference to class template instantiation 'boost::mpl::apply1<F,boost::recursive_wrapper<telnetpp::options::msdp::table_value>>' being
 compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              F=boost::mpl::not_<boost::is_nothrow_move_assignable<boost::mpl::_1>>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/not.hpp(40): message : see reference to class template instantiation 'boost::mpl::aux::iter_apply1<Predicate,Iterator>' being compiled [D:\libs\telnetpp\build\telnetpp.vcxpr
oj]
          with
          [
              Predicate=boost::mpl::not_<boost::is_nothrow_move_assignable<boost::mpl::_1>>,
              Iterator=boost::mpl::l_iter<boost::mpl::l_item<boost::mpl::long_<1>,boost::recursive_wrapper<telnetpp::options::msdp::table_value>,boost::mpl::l_end>>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/aux_/preprocessed/plain/and.hpp(24): message : see reference to class template instantiation 'boost::mpl::not_<boost::mpl::aux::iter_apply1<Predicate,Iterator>>' being compi
led [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              Predicate=boost::mpl::not_<boost::is_nothrow_move_assignable<boost::mpl::_1>>,
              Iterator=boost::mpl::l_iter<boost::mpl::l_item<boost::mpl::long_<1>,boost::recursive_wrapper<telnetpp::options::msdp::table_value>,boost::mpl::l_end>>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/aux_/preprocessed/plain/and.hpp(55): message : see reference to class template instantiation 'boost::mpl::aux::and_impl<true,T2,T3,T3,T5>' being compiled [D:\libs\telnetpp\b
uild\telnetpp.vcxproj]
          with
          [
              T2=boost::mpl::apply1<boost::mpl::protect<boost::mpl::aux::find_if_pred<boost::mpl::not_<boost::is_nothrow_move_assignable<boost::mpl::_1>>>,0>,boost::mpl::l_iter<boost::mpl::l_item<boost::mpl::long_<1>,boost::recursive_wr
  apper<telnetpp::options::msdp::table_value>,boost::mpl::l_end>>>,
              T3=boost::mpl::true_,
              T5=boost::mpl::true_
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/iter_fold_if.hpp(46): message : see reference to class template instantiation 'boost::mpl::and_<boost::mpl::not_<boost::is_same<Iterator,LastIterator>>,boost::mpl::apply1<Pr
edicate,Iterator>,boost::mpl::true_,boost::mpl::true_,boost::mpl::true_>' being compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              Iterator=boost::mpl::l_iter<boost::mpl::l_item<boost::mpl::long_<1>,boost::recursive_wrapper<telnetpp::options::msdp::table_value>,boost::mpl::l_end>>,
              LastIterator=boost::mpl::l_iter<boost::mpl::l_end>,
              Predicate=boost::mpl::protect<boost::mpl::aux::find_if_pred<boost::mpl::not_<boost::is_nothrow_move_assignable<boost::mpl::_1>>>,0>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/aux_/preprocessed/plain/apply_wrap.hpp(49): message : see reference to class template instantiation 'boost::mpl::aux::iter_fold_if_pred<ForwardPredicate,boost::mpl::l_iter<b
oost::mpl::l_end>>::apply<T1,T2>' being compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              ForwardPredicate=boost::mpl::protect<boost::mpl::aux::find_if_pred<boost::mpl::not_<boost::is_nothrow_move_assignable<boost::mpl::_1>>>,0>,
              T1=void,
              T2=boost::mpl::l_iter<boost::mpl::l_item<boost::mpl::long_<1>,boost::recursive_wrapper<telnetpp::options::msdp::table_value>,boost::mpl::l_end>>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/aux_/preprocessed/plain/apply.hpp(63): message : see reference to class template instantiation 'boost::mpl::apply_wrap2<boost::mpl::protect<boost::mpl::aux::iter_fold_if_pre
d<ForwardPredicate,boost::mpl::l_iter<boost::mpl::l_end>>,0>,T1,T2>' being compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              ForwardPredicate=boost::mpl::protect<boost::mpl::aux::find_if_pred<boost::mpl::not_<boost::is_nothrow_move_assignable<boost::mpl::_1>>>,0>,
              T1=void,
              T2=boost::mpl::l_iter<boost::mpl::l_item<boost::mpl::long_<1>,boost::recursive_wrapper<telnetpp::options::msdp::table_value>,boost::mpl::l_end>>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/aux_/preprocessed/plain/iter_fold_if_impl.hpp(62): message : see reference to class template instantiation 'boost::mpl::apply2<Predicate,State,Iterator>' being compiled [D:\
libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              Predicate=boost::mpl::protect<boost::mpl::aux::iter_fold_if_pred<boost::mpl::protect<boost::mpl::aux::find_if_pred<boost::mpl::not_<boost::is_nothrow_move_assignable<boost::mpl::_1>>>,0>,boost::mpl::l_iter<boost::mpl::l_en
  d>>,0>,
              State=void,
              Iterator=boost::mpl::l_iter<boost::mpl::l_item<boost::mpl::long_<1>,boost::recursive_wrapper<telnetpp::options::msdp::table_value>,boost::mpl::l_end>>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/aux_/preprocessed/plain/iter_fold_if_impl.hpp(103): message : see reference to class template instantiation 'boost::mpl::aux::iter_fold_if_forward_step<boost::mpl::l_iter<bo
ost::mpl::l_item<boost::mpl::long_<1>,T0,boost::mpl::l_end>>,void,ForwardOp,ForwardPredicate>' being compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              T0=boost::recursive_wrapper<telnetpp::options::msdp::table_value>,
              ForwardOp=boost::mpl::arg<1>,
              ForwardPredicate=boost::mpl::protect<boost::mpl::aux::iter_fold_if_pred<boost::mpl::protect<boost::mpl::aux::find_if_pred<boost::mpl::not_<boost::is_nothrow_move_assignable<boost::mpl::_1>>>,0>,boost::mpl::l_iter<boost::mp
  l::l_end>>,0>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/iter_fold_if.hpp(94): message : see reference to class template instantiation 'boost::mpl::aux::iter_fold_if_impl<boost::mpl::l_iter<boost::mpl::l_item<boost::mpl::long_<3>,
T,boost::mpl::l_item<boost::mpl::long_<2>,boost::container::small_vector<T,4,void,void>,boost::mpl::l_item<boost::mpl::long_<1>,T0,boost::mpl::l_end>>>>,State,ForwardOp,boost::mpl::protect<boost::mpl::aux::iter_fold_if_pred<ForwardPredi
cate,boost::mpl::l_iter<boost::mpl::l_end>>,0>,BackwardOp,boost::mpl::always<boost::mpl::false_>>' being compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              T=std::basic_string<telnetpp::byte,std::char_traits<telnetpp::byte>,std::allocator<telnetpp::byte>>,
              T0=boost::recursive_wrapper<telnetpp::options::msdp::table_value>,
              State=void,
              ForwardOp=boost::mpl::arg<1>,
              ForwardPredicate=boost::mpl::protect<boost::mpl::aux::find_if_pred<boost::mpl::not_<boost::is_nothrow_move_assignable<boost::mpl::_1>>>,0>,
              BackwardOp=boost::mpl::na
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/iter_fold_if.hpp(102): message : see reference to class template instantiation 'boost::mpl::iter_fold_if<Sequence,void,boost::mpl::arg<1>,boost::mpl::protect<boost::mpl::aux
::find_if_pred<Predicate>,0>,boost::mpl::na,boost::mpl::na>::result_' being compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              Sequence=boost::mpl::l_item<boost::mpl::long_<3>,std::basic_string<telnetpp::byte,std::char_traits<telnetpp::byte>,std::allocator<telnetpp::byte>>,boost::mpl::l_item<boost::mpl::long_<2>,boost::container::small_vector<teln
  etpp::options::msdp::string_value,4,void,void>,boost::mpl::l_item<boost::mpl::long_<1>,boost::recursive_wrapper<telnetpp::options::msdp::table_value>,boost::mpl::l_end>>>,
              Predicate=boost::mpl::not_<boost::is_nothrow_move_assignable<boost::mpl::_1>>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/find_if.hpp(39): message : see reference to class template instantiation 'boost::mpl::iter_fold_if<Sequence,void,boost::mpl::arg<1>,boost::mpl::protect<boost::mpl::aux::find
_if_pred<Predicate>,0>,boost::mpl::na,boost::mpl::na>' being compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              Sequence=boost::mpl::l_item<boost::mpl::long_<3>,std::basic_string<telnetpp::byte,std::char_traits<telnetpp::byte>,std::allocator<telnetpp::byte>>,boost::mpl::l_item<boost::mpl::long_<2>,boost::container::small_vector<teln
  etpp::options::msdp::string_value,4,void,void>,boost::mpl::l_item<boost::mpl::long_<1>,boost::recursive_wrapper<telnetpp::options::msdp::table_value>,boost::mpl::l_end>>>,
              Predicate=boost::mpl::not_<boost::is_nothrow_move_assignable<boost::mpl::_1>>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/variant/variant.hpp(251): message : see reference to class template instantiation 'boost::mpl::find_if<Types,boost::mpl::not_<boost::is_nothrow_move_assignable<boost::mpl::_1>>>
' being compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              Types=boost::mpl::l_item<boost::mpl::long_<3>,std::basic_string<telnetpp::byte,std::char_traits<telnetpp::byte>,std::allocator<telnetpp::byte>>,boost::mpl::l_item<boost::mpl::long_<2>,boost::container::small_vector<telnetp
  p::options::msdp::string_value,4,void,void>,boost::mpl::l_item<boost::mpl::long_<1>,boost::recursive_wrapper<telnetpp::options::msdp::table_value>,boost::mpl::l_end>>>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/variant/variant.hpp(2173): message : see reference to class template instantiation 'boost::detail::variant::is_variant_move_noexcept_assignable<boost::mpl::l_item<boost::mpl::lo
ng_<3>,T,boost::mpl::l_item<boost::mpl::long_<2>,boost::container::small_vector<T,4,void,void>,boost::mpl::l_item<boost::mpl::long_<1>,T0,boost::mpl::l_end>>>>' being compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              T=std::basic_string<telnetpp::byte,std::char_traits<telnetpp::byte>,std::allocator<telnetpp::byte>>,
              T0=boost::recursive_wrapper<telnetpp::options::msdp::table_value>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/move/detail/type_traits.hpp(970,6): error C2079: 'boost::move_detail::alignment_of_hack<T>::t2' uses undefined struct 'telnetpp::options::msdp::variable' [D:\libs\telnetpp\build
\telnetpp.vcxproj]
          with
          [
              T=telnetpp::options::msdp::variable
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/move/detail/type_traits.hpp(985): error C2027: use of undefined type 'telnetpp::options::msdp::variable' [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\telnetpp\include\telnetpp/options/msdp/variable.hpp(33): message : see declaration of 'telnetpp::options::msdp::variable' [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/container/small_vector.hpp(421,1): error C2027: use of undefined type 'telnetpp::options::msdp::variable' [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\telnetpp\include\telnetpp/options/msdp/variable.hpp(33): message : see declaration of 'telnetpp::options::msdp::variable' [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/move/detail/type_traits.hpp(1175,4): error C2338: Align > 0 [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/container/small_vector.hpp(421): message : see reference to class template instantiation 'boost::move_detail::aligned_storage<0,0>' being compiled [D:\libs\telnetpp\build\telnet
pp.vcxproj]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/move/detail/type_traits.hpp(1110,3): error C2079: 'boost::move_detail::aligned_struct_wrapper<1,0>::aligner' uses undefined struct 'boost::move_detail::aligned_struct<1,0>' [D:\
libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/move/detail/type_traits.hpp(968): message : see reference to class template instantiation 'boost::move_detail::aligned_struct_wrapper<1,0>' being compiled [D:\libs\telnetpp\buil
d\telnetpp.vcxproj]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/move/detail/type_traits.hpp(985): message : see reference to class template instantiation 'boost::move_detail::alignment_of_hack<T>' being compiled [D:\libs\telnetpp\build\telne
tpp.vcxproj]
          with
          [
              T=boost::move_detail::aligned_struct_wrapper<1,0>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/move/detail/type_traits.hpp(997): message : see reference to class template instantiation 'boost::move_detail::alignment_of_impl<T>' being compiled [D:\libs\telnetpp\build\telne
tpp.vcxproj]
          with
          [
              T=boost::move_detail::aligned_struct_wrapper<1,0>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/move/detail/type_traits.hpp(1179): message : see reference to class template instantiation 'boost::move_detail::alignment_of<boost::move_detail::aligned_struct_wrapper<1,0>>' be
ing compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/move/detail/type_traits.hpp(1111,1): error C2027: use of undefined type 'boost::move_detail::aligned_struct<1,0>' [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/move/detail/type_traits.hpp(1109): message : see declaration of 'boost::move_detail::aligned_struct<1,0>' [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/container/small_vector.hpp(502,1): error C2027: use of undefined type 'telnetpp::options::msdp::variable' [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\telnetpp\include\telnetpp/options/msdp/variable.hpp(33): message : see declaration of 'telnetpp::options::msdp::variable' [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/container/small_vector.hpp(528): message : see reference to class template instantiation 'boost::container::small_vector_storage_calculator<boost::move_detail::aligned_struct_wr
apper<1,0>,Allocator,telnetpp::options::msdp::variable,4,Options>' being compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              Allocator=void,
              Options=void
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/container/small_vector.hpp(549): message : see reference to class template instantiation 'boost::container::small_vector_storage_definer<T,Allocator,4,Options>' being compiled [
D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              T=telnetpp::options::msdp::variable,
              Allocator=void,
              Options=void
          ]
  encoder.cpp
D:\libs\telnetpp\include\telnetpp/options/msdp/variable.hpp(70,32): warning C4251: 'telnetpp::options::msdp::variable::name': class 'std::basic_string<telnetpp::byte,std::char_traits<telnetpp::byte>,std::allocator<telnetpp::byte>>' need
s to have dll-interface to be used by clients of struct 'telnetpp::options::msdp::variable' [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\telnetpp\include\telnetpp/core.hpp(43): message : see declaration of 'std::basic_string<telnetpp::byte,std::char_traits<telnetpp::byte>,std::allocator<telnetpp::byte>>' [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\telnetpp\include\telnetpp/options/msdp/variable.hpp(71,21): warning C4251: 'telnetpp::options::msdp::variable::value': class 'boost::variant<telnetpp::options::msdp::string_value,telnetpp::options::msdp::array_value,boost::recur
sive_wrapper<telnetpp::options::msdp::table_value>>' needs to have dll-interface to be used by clients of struct 'telnetpp::options::msdp::variable' [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\telnetpp\include\telnetpp/options/msdp/variable.hpp(22): message : see declaration of 'boost::variant<telnetpp::options::msdp::string_value,telnetpp::options::msdp::array_value,boost::recursive_wrapper<telnetpp::options::msdp::t
able_value>>' [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/move/detail/type_traits.hpp(968,6): error C2079: 'boost::move_detail::alignment_of_hack<T>::t1' uses undefined struct 'telnetpp::options::msdp::variable' [D:\libs\telnetpp\build
\telnetpp.vcxproj]
          with
          [
              T=telnetpp::options::msdp::variable
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/move/detail/type_traits.hpp(985): message : see reference to class template instantiation 'boost::move_detail::alignment_of_hack<T>' being compiled [D:\libs\telnetpp\build\telne
tpp.vcxproj]
          with
          [
              T=telnetpp::options::msdp::variable
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/move/detail/type_traits.hpp(997): message : see reference to class template instantiation 'boost::move_detail::alignment_of_impl<T>' being compiled [D:\libs\telnetpp\build\telne
tpp.vcxproj]
          with
          [
              T=telnetpp::options::msdp::variable
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/container/small_vector.hpp(417): message : see reference to class template instantiation 'boost::move_detail::alignment_of<T>' being compiled [D:\libs\telnetpp\build\telnetpp.vc
xproj]
          with
          [
              T=telnetpp::options::msdp::variable
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/container/small_vector.hpp(549): message : see reference to class template instantiation 'boost::container::small_vector_base<T,Allocator,Options>' being compiled [D:\libs\telne
tpp\build\telnetpp.vcxproj]
          with
          [
              T=telnetpp::options::msdp::variable,
              Allocator=void,
              Options=void
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/type_traits/is_nothrow_move_assignable.hpp(29): message : see reference to class template instantiation 'boost::container::small_vector<telnetpp::options::msdp::variable,4,void,
void>' being compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/aux_/has_type.hpp(20): message : see reference to class template instantiation 'boost::is_nothrow_move_assignable<U1>' being compiled [D:\libs\telnetpp\build\telnetpp.vcxpro
j]
          with
          [
              U1=boost::recursive_wrapper<telnetpp::options::msdp::table_value>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/aux_/has_type.hpp(20): message : while compiling class template member function 'boost::mpl::aux::yes_tag boost::mpl::aux::has_type<boost::is_nothrow_move_assignable<U1>,boo
st::mpl::bool_<true>>::gcc_3_2_wknd::test(volatile const boost::mpl::aux::type_wrapper<U> *,boost::mpl::aux::type_wrapper<U::type> *)' [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              U1=boost::recursive_wrapper<telnetpp::options::msdp::table_value>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/aux_/preprocessed/plain/quote.hpp(36): message : see reference to class template instantiation 'boost::mpl::aux::has_type<boost::is_nothrow_move_assignable<U1>,boost::mpl::b
ool_<true>>' being compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              U1=boost::recursive_wrapper<telnetpp::options::msdp::table_value>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/aux_/preprocessed/plain/apply_wrap.hpp(39): message : see reference to class template instantiation 'boost::mpl::quote1<F,Tag>::apply<T1>' being compiled [D:\libs\telnetpp\b
uild\telnetpp.vcxproj]
          with
          [
              F=boost::is_nothrow_move_assignable,
              Tag=boost::mpl::void_,
              T1=boost::recursive_wrapper<telnetpp::options::msdp::table_value>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/aux_/preprocessed/plain/bind.hpp(144): message : see reference to class template instantiation 'boost::mpl::apply_wrap1<boost::mpl::quote1<F,Tag>,boost::recursive_wrapper<te
lnetpp::options::msdp::table_value>>' being compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              F=boost::is_nothrow_move_assignable,
              Tag=boost::mpl::void_
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/aux_/preprocessed/plain/apply_wrap.hpp(80): message : see reference to class template instantiation 'boost::mpl::bind1<boost::mpl::quote1<F,Tag>,boost::mpl::arg<1>>::apply<T
1,T2,T3,T4,T5>' being compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              F=boost::is_nothrow_move_assignable,
              Tag=boost::mpl::void_,
              T1=boost::recursive_wrapper<telnetpp::options::msdp::table_value>,
              T2=boost::mpl::na,
              T3=boost::mpl::na,
              T4=boost::mpl::na,
              T5=boost::mpl::na
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/aux_/preprocessed/plain/bind.hpp(160): message : see reference to class template instantiation 'boost::mpl::apply_wrap5<boost::mpl::bind1<boost::mpl::quote1<F,Tag>,boost::mp
l::arg<1>>,U1,U2,U3,U4,U5>' being compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              F=boost::is_nothrow_move_assignable,
              Tag=boost::mpl::void_,
              U1=boost::recursive_wrapper<telnetpp::options::msdp::table_value>,
              U2=boost::mpl::na,
              U3=boost::mpl::na,
              U4=boost::mpl::na,
              U5=boost::mpl::na
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/aux_/preprocessed/plain/bind.hpp(143): message : see reference to class template instantiation 'boost::mpl::aux::resolve_bind_arg<boost::mpl::bind1<boost::mpl::quote1<F,Tag>
,boost::mpl::arg<1>>,U1,U2,U3,U4,U5>' being compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              F=boost::is_nothrow_move_assignable,
              Tag=boost::mpl::void_,
              U1=boost::recursive_wrapper<telnetpp::options::msdp::table_value>,
              U2=boost::mpl::na,
              U3=boost::mpl::na,
              U4=boost::mpl::na,
              U5=boost::mpl::na
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/aux_/preprocessed/plain/apply_wrap.hpp(39): message : see reference to class template instantiation 'boost::mpl::bind1<boost::mpl::quote1<F,Tag>,boost::mpl::bind1<boost::mpl
::quote1<boost::is_nothrow_move_assignable,Tag>,boost::mpl::arg<1>>>::apply<T1,boost::mpl::na,boost::mpl::na,boost::mpl::na,boost::mpl::na>' being compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              F=boost::mpl::not_,
              Tag=boost::mpl::void_,
              T1=boost::recursive_wrapper<telnetpp::options::msdp::table_value>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/aux_/preprocessed/plain/apply.hpp(43): message : see reference to class template instantiation 'boost::mpl::apply_wrap1<boost::mpl::protect<boost::mpl::bind1<boost::mpl::quo
te1<F,Tag>,boost::mpl::bind1<boost::mpl::quote1<boost::is_nothrow_move_assignable,Tag>,boost::mpl::arg<1>>>,0>,T1>' being compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              F=boost::mpl::not_,
              Tag=boost::mpl::void_,
              T1=boost::recursive_wrapper<telnetpp::options::msdp::table_value>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/aux_/iter_apply.hpp(28): message : see reference to class template instantiation 'boost::mpl::apply1<F,boost::recursive_wrapper<telnetpp::options::msdp::table_value>>' being
 compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              F=boost::mpl::not_<boost::is_nothrow_move_assignable<boost::mpl::_1>>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/not.hpp(40): message : see reference to class template instantiation 'boost::mpl::aux::iter_apply1<Predicate,Iterator>' being compiled [D:\libs\telnetpp\build\telnetpp.vcxpr
oj]
          with
          [
              Predicate=boost::mpl::not_<boost::is_nothrow_move_assignable<boost::mpl::_1>>,
              Iterator=boost::mpl::l_iter<boost::mpl::l_item<boost::mpl::long_<1>,boost::recursive_wrapper<telnetpp::options::msdp::table_value>,boost::mpl::l_end>>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/aux_/preprocessed/plain/and.hpp(24): message : see reference to class template instantiation 'boost::mpl::not_<boost::mpl::aux::iter_apply1<Predicate,Iterator>>' being compi
led [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              Predicate=boost::mpl::not_<boost::is_nothrow_move_assignable<boost::mpl::_1>>,
              Iterator=boost::mpl::l_iter<boost::mpl::l_item<boost::mpl::long_<1>,boost::recursive_wrapper<telnetpp::options::msdp::table_value>,boost::mpl::l_end>>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/aux_/preprocessed/plain/and.hpp(55): message : see reference to class template instantiation 'boost::mpl::aux::and_impl<true,T2,T3,T3,T5>' being compiled [D:\libs\telnetpp\b
uild\telnetpp.vcxproj]
          with
          [
              T2=boost::mpl::apply1<boost::mpl::protect<boost::mpl::aux::find_if_pred<boost::mpl::not_<boost::is_nothrow_move_assignable<boost::mpl::_1>>>,0>,boost::mpl::l_iter<boost::mpl::l_item<boost::mpl::long_<1>,boost::recursive_wr
  apper<telnetpp::options::msdp::table_value>,boost::mpl::l_end>>>,
              T3=boost::mpl::true_,
              T5=boost::mpl::true_
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/iter_fold_if.hpp(46): message : see reference to class template instantiation 'boost::mpl::and_<boost::mpl::not_<boost::is_same<Iterator,LastIterator>>,boost::mpl::apply1<Pr
edicate,Iterator>,boost::mpl::true_,boost::mpl::true_,boost::mpl::true_>' being compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              Iterator=boost::mpl::l_iter<boost::mpl::l_item<boost::mpl::long_<1>,boost::recursive_wrapper<telnetpp::options::msdp::table_value>,boost::mpl::l_end>>,
              LastIterator=boost::mpl::l_iter<boost::mpl::l_end>,
              Predicate=boost::mpl::protect<boost::mpl::aux::find_if_pred<boost::mpl::not_<boost::is_nothrow_move_assignable<boost::mpl::_1>>>,0>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/aux_/preprocessed/plain/apply_wrap.hpp(49): message : see reference to class template instantiation 'boost::mpl::aux::iter_fold_if_pred<ForwardPredicate,boost::mpl::l_iter<b
oost::mpl::l_end>>::apply<T1,T2>' being compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              ForwardPredicate=boost::mpl::protect<boost::mpl::aux::find_if_pred<boost::mpl::not_<boost::is_nothrow_move_assignable<boost::mpl::_1>>>,0>,
              T1=void,
              T2=boost::mpl::l_iter<boost::mpl::l_item<boost::mpl::long_<1>,boost::recursive_wrapper<telnetpp::options::msdp::table_value>,boost::mpl::l_end>>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/aux_/preprocessed/plain/apply.hpp(63): message : see reference to class template instantiation 'boost::mpl::apply_wrap2<boost::mpl::protect<boost::mpl::aux::iter_fold_if_pre
d<ForwardPredicate,boost::mpl::l_iter<boost::mpl::l_end>>,0>,T1,T2>' being compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              ForwardPredicate=boost::mpl::protect<boost::mpl::aux::find_if_pred<boost::mpl::not_<boost::is_nothrow_move_assignable<boost::mpl::_1>>>,0>,
              T1=void,
              T2=boost::mpl::l_iter<boost::mpl::l_item<boost::mpl::long_<1>,boost::recursive_wrapper<telnetpp::options::msdp::table_value>,boost::mpl::l_end>>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/aux_/preprocessed/plain/iter_fold_if_impl.hpp(62): message : see reference to class template instantiation 'boost::mpl::apply2<Predicate,State,Iterator>' being compiled [D:\
libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              Predicate=boost::mpl::protect<boost::mpl::aux::iter_fold_if_pred<boost::mpl::protect<boost::mpl::aux::find_if_pred<boost::mpl::not_<boost::is_nothrow_move_assignable<boost::mpl::_1>>>,0>,boost::mpl::l_iter<boost::mpl::l_en
  d>>,0>,
              State=void,
              Iterator=boost::mpl::l_iter<boost::mpl::l_item<boost::mpl::long_<1>,boost::recursive_wrapper<telnetpp::options::msdp::table_value>,boost::mpl::l_end>>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/aux_/preprocessed/plain/iter_fold_if_impl.hpp(103): message : see reference to class template instantiation 'boost::mpl::aux::iter_fold_if_forward_step<boost::mpl::l_iter<bo
ost::mpl::l_item<boost::mpl::long_<1>,T0,boost::mpl::l_end>>,void,ForwardOp,ForwardPredicate>' being compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              T0=boost::recursive_wrapper<telnetpp::options::msdp::table_value>,
              ForwardOp=boost::mpl::arg<1>,
              ForwardPredicate=boost::mpl::protect<boost::mpl::aux::iter_fold_if_pred<boost::mpl::protect<boost::mpl::aux::find_if_pred<boost::mpl::not_<boost::is_nothrow_move_assignable<boost::mpl::_1>>>,0>,boost::mpl::l_iter<boost::mp
  l::l_end>>,0>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/iter_fold_if.hpp(94): message : see reference to class template instantiation 'boost::mpl::aux::iter_fold_if_impl<boost::mpl::l_iter<boost::mpl::l_item<boost::mpl::long_<3>,
T,boost::mpl::l_item<boost::mpl::long_<2>,boost::container::small_vector<T,4,void,void>,boost::mpl::l_item<boost::mpl::long_<1>,T0,boost::mpl::l_end>>>>,State,ForwardOp,boost::mpl::protect<boost::mpl::aux::iter_fold_if_pred<ForwardPredi
cate,boost::mpl::l_iter<boost::mpl::l_end>>,0>,BackwardOp,boost::mpl::always<boost::mpl::false_>>' being compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              T=std::basic_string<telnetpp::byte,std::char_traits<telnetpp::byte>,std::allocator<telnetpp::byte>>,
              T0=boost::recursive_wrapper<telnetpp::options::msdp::table_value>,
              State=void,
              ForwardOp=boost::mpl::arg<1>,
              ForwardPredicate=boost::mpl::protect<boost::mpl::aux::find_if_pred<boost::mpl::not_<boost::is_nothrow_move_assignable<boost::mpl::_1>>>,0>,
              BackwardOp=boost::mpl::na
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/iter_fold_if.hpp(102): message : see reference to class template instantiation 'boost::mpl::iter_fold_if<Sequence,void,boost::mpl::arg<1>,boost::mpl::protect<boost::mpl::aux
::find_if_pred<Predicate>,0>,boost::mpl::na,boost::mpl::na>::result_' being compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              Sequence=boost::mpl::l_item<boost::mpl::long_<3>,std::basic_string<telnetpp::byte,std::char_traits<telnetpp::byte>,std::allocator<telnetpp::byte>>,boost::mpl::l_item<boost::mpl::long_<2>,boost::container::small_vector<teln
  etpp::options::msdp::string_value,4,void,void>,boost::mpl::l_item<boost::mpl::long_<1>,boost::recursive_wrapper<telnetpp::options::msdp::table_value>,boost::mpl::l_end>>>,
              Predicate=boost::mpl::not_<boost::is_nothrow_move_assignable<boost::mpl::_1>>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/mpl/find_if.hpp(39): message : see reference to class template instantiation 'boost::mpl::iter_fold_if<Sequence,void,boost::mpl::arg<1>,boost::mpl::protect<boost::mpl::aux::find
_if_pred<Predicate>,0>,boost::mpl::na,boost::mpl::na>' being compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              Sequence=boost::mpl::l_item<boost::mpl::long_<3>,std::basic_string<telnetpp::byte,std::char_traits<telnetpp::byte>,std::allocator<telnetpp::byte>>,boost::mpl::l_item<boost::mpl::long_<2>,boost::container::small_vector<teln
  etpp::options::msdp::string_value,4,void,void>,boost::mpl::l_item<boost::mpl::long_<1>,boost::recursive_wrapper<telnetpp::options::msdp::table_value>,boost::mpl::l_end>>>,
              Predicate=boost::mpl::not_<boost::is_nothrow_move_assignable<boost::mpl::_1>>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/variant/variant.hpp(251): message : see reference to class template instantiation 'boost::mpl::find_if<Types,boost::mpl::not_<boost::is_nothrow_move_assignable<boost::mpl::_1>>>
' being compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              Types=boost::mpl::l_item<boost::mpl::long_<3>,std::basic_string<telnetpp::byte,std::char_traits<telnetpp::byte>,std::allocator<telnetpp::byte>>,boost::mpl::l_item<boost::mpl::long_<2>,boost::container::small_vector<telnetp
  p::options::msdp::string_value,4,void,void>,boost::mpl::l_item<boost::mpl::long_<1>,boost::recursive_wrapper<telnetpp::options::msdp::table_value>,boost::mpl::l_end>>>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/variant/variant.hpp(2173): message : see reference to class template instantiation 'boost::detail::variant::is_variant_move_noexcept_assignable<boost::mpl::l_item<boost::mpl::lo
ng_<3>,T,boost::mpl::l_item<boost::mpl::long_<2>,boost::container::small_vector<T,4,void,void>,boost::mpl::l_item<boost::mpl::long_<1>,T0,boost::mpl::l_end>>>>' being compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              T=std::basic_string<telnetpp::byte,std::char_traits<telnetpp::byte>,std::allocator<telnetpp::byte>>,
              T0=boost::recursive_wrapper<telnetpp::options::msdp::table_value>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/move/detail/type_traits.hpp(970,6): error C2079: 'boost::move_detail::alignment_of_hack<T>::t2' uses undefined struct 'telnetpp::options::msdp::variable' [D:\libs\telnetpp\build
\telnetpp.vcxproj]
          with
          [
              T=telnetpp::options::msdp::variable
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/move/detail/type_traits.hpp(985): error C2027: use of undefined type 'telnetpp::options::msdp::variable' [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\telnetpp\include\telnetpp/options/msdp/variable.hpp(33): message : see declaration of 'telnetpp::options::msdp::variable' [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/container/small_vector.hpp(421,1): error C2027: use of undefined type 'telnetpp::options::msdp::variable' [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\telnetpp\include\telnetpp/options/msdp/variable.hpp(33): message : see declaration of 'telnetpp::options::msdp::variable' [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/move/detail/type_traits.hpp(1175,4): error C2338: Align > 0 [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/container/small_vector.hpp(421): message : see reference to class template instantiation 'boost::move_detail::aligned_storage<0,0>' being compiled [D:\libs\telnetpp\build\telnet
pp.vcxproj]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/move/detail/type_traits.hpp(1110,3): error C2079: 'boost::move_detail::aligned_struct_wrapper<1,0>::aligner' uses undefined struct 'boost::move_detail::aligned_struct<1,0>' [D:\
libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/move/detail/type_traits.hpp(968): message : see reference to class template instantiation 'boost::move_detail::aligned_struct_wrapper<1,0>' being compiled [D:\libs\telnetpp\buil
d\telnetpp.vcxproj]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/move/detail/type_traits.hpp(985): message : see reference to class template instantiation 'boost::move_detail::alignment_of_hack<T>' being compiled [D:\libs\telnetpp\build\telne
tpp.vcxproj]
          with
          [
              T=boost::move_detail::aligned_struct_wrapper<1,0>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/move/detail/type_traits.hpp(997): message : see reference to class template instantiation 'boost::move_detail::alignment_of_impl<T>' being compiled [D:\libs\telnetpp\build\telne
tpp.vcxproj]
          with
          [
              T=boost::move_detail::aligned_struct_wrapper<1,0>
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/move/detail/type_traits.hpp(1179): message : see reference to class template instantiation 'boost::move_detail::alignment_of<boost::move_detail::aligned_struct_wrapper<1,0>>' be
ing compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/move/detail/type_traits.hpp(1111,1): error C2027: use of undefined type 'boost::move_detail::aligned_struct<1,0>' [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/move/detail/type_traits.hpp(1109): message : see declaration of 'boost::move_detail::aligned_struct<1,0>' [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/container/small_vector.hpp(502,1): error C2027: use of undefined type 'telnetpp::options::msdp::variable' [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\telnetpp\include\telnetpp/options/msdp/variable.hpp(33): message : see declaration of 'telnetpp::options::msdp::variable' [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/container/small_vector.hpp(528): message : see reference to class template instantiation 'boost::container::small_vector_storage_calculator<boost::move_detail::aligned_struct_wr
apper<1,0>,Allocator,telnetpp::options::msdp::variable,4,Options>' being compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              Allocator=void,
              Options=void
          ]
D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/container/small_vector.hpp(549): message : see reference to class template instantiation 'boost::container::small_vector_storage_definer<T,Allocator,4,Options>' being compiled [
D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              T=telnetpp::options::msdp::variable,
              Allocator=void,
              Options=void
          ]
  stream.cpp
  registration.cpp
D:\libs\telnetpp\include\telnetpp/subnegotiation.hpp(43,19): warning C4251: 'telnetpp::subnegotiation::content_': class 'gsl::span<const telnetpp::byte>' needs to have dll-interface to be used by clients of class 'telnetpp::subnegotiati
on' [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\telnetpp\include\telnetpp/core.hpp(39): message : see declaration of 'gsl::span<const telnetpp::byte>' [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\telnetpp\include\telnetpp/option.hpp(235,1): warning C4251: 'telnetpp::option<LocalPositive,LocalNegative,RemotePositive,RemoteNegative>::on_state_changed': class 'boost::signals2::signal<void (const telnetpp::option<LocalPositi
ve,LocalNegative,RemotePositive,RemoteNegative>::continuation &),boost::signals2::optional_last_value<void>,int,std::less<Group>,boost::function<Signature>,boost::function<R (const boost::signals2::connection &,const telnetpp::option<Lo
calPositive,LocalNegative,RemotePositive,RemoteNegative>::continuation &)>,boost::signals2::mutex>' needs to have dll-interface to be used by clients of class 'telnetpp::option<LocalPositive,LocalNegative,RemotePositive,RemoteNegative>'
 [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              Group=int,
              Signature=void (const telnetpp::option<LocalPositive,LocalNegative,RemotePositive,RemoteNegative>::continuation &),
              R=void
          ]
D:\libs\telnetpp\include\telnetpp/option.hpp(235): message : see declaration of 'boost::signals2::signal<void (const telnetpp::option<LocalPositive,LocalNegative,RemotePositive,RemoteNegative>::continuation &),boost::signals2::optional_
last_value<void>,int,std::less<Group>,boost::function<Signature>,boost::function<R (const boost::signals2::connection &,const telnetpp::option<LocalPositive,LocalNegative,RemotePositive,RemoteNegative>::continuation &)>,boost::signals2:
:mutex>' [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              Group=int,
              Signature=void (const telnetpp::option<LocalPositive,LocalNegative,RemotePositive,RemoteNegative>::continuation &),
              R=void
          ]
D:\libs\telnetpp\include\telnetpp/option.hpp(265): message : see reference to class template instantiation 'telnetpp::option<LocalPositive,LocalNegative,RemotePositive,RemoteNegative>' being compiled [D:\libs\telnetpp\build\telnetpp.vcx
proj]
D:\libs\telnetpp\include\telnetpp/option.hpp(235,1): warning C4251: 'telnetpp::option<253,254,251,252>::on_state_changed': class 'boost::signals2::signal<void (const telnetpp::option<LocalPositive,LocalNegative,RemotePositive,RemoteNega
tive>::continuation &),boost::signals2::optional_last_value<void>,int,std::less<Group>,boost::function<Signature>,boost::function<R (const boost::signals2::connection &,const telnetpp::option<LocalPositive,LocalNegative,RemotePositive,R
emoteNegative>::continuation &)>,boost::signals2::mutex>' needs to have dll-interface to be used by clients of class 'telnetpp::option<253,254,251,252>' [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              Group=int,
              Signature=void (const telnetpp::option<LocalPositive,LocalNegative,RemotePositive,RemoteNegative>::continuation &),
              R=void
          ]
D:\libs\telnetpp\include\telnetpp/option.hpp(235): message : see declaration of 'boost::signals2::signal<void (const telnetpp::option<LocalPositive,LocalNegative,RemotePositive,RemoteNegative>::continuation &),boost::signals2::optional_
last_value<void>,int,std::less<Group>,boost::function<Signature>,boost::function<R (const boost::signals2::connection &,const telnetpp::option<LocalPositive,LocalNegative,RemotePositive,RemoteNegative>::continuation &)>,boost::signals2:
:mutex>' [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              Group=int,
              Signature=void (const telnetpp::option<LocalPositive,LocalNegative,RemotePositive,RemoteNegative>::continuation &),
              R=void
          ]
D:\libs\telnetpp\src\detail\registration.cpp(14): message : see reference to class template instantiation 'telnetpp::option<253,254,251,252>' being compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
D:\libs\telnetpp\include\telnetpp/option.hpp(235,1): warning C4251: 'telnetpp::option<251,252,253,254>::on_state_changed': class 'boost::signals2::signal<void (const telnetpp::option<LocalPositive,LocalNegative,RemotePositive,RemoteNega
tive>::continuation &),boost::signals2::optional_last_value<void>,int,std::less<Group>,boost::function<Signature>,boost::function<R (const boost::signals2::connection &,const telnetpp::option<LocalPositive,LocalNegative,RemotePositive,R
emoteNegative>::continuation &)>,boost::signals2::mutex>' needs to have dll-interface to be used by clients of class 'telnetpp::option<251,252,253,254>' [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              Group=int,
              Signature=void (const telnetpp::option<LocalPositive,LocalNegative,RemotePositive,RemoteNegative>::continuation &),
              R=void
          ]
D:\libs\telnetpp\include\telnetpp/option.hpp(235): message : see declaration of 'boost::signals2::signal<void (const telnetpp::option<LocalPositive,LocalNegative,RemotePositive,RemoteNegative>::continuation &),boost::signals2::optional_
last_value<void>,int,std::less<Group>,boost::function<Signature>,boost::function<R (const boost::signals2::connection &,const telnetpp::option<LocalPositive,LocalNegative,RemotePositive,RemoteNegative>::continuation &)>,boost::signals2:
:mutex>' [D:\libs\telnetpp\build\telnetpp.vcxproj]
          with
          [
              Group=int,
              Signature=void (const telnetpp::option<LocalPositive,LocalNegative,RemotePositive,RemoteNegative>::continuation &),
              R=void
          ]
D:\libs\telnetpp\src\detail\registration.cpp(30): message : see reference to class template instantiation 'telnetpp::option<251,252,253,254>' being compiled [D:\libs\telnetpp\build\telnetpp.vcxproj]
  Generating Code...

d:\libs\telnetpp\build>

@KazDragon
Copy link
Owner

KazDragon commented Dec 19, 2020

Yeah, I've been researching C4251 and it looks like this is a warning that unless you explicitly export some things, then runtime-linking the DLL with an executable built with a different version of the compiler/library will fail. All things being equal, I think that's safe to ignore. I'm working on a changeset that removes these warnings.

But I see only warnings and no error, so it worked?

See: #240

@KazDragon
Copy link
Owner

Oh I see it's still there:

D:\libs\yurybura\vcpkg\installed\x64-windows\include\boost/move/detail/type_traits.hpp(968,6): error C2079: 'boost::move_detail::alignment_of_hack<T>::t1' uses undefined struct 'telnetpp::options::msdp::variable'

@KazDragon
Copy link
Owner

Now that I've cleared out all the noise and purged any remaining traces of Boost from my vcpkg installation (which is way more difficult than it should be), I've finally managed to reproduce the error. I have a simple workaround that makes it work again. I'll commit that and then we can move on and I will work on working around my workaround ;)

@KazDragon
Copy link
Owner

@yurybura Would you be able to build with the PR branch and verify that is resolves the error?

@KazDragon
Copy link
Owner

KazDragon commented Dec 19, 2020

Fix for this is on master, though I'm reopening to give @yurybura the opportunity to tell me whether it worked or not ;)

@yurybura
Copy link
Author

@KazDragon I can confirm that my local build is passed.
Thank you.

@KazDragon
Copy link
Owner

🎆

Thanks, @yurybura!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants