diff --git a/doc/html/boost_typetraits/reference/is_abstract.html b/doc/html/boost_typetraits/reference/is_abstract.html
index 1196f5f..b61bdd2 100644
--- a/doc/html/boost_typetraits/reference/is_abstract.html
+++ b/doc/html/boost_typetraits/reference/is_abstract.html
@@ -14,8 +14,8 @@
 |
Home |
Libraries |
-People |
-FAQ |
+People |
+FAQ |
More |
diff --git a/doc/html/boost_typetraits/reference/is_arithmetic.html b/doc/html/boost_typetraits/reference/is_arithmetic.html
index d0fe6f5..e1eef3e 100644
--- a/doc/html/boost_typetraits/reference/is_arithmetic.html
+++ b/doc/html/boost_typetraits/reference/is_arithmetic.html
@@ -14,8 +14,8 @@
 |
Home |
Libraries |
-
People |
-
FAQ |
+
People |
+
FAQ |
More |
diff --git a/doc/html/boost_typetraits/reference/is_array.html b/doc/html/boost_typetraits/reference/is_array.html
index 23b87a8..fe58271 100644
--- a/doc/html/boost_typetraits/reference/is_array.html
+++ b/doc/html/boost_typetraits/reference/is_array.html
@@ -14,8 +14,8 @@
 |
Home |
Libraries |
-
People |
-
FAQ |
+
People |
+
FAQ |
More |
diff --git a/doc/html/boost_typetraits/reference/is_base_of.html b/doc/html/boost_typetraits/reference/is_base_of.html
index d5c1db4..7eac36f 100644
--- a/doc/html/boost_typetraits/reference/is_base_of.html
+++ b/doc/html/boost_typetraits/reference/is_base_of.html
@@ -14,8 +14,8 @@
 |
Home |
Libraries |
-
People |
-
FAQ |
+
People |
+
FAQ |
More |
diff --git a/doc/html/boost_typetraits/reference/is_class.html b/doc/html/boost_typetraits/reference/is_class.html
index dd78a3b..9741bab 100644
--- a/doc/html/boost_typetraits/reference/is_class.html
+++ b/doc/html/boost_typetraits/reference/is_class.html
@@ -14,8 +14,8 @@
 |
Home |
Libraries |
-
People |
-
FAQ |
+
People |
+
FAQ |
More |
diff --git a/doc/html/boost_typetraits/reference/is_complex.html b/doc/html/boost_typetraits/reference/is_complex.html
index 2f1ace1..45c42a8 100644
--- a/doc/html/boost_typetraits/reference/is_complex.html
+++ b/doc/html/boost_typetraits/reference/is_complex.html
@@ -14,8 +14,8 @@
 |
Home |
Libraries |
-
People |
-
FAQ |
+
People |
+
FAQ |
More |
diff --git a/doc/html/boost_typetraits/reference/is_compound.html b/doc/html/boost_typetraits/reference/is_compound.html
index 5e4faaf..b72db34 100644
--- a/doc/html/boost_typetraits/reference/is_compound.html
+++ b/doc/html/boost_typetraits/reference/is_compound.html
@@ -14,8 +14,8 @@
 |
Home |
Libraries |
-
People |
-
FAQ |
+
People |
+
FAQ |
More |
diff --git a/doc/html/boost_typetraits/reference/is_const.html b/doc/html/boost_typetraits/reference/is_const.html
index d543c23..7dc9e95 100644
--- a/doc/html/boost_typetraits/reference/is_const.html
+++ b/doc/html/boost_typetraits/reference/is_const.html
@@ -14,8 +14,8 @@
 |
Home |
Libraries |
-
People |
-
FAQ |
+
People |
+
FAQ |
More |
diff --git a/doc/html/boost_typetraits/reference/is_convertible.html b/doc/html/boost_typetraits/reference/is_convertible.html
index 0a89de1..9b78074 100644
--- a/doc/html/boost_typetraits/reference/is_convertible.html
+++ b/doc/html/boost_typetraits/reference/is_convertible.html
@@ -14,8 +14,8 @@
 |
