include/vcl/vclptr.hxx | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-)
New commits: commit 2eb121bd153c77725b759d457721efc39e5f21f6 Author: Stephan Bergmann <[email protected]> Date: Mon Dec 19 17:32:13 2016 +0100 MSVC 2015 apparently fails the sizeof(incomplete) SFINAE trick ...at least with --disable-pch it complained > [build CXX] canvas/source/directx/dx_bitmapcanvashelper.cxx > C:/lo/core/include\vcl/vclptr.hxx(98): error C2027: use of undefined type 'OutputDevice' > c:\lo\core\canvas\source\directx\dx_devicehelper.hxx(33): note: see declaration of 'OutputDevice' > c:\lo\core\canvas\source\directx\dx_devicehelper.hxx(109): note: see reference to class template instantiation 'VclPtr<OutputDevice>' being compiled Change-Id: I3ba90acdb632fc209b8137818e30fb771ba0807c diff --git a/include/vcl/vclptr.hxx b/include/vcl/vclptr.hxx index 22679e6..31f97dc 100644 --- a/include/vcl/vclptr.hxx +++ b/include/vcl/vclptr.hxx @@ -65,7 +65,8 @@ public: typedef typename C< value, void *, void >::t t; }; -#if HAVE_CXX11_CONSTEXPR +#if HAVE_CXX11_CONSTEXPR \ + && !(defined _MSC_VER && _MSC_VER <= 1900 && !defined __clang__) template<typename> constexpr bool isIncompleteOrDerivedFromVclReferenceBase(...) { return true; } @@ -92,7 +93,8 @@ namespace detail { template <class reference_type> class VclPtr { -#if HAVE_CXX11_CONSTEXPR +#if HAVE_CXX11_CONSTEXPR \ + && !(defined _MSC_VER && _MSC_VER <= 1900 && !defined __clang__) static_assert( vcl::detail::isIncompleteOrDerivedFromVclReferenceBase<reference_type>( nullptr), _______________________________________________ Libreoffice-commits mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
