diff options
author | Stephan Bergmann <sbergman@redhat.com> | 2015-12-01 10:06:58 +0100 |
---|---|---|
committer | Stephan Bergmann <sbergman@redhat.com> | 2017-09-30 11:11:43 +0200 |
commit | 81ce629c9e8a4fc26ded9d49157e3f3263991e03 (patch) | |
tree | af1cb9246ad613403b84cd15fd3852d1c615a710 /cppcanvas | |
parent | Make sure space handed to C/C++ ABI is padded large enough (diff) | |
download | core-81ce629c9e8a4fc26ded9d49157e3f3263991e03.tar.gz core-81ce629c9e8a4fc26ded9d49157e3f3263991e03.zip |
work around clang-cl ABI bug PR25641
<https://bugs.llvm.org/show_bug.cgi?id=25641> "clang-cl: vtordisp thunks not
emitted for functions with class template specializations in their signatures".
Change-Id: I4f9a9777ba7486a026cb3b34340fa5b78f210f05
Reviewed-on: https://gerrit.libreoffice.org/42949
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
Diffstat (limited to 'cppcanvas')
-rw-r--r-- | cppcanvas/source/wrapper/implbitmapcanvas.cxx | 3 | ||||
-rw-r--r-- | cppcanvas/source/wrapper/implspritecanvas.cxx | 3 |
2 files changed, 6 insertions, 0 deletions
diff --git a/cppcanvas/source/wrapper/implbitmapcanvas.cxx b/cppcanvas/source/wrapper/implbitmapcanvas.cxx index fee1cf357706..67eed7d94163 100644 --- a/cppcanvas/source/wrapper/implbitmapcanvas.cxx +++ b/cppcanvas/source/wrapper/implbitmapcanvas.cxx @@ -41,6 +41,9 @@ namespace cppcanvas mxBitmap( rCanvas, uno::UNO_QUERY ) { +#if defined __clang__ && defined _MSC_VER // workaround clang-cl ABI bug PR25641 + (void) (ColorSharedPtr()); +#endif OSL_ENSURE( mxBitmapCanvas.is(), "ImplBitmapCanvas::ImplBitmapCanvas(): Invalid canvas" ); OSL_ENSURE( mxBitmap.is(), "ImplBitmapCanvas::ImplBitmapCanvas(): Invalid bitmap" ); } diff --git a/cppcanvas/source/wrapper/implspritecanvas.cxx b/cppcanvas/source/wrapper/implspritecanvas.cxx index 9d720cdef5b0..8aa875b2a491 100644 --- a/cppcanvas/source/wrapper/implspritecanvas.cxx +++ b/cppcanvas/source/wrapper/implspritecanvas.cxx @@ -49,6 +49,9 @@ namespace cppcanvas mxSpriteCanvas( rCanvas ), mpTransformArbiter( new TransformationArbiter() ) { +#if defined __clang__ && defined _MSC_VER // workaround clang-cl ABI bug PR25641 + (void) (ColorSharedPtr()); +#endif OSL_ENSURE( mxSpriteCanvas.is(), "ImplSpriteCanvas::ImplSpriteCanvas(): Invalid canvas" ); } |