Home |
Libraries |
-
People |
-
FAQ |
+
People |
+
FAQ |
More |
diff --git a/doc/html/boost_typetraits/reference/is_empty.html b/doc/html/boost_typetraits/reference/is_empty.html
index d528b1c..97301d9 100644
--- a/doc/html/boost_typetraits/reference/is_empty.html
+++ b/doc/html/boost_typetraits/reference/is_empty.html
@@ -14,8 +14,8 @@
 |
Home |
Libraries |
-
People |
-
FAQ |
+
People |
+
FAQ |
More |
diff --git a/doc/html/boost_typetraits/reference/is_enum.html b/doc/html/boost_typetraits/reference/is_enum.html
index a4919b1..a09cb0b 100644
--- a/doc/html/boost_typetraits/reference/is_enum.html
+++ b/doc/html/boost_typetraits/reference/is_enum.html
@@ -14,8 +14,8 @@
 |
Home |
Libraries |
-
People |
-
FAQ |
+
People |
+
FAQ |
More |
diff --git a/doc/html/boost_typetraits/reference/is_floating_point.html b/doc/html/boost_typetraits/reference/is_floating_point.html
index fa5a303..52ae734 100644
--- a/doc/html/boost_typetraits/reference/is_floating_point.html
+++ b/doc/html/boost_typetraits/reference/is_floating_point.html
@@ -14,8 +14,8 @@
 |
Home |
Libraries |
-
People |
-
FAQ |
+
People |
+
FAQ |
More |
diff --git a/doc/html/boost_typetraits/reference/is_function.html b/doc/html/boost_typetraits/reference/is_function.html
index c8f9f74..f824337 100644
--- a/doc/html/boost_typetraits/reference/is_function.html
+++ b/doc/html/boost_typetraits/reference/is_function.html
@@ -14,8 +14,8 @@
 |
Home |
Libraries |
-
People |
-
FAQ |
+
People |
+
FAQ |
More |
diff --git a/doc/html/boost_typetraits/reference/is_fundamental.html b/doc/html/boost_typetraits/reference/is_fundamental.html
index 3107b1c..c630002 100644
--- a/doc/html/boost_typetraits/reference/is_fundamental.html
+++ b/doc/html/boost_typetraits/reference/is_fundamental.html
@@ -14,8 +14,8 @@
 |
Home |
Libraries |
-
People |
-
FAQ |
+
People |
+
FAQ |
More |
diff --git a/doc/html/boost_typetraits/reference/is_integral.html b/doc/html/boost_typetraits/reference/is_integral.html
index 8a5f237..07a2d50 100644
--- a/doc/html/boost_typetraits/reference/is_integral.html
+++ b/doc/html/boost_typetraits/reference/is_integral.html
@@ -14,8 +14,8 @@
 |
Home |
Libraries |
-
People |
-
FAQ |
+
People |
+
FAQ |
More |
diff --git a/doc/html/boost_typetraits/reference/is_member_function_pointer.html b/doc/html/boost_typetraits/reference/is_member_function_pointer.html
index 27b52ff..d0809fa 100644
--- a/doc/html/boost_typetraits/reference/is_member_function_pointer.html
+++ b/doc/html/boost_typetraits/reference/is_member_function_pointer.html
@@ -14,8 +14,8 @@
 |
Home |
Libraries |
-
People |
-
FAQ |
+
People |
+
FAQ |
More |
diff --git a/doc/html/boost_typetraits/reference/is_member_object_pointer.html b/doc/html/boost_typetraits/reference/is_member_object_pointer.html
index 7fbb1e6..018872c 100644
--- a/doc/html/boost_typetraits/reference/is_member_object_pointer.html
+++ b/doc/html/boost_typetraits/reference/is_member_object_pointer.html
@@ -14,8 +14,8 @@
 |
Home |
Libraries |
-
People |
-
FAQ |
+
People |
+
FAQ |
More |
diff --git a/doc/html/boost_typetraits/reference/is_member_pointer.html b/doc/html/boost_typetraits/reference/is_member_pointer.html
index 2b05ea4..d5c8263 100644
--- a/doc/html/boost_typetraits/reference/is_member_pointer.html
+++ b/doc/html/boost_typetraits/reference/is_member_pointer.html
@@ -14,8 +14,8 @@
 |
Home |
Libraries |
-
People |
-
FAQ |
+
People |
+
FAQ |
More |
diff --git a/doc/html/boost_typetraits/reference/is_object.html b/doc/html/boost_typetraits/reference/is_object.html
index 93cb157..9a9a917 100644
--- a/doc/html/boost_typetraits/reference/is_object.html
+++ b/doc/html/boost_typetraits/reference/is_object.html
@@ -14,8 +14,8 @@
 |
Home |
Libraries |
-
People |
-
FAQ |
+
People |
+
FAQ |
More |
diff --git a/doc/html/boost_typetraits/reference/is_pod.html b/doc/html/boost_typetraits/reference/is_pod.html
index d849d18..2912b2b 100644
--- a/doc/html/boost_typetraits/reference/is_pod.html
+++ b/doc/html/boost_typetraits/reference/is_pod.html
@@ -14,8 +14,8 @@
 |
Home |
Libraries |
-
People |
-
FAQ |
+
People |
+
FAQ |
More |
diff --git a/doc/html/boost_typetraits/reference/is_pointer.html b/doc/html/boost_typetraits/reference/is_pointer.html
index 20c9967..e4e2036 100644
--- a/doc/html/boost_typetraits/reference/is_pointer.html
+++ b/doc/html/boost_typetraits/reference/is_pointer.html
@@ -14,8 +14,8 @@
 |
Home |
Libraries |
-
People |
-
FAQ |
+
People |
+
FAQ |
More |
diff --git a/doc/html/boost_typetraits/reference/is_polymorphic.html b/doc/html/boost_typetraits/reference/is_polymorphic.html
index 851df16..3bf1cfe 100644
--- a/doc/html/boost_typetraits/reference/is_polymorphic.html
+++ b/doc/html/boost_typetraits/reference/is_polymorphic.html
@@ -14,8 +14,8 @@
 |
Home |
Libraries |
-
People |
-
FAQ |
+
People |
+
FAQ |
More |
diff --git a/doc/html/boost_typetraits/reference/is_reference.html b/doc/html/boost_typetraits/reference/is_reference.html
index 269c200..3b9010a 100644
--- a/doc/html/boost_typetraits/reference/is_reference.html
+++ b/doc/html/boost_typetraits/reference/is_reference.html
@@ -14,8 +14,8 @@
 |
Home |
Libraries |
-
People |
-
FAQ |
+
People |
+
FAQ |
More |
diff --git a/doc/html/boost_typetraits/reference/is_same.html b/doc/html/boost_typetraits/reference/is_same.html
index 5287f7d..824003f 100644
--- a/doc/html/boost_typetraits/reference/is_same.html
+++ b/doc/html/boost_typetraits/reference/is_same.html
@@ -14,8 +14,8 @@
 |
Home |
Libraries |
-
People |
-
FAQ |
+
People |
+
FAQ |
More |
diff --git a/doc/html/boost_typetraits/reference/is_scalar.html b/doc/html/boost_typetraits/reference/is_scalar.html
index 73f94bf..4e0e016 100644
--- a/doc/html/boost_typetraits/reference/is_scalar.html
+++ b/doc/html/boost_typetraits/reference/is_scalar.html
@@ -14,8 +14,8 @@
 |
Home |
Libraries |
-
People |
-
FAQ |
+
People |
+
FAQ |
More |
diff --git a/doc/html/boost_typetraits/reference/is_signed.html b/doc/html/boost_typetraits/reference/is_signed.html
index 1d7eca7..9f46b2a 100644
--- a/doc/html/boost_typetraits/reference/is_signed.html
+++ b/doc/html/boost_typetraits/reference/is_signed.html
@@ -14,8 +14,8 @@
 |
Home |
Libraries |
-
People |
-
FAQ |
+
People |
+
FAQ |
More |
diff --git a/doc/html/boost_typetraits/reference/is_stateless.html b/doc/html/boost_typetraits/reference/is_stateless.html
index e2977f8..43b34e5 100644
--- a/doc/html/boost_typetraits/reference/is_stateless.html
+++ b/doc/html/boost_typetraits/reference/is_stateless.html
@@ -14,8 +14,8 @@
 |
Home |
Libraries |
-
People |
-
FAQ |
+
People |
+
FAQ |
More |
diff --git a/doc/html/boost_typetraits/reference/is_union.html b/doc/html/boost_typetraits/reference/is_union.html
index 8e138d5..2880c0e 100644
--- a/doc/html/boost_typetraits/reference/is_union.html
+++ b/doc/html/boost_typetraits/reference/is_union.html
@@ -14,8 +14,8 @@
 |
Home |
Libraries |
-
People |
-
FAQ |
+
People |
+
FAQ |
More |
diff --git a/doc/html/boost_typetraits/reference/is_unsigned.html b/doc/html/boost_typetraits/reference/is_unsigned.html
index 90fd7e8..d892e68 100644
--- a/doc/html/boost_typetraits/reference/is_unsigned.html
+++ b/doc/html/boost_typetraits/reference/is_unsigned.html
@@ -14,8 +14,8 @@
 |
Home |
Libraries |
-
People |
-
FAQ |
+
People |
+
FAQ |
More |
diff --git a/doc/html/boost_typetraits/reference/is_void.html b/doc/html/boost_typetraits/reference/is_void.html
index dd8be37..569a964 100644
--- a/doc/html/boost_typetraits/reference/is_void.html
+++ b/doc/html/boost_typetraits/reference/is_void.html
@@ -14,8 +14,8 @@
 |
Home |
Libraries |
-
People |
-
FAQ |
+
People |
+
FAQ |
More |
diff --git a/doc/html/boost_typetraits/reference/is_volatile.html b/doc/html/boost_typetraits/reference/is_volatile.html
index 3c9e428..ca4673b 100644
--- a/doc/html/boost_typetraits/reference/is_volatile.html
+++ b/doc/html/boost_typetraits/reference/is_volatile.html
@@ -14,8 +14,8 @@
 |
Home |
Libraries |
-
People |
-
FAQ |
+
People |
+
FAQ |
More |
diff --git a/doc/html/boost_typetraits/reference/make_signed.html b/doc/html/boost_typetraits/reference/make_signed.html
index 361ae54..9cd85d1 100644
--- a/doc/html/boost_typetraits/reference/make_signed.html
+++ b/doc/html/boost_typetraits/reference/make_signed.html
@@ -14,8 +14,8 @@
 |
Home |
Libraries |
-
People |
-
FAQ |
+
People |
+
FAQ |
More |
@@ -54,7 +54,7 @@
or
#include <boost/type_traits.hpp>
-
Table 1.15. Examples
+
Table 1.15. Examples
diff --git a/doc/html/boost_typetraits/reference/make_unsigned.html b/doc/html/boost_typetraits/reference/make_unsigned.html
index bf70792..ba8146f 100644
--- a/doc/html/boost_typetraits/reference/make_unsigned.html
+++ b/doc/html/boost_typetraits/reference/make_unsigned.html
@@ -14,8 +14,8 @@
 |
Home |
Libraries |
-People |
-FAQ |
+People |
+FAQ |
More |
@@ -54,7 +54,7 @@
or
#include <boost/type_traits.hpp>
-
Table 1.16. Examples
+
Table 1.16. Examples
diff --git a/doc/html/boost_typetraits/reference/promote.html b/doc/html/boost_typetraits/reference/promote.html
index 08d606f..94ade5e 100644
--- a/doc/html/boost_typetraits/reference/promote.html
+++ b/doc/html/boost_typetraits/reference/promote.html
@@ -14,8 +14,8 @@
 |
Home |
Libraries |
-People |
-FAQ |
+People |
+FAQ |
More |
@@ -51,7 +51,7 @@
or
#include <boost/type_traits.hpp>
-
Table 1.17. Examples
+
Table 1.17. Examples
diff --git a/doc/html/boost_typetraits/reference/rank.html b/doc/html/boost_typetraits/reference/rank.html
index 834e0fa..96ff595 100644
--- a/doc/html/boost_typetraits/reference/rank.html
+++ b/doc/html/boost_typetraits/reference/rank.html
@@ -14,8 +14,8 @@
 |
Home |
Libraries |
-People |
-FAQ |
+People |
+FAQ |
More |
diff --git a/doc/html/boost_typetraits/reference/remove_all_extents.html b/doc/html/boost_typetraits/reference/remove_all_extents.html
index 7a51af8..498f838 100644
--- a/doc/html/boost_typetraits/reference/remove_all_extents.html
+++ b/doc/html/boost_typetraits/reference/remove_all_extents.html
@@ -14,8 +14,8 @@
 |
Home |
Libraries |
-
People |
-
FAQ |
+
People |
+
FAQ |
More |
@@ -54,7 +54,7 @@
or
#include <boost/type_traits.hpp>
-
Table 1.18. Examples
+
Table 1.18. Examples
diff --git a/doc/html/boost_typetraits/reference/remove_const.html b/doc/html/boost_typetraits/reference/remove_const.html
index fabea57..86b36f6 100644
--- a/doc/html/boost_typetraits/reference/remove_const.html
+++ b/doc/html/boost_typetraits/reference/remove_const.html
@@ -14,8 +14,8 @@
 |
Home |
Libraries |
-People |
-FAQ |
+People |
+FAQ |
More |
@@ -53,7 +53,7 @@
or
#include <boost/type_traits.hpp>
-
Table 1.19. Examples
+
Table 1.19. Examples
diff --git a/doc/html/boost_typetraits/reference/remove_cv.html b/doc/html/boost_typetraits/reference/remove_cv.html
index 886a0a2..5eac7be 100644
--- a/doc/html/boost_typetraits/reference/remove_cv.html
+++ b/doc/html/boost_typetraits/reference/remove_cv.html
@@ -14,8 +14,8 @@
 |
Home |
Libraries |
-People |
-FAQ |
+People |
+FAQ |
More |
@@ -53,7 +53,7 @@
or
#include <boost/type_traits.hpp>
-
Table 1.20. Examples
+
Table 1.20. Examples
diff --git a/doc/html/boost_typetraits/reference/remove_extent.html b/doc/html/boost_typetraits/reference/remove_extent.html
index b6946e1..607e43f 100644
--- a/doc/html/boost_typetraits/reference/remove_extent.html
+++ b/doc/html/boost_typetraits/reference/remove_extent.html
@@ -14,8 +14,8 @@
 |
Home |
Libraries |
-People |
-FAQ |
+People |
+FAQ |
More |
@@ -54,7 +54,7 @@
or
#include <boost/type_traits.hpp>
-
Table 1.21. Examples
+
Table 1.21. Examples
diff --git a/doc/html/boost_typetraits/reference/remove_pointer.html b/doc/html/boost_typetraits/reference/remove_pointer.html
index 4672498..b5736c4 100644
--- a/doc/html/boost_typetraits/reference/remove_pointer.html
+++ b/doc/html/boost_typetraits/reference/remove_pointer.html
@@ -14,8 +14,8 @@
 |
Home |
Libraries |
-People |
-FAQ |
+People |
+FAQ |
More |
@@ -53,7 +53,7 @@
or
#include <boost/type_traits.hpp>
-
Table 1.22. Examples
+
Table 1.22. Examples
diff --git a/doc/html/boost_typetraits/reference/remove_reference.html b/doc/html/boost_typetraits/reference/remove_reference.html
index d1fa0b9..57118d8 100644
--- a/doc/html/boost_typetraits/reference/remove_reference.html
+++ b/doc/html/boost_typetraits/reference/remove_reference.html
@@ -14,8 +14,8 @@
 |
Home |
Libraries |
-People |
-FAQ |
+People |
+FAQ |
More |
@@ -53,7 +53,7 @@
or
#include <boost/type_traits.hpp>
-
Table 1.23. Examples
+
Table 1.23. Examples
diff --git a/doc/html/boost_typetraits/reference/remove_volatile.html b/doc/html/boost_typetraits/reference/remove_volatile.html
index 95b9e29..20cc90f 100644
--- a/doc/html/boost_typetraits/reference/remove_volatile.html
+++ b/doc/html/boost_typetraits/reference/remove_volatile.html
@@ -14,8 +14,8 @@
 |
Home |
Libraries |
-People |
-FAQ |
+People |
+FAQ |
More |
@@ -53,7 +53,7 @@
or
#include <boost/type_traits.hpp>
-
Table 1.24. Examples
+
Table 1.24. Examples
diff --git a/doc/html/boost_typetraits/reference/type_with_alignment.html b/doc/html/boost_typetraits/reference/type_with_alignment.html
index d589e9e..0a619f3 100644
--- a/doc/html/boost_typetraits/reference/type_with_alignment.html
+++ b/doc/html/boost_typetraits/reference/type_with_alignment.html
@@ -14,8 +14,8 @@
 |
Home |
Libraries |
-People |
-FAQ |
+People |
+FAQ |
More |
diff --git a/doc/html/boost_typetraits/user_defined.html b/doc/html/boost_typetraits/user_defined.html
index 86abd4c..7eaa8ce 100644
--- a/doc/html/boost_typetraits/user_defined.html
+++ b/doc/html/boost_typetraits/user_defined.html
@@ -14,8 +14,8 @@
 |
Home |
Libraries |
-
People |
-
FAQ |
+
People |
+
FAQ |
More |
diff --git a/doc/html/index.html b/doc/html/index.html
index a0fbb5e..2e1bab5 100644
--- a/doc/html/index.html
+++ b/doc/html/index.html
@@ -12,8 +12,8 @@
 |
Home |
Libraries |
-
People |
-
FAQ |
+
People |
+
FAQ |
More |
@@ -30,7 +30,7 @@
Marcus, Itay Maman, John Maddock, Alexander Nasonov, Thorsten Ottosen, Robert
Ramey and Jeremy Siek
-
+
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
diff --git a/doc/intrinsics.qbk b/doc/intrinsics.qbk
index 4432772..2d171f6 100644
--- a/doc/intrinsics.qbk
+++ b/doc/intrinsics.qbk
@@ -57,6 +57,15 @@ a matter of defining one of more of the following macros:
[[BOOST_HAS_NOTHROW_COPY(T)][Should evaluate to true if `T(t)` can not throw]]
[[BOOST_HAS_NOTHROW_ASSIGN(T)][Should evaluate to true if `T t, u; t = u` can not throw]]
[[BOOST_HAS_VIRTUAL_DESTRUCTOR(T)][Should evaluate to true T has a virtual destructor]]
+
+ [[BOOST_IS_ABSTRACT(T)][Should evaluate to true if T is an abstract type]]
+ [[BOOST_IS_BASE_OF(T,U)][Should evaluate to true if T is a base class of U]]
+ [[BOOST_IS_CLASS(T)][Should evaluate to true if T is a class type]]
+ [[BOOST_IS_CONVERTIBLE(T,U)][Should evaluate to true if T is convertible to U]]
+ [[BOOST_IS_ENUM(T)][Should evaluate to true is T is an enum]]
+ [[BOOST_IS_POLYMORPHIC(T)][Should evaluate to true if T is a polymorphic type]]
+ [[BOOST_ALIGNMENT_OF(T)][Should evaluate to the alignment requirements of type T.]]
+
]
[endsect]
diff --git a/test/alignment_of_test.cpp b/test/alignment_of_test.cpp
index 4947e1f..85a4551 100644
--- a/test/alignment_of_test.cpp
+++ b/test/alignment_of_test.cpp
@@ -16,6 +16,37 @@
// VC++ emits an awful lot of warnings unless we define these:
#ifdef BOOST_MSVC
# pragma warning(disable:4244)
+//
+// What follows here is the test case for issue 1946.
+//
+#include
+// This kind of packing is set within MSVC 9.0 headers.
+// E.g. std::ostream has it.
+#pragma pack(push,8)
+
+// The issue is gone if Root has no data members
+struct Root { int a; };
+// The issue is gone if Root is inherited non-virtually
+struct A : virtual public Root {};
+
+#pragma pack(pop)
+//
+// This class has 8-byte alignment but is 44 bytes in size, which means
+// that elements in an array of this type will not actually be 8 byte
+// aligned. This appears to be an MSVC bug, and throws off our
+// alignment calculations: causing us to report a non-sensical 12-byte
+// alignment for this type. This is fixed by using the native __alignof
+// operator.
+//
+class issue1946 :
+ public A
+{
+public:
+ // The issue is gone if the type is not a boost::function. The signature doesn't matter.
+ typedef boost::function0< void > function_type;
+ function_type m_function;
+};
+
#endif
@@ -63,6 +94,10 @@ BOOST_CHECK_INTEGRAL_CONSTANT(::tt::alignment_of::value, ALIGNOF(POD_UD
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::alignment_of::value, ALIGNOF(empty_UDT));
BOOST_CHECK_INTEGRAL_CONSTANT(::tt::alignment_of::value, ALIGNOF(union_UDT));
+#if defined(BOOST_MSVC) && (BOOST_MSVC >= 1400)
+BOOST_CHECK_INTEGRAL_CONSTANT(::tt::alignment_of::value, ALIGNOF(issue1946));
+#endif
+
TT_TEST_END
diff --git a/test/type_with_alignment_test.cpp b/test/type_with_alignment_test.cpp
index c8a9722..65a9232 100644
--- a/test/type_with_alignment_test.cpp
+++ b/test/type_with_alignment_test.cpp
@@ -35,6 +35,14 @@ void check_call(const T& v)
#define TYPE_WITH_ALIGNMENT_TEST(T)\
{\
+std::cout << "\ntesting type " << typeid(T).name() << std::endl;\
+std::cout << "Alignment of T is " << ::tt::alignment_of< T >::value << std::endl;\
+std::cout << "Aligned type is " << typeid(::tt::type_with_alignment< ::tt::alignment_of< T >::value>::type).name() << std::endl;\
+std::cout << "Alignment of aligned type is " << ::tt::alignment_of<\
+ ::tt::type_with_alignment<\
+ ::tt::alignment_of< T >::value\
+ >::type\
+>::value << std::endl;\
BOOST_CHECK(::tt::alignment_of<\
::tt::type_with_alignment<\
::tt::alignment_of< T >::value\
@@ -57,10 +65,6 @@ BOOST_CHECK(::tt::is_pod<\
TT_TEST_BEGIN(type_with_alignment)
-BOOST_MESSAGE(typeid(::tt::type_with_alignment<
- ::tt::alignment_of::value
- >::type).name());
-
TYPE_WITH_ALIGNMENT_TEST_EX(char)
TYPE_WITH_ALIGNMENT_TEST_EX(short)
TYPE_WITH_ALIGNMENT_TEST_EX(int)