From 5e3ea46864634acccf08d6f01910c7f2166399a9 Mon Sep 17 00:00:00 2001 From: John Maddock Date: Wed, 1 Oct 2008 11:23:31 +0000 Subject: [PATCH] Change msvc ABI to match the default on Win64. [SVN r49078] --- include/boost/config/abi/msvc_prefix.hpp | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/include/boost/config/abi/msvc_prefix.hpp b/include/boost/config/abi/msvc_prefix.hpp index 3d3905c2..97f06cdc 100644 --- a/include/boost/config/abi/msvc_prefix.hpp +++ b/include/boost/config/abi/msvc_prefix.hpp @@ -3,6 +3,20 @@ // Boost Software License, Version 1.0. (See accompanying file // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -#pragma pack(push,8) +// +// Boost binaries are built with the compiler's default ABI settings, +// if the user changes their default alignment in the VS IDE then their +// code will no longer be binary compatible with the bjam built binaries +// unless this header is included to force Boost code into a consistent ABI. +// +// Note that inclusion of this header is only necessary for libraries with +// separate source, header only libraries DO NOT need this as long as all +// translation units are built with the same options. +// +#if defined(_M_X64) +# pragma pack(push,16) +#else +# pragma pack(push,8) +#endif