Boost logo

Boost :

Subject: [boost] Patch bonanza for VS2013 Preview support
From: Lars Viklund (zao_at_[hidden])
Date: 2013-07-01 19:35:36


Hi list.

What's the best way to spend your vacation if not trying to get
Boost to build on bleeding-edge compilers. I set out to see how well
Boost 1.54.0 behaved on the newly released go-live-ready Visual Studio
2013 Preview. Below is the list of bugs filed against Boost and
Microsoft. Enjoy.

With these patches in place, I can get a complete build working with all
libraries normally available on a fresh machine (means that I didn't
test Python, MPI, ICU, compressed streams).

I haven't been able to find out how to run the tests in any
human-readable form, but this should not cause any regressions as it's
either increasing workaround bounds or adding headers that the standard
mandates already.

Boost.Config VS2013 Preview version bump
https://svn.boost.org/trac/boost/ticket/8753
The Visual Studio 2013 Preview toolchain has _MSC_VER 1800 and
_MSC_FULL_VER 180020617. See the attached patch for the minimum changes
that are needed to get anywhere at all.

Boost.Build needs support for the VS2013 Preview toolset (18.00.20617.1)
https://svn.boost.org/trac/boost/ticket/8754
Visual Studio 2013 Preview is out and claims to be 12.0. I copy-pasted
everything related to 11.0 to refer to 12.0 and it Works On My Machine,
see attached patch.

Boost.Signals VS2013 Preview version bump
https://svn.boost.org/trac/boost/ticket/8755
The BOOST_WORKAROUND macros at
boost/signals/detail/named_slot_map.hpp:130 and
libs/signals/src/named_slot_map.cpp:27 needs to be increased to <= 1800
in order to encompass the Visual Studio 2013 Preview compiler.

Boost.MPL VS2013 Preview version bump
https://svn.boost.org/trac/boost/ticket/8756
The BOOST_WORKAROUND macros at boost/mpl/assert.hpp lines 37 and 247
need to be changed to also consider BOOST_MSVC, == 1800, patch attached.

Boost.Serialization lacks algorithm header include for std::min
https://svn.boost.org/trac/boost/ticket/8757
The <algorithm> header providing std::min is not included in
boost/archive/iterators/transform_width.hpp, this breaks on Visual
Studio 2013 Preview due to library changes.

Boost.Asio lacks algorithm header include for std::min
https://svn.boost.org/trac/boost/ticket/8758
The <algorithm> header providing std::min is not included in
boost/asio/detail/impl/win_iocp_io_service.hpp, this breaks on Visual
Studio 2013 Preview due to library changes.

std::bind broken with boost/tuple/tuple.hpp or anything else providing a ADL tie
https://connect.microsoft.com/VisualStudio/feedback/details/792163/std-bind-lack-of-qualifier-on-tie-finds-non-std-tie-by-adl
Not our fault, I filed a bug on Connect and am hoping that they'll
notice it before RTM. 'std::bind' finds our 'tie' if a type from a boost
namespace is used in the 'std::function' argument type list.

-- 
Lars Viklund | zao_at_[hidden]

Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk