summaryrefslogtreecommitdiff
path: root/external/boost
AgeCommit message (Collapse)Author
2019-10-28external/boost: Adapt to std::allocator parts removed in C++20Stephan Bergmann
<http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/p0174r2.html#4.2> "Deprecating Vestigial Library Parts in C++17" deprecated, among others, std::allocator::rebind and std::allocator::allocate's hint parameter, and <http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/p0619r4.html#3.9> "Reviewing Deprecated Facilities of C++17 for C++20" removed them completely. (And <https://gcc.gnu.org/git/?p=gcc.git;a=commit; h=954026a7a4e6a1affd1ac5db237ccd75a3316760> "Remove redundant std::allocator members for C++20" removed them from libstdc++ now for -std=c++2a.) The change to boost/bimap/detail/bimap_core.hpp was necessary in Library_pdfimport: > In file included from workdir/UnpackedTarball/boost/boost/bimap/bimap.hpp:61, > from external/boost/include/boost/bimap/bimap.hpp:30, > from sdext/source/pdfimport/inc/pdfiprocessor.hxx:49, > from sdext/source/pdfimport/pdfiadaptor.cxx:27: > workdir/UnpackedTarball/boost/boost/bimap/detail/bimap_core.hpp: In instantiation of ‘class boost::bimaps::detail::bimap_core<boost::bimaps::unordered_set_of<pdfi::GraphicsContext, pdfi::GraphicsContextHash>, boost::bimaps::unordered_set_of<int>, mpl_::na, mpl_::na, mpl_::na>’: > workdir/UnpackedTarball/boost/boost/bimap/bimap.hpp:133:7: required from ‘class boost::bimaps::bimap<boost::bimaps::unordered_set_of<pdfi::GraphicsContext, pdfi::GraphicsContextHash>, boost::bimaps::unordered_set_of<int> >’ > sdext/source/pdfimport/inc/pdfiprocessor.hxx:190:44: required from here > workdir/UnpackedTarball/boost/boost/bimap/detail/bimap_core.hpp:410:7: error: no class template named ‘rebind’ in ‘boost::bimaps::detail::manage_additional_parameters<mpl_::na, mpl_::na, mpl_::na>::case_NNN::allocator’ {aka ‘class std::allocator<void>’} > 410 | > core_type; > | ^~~~~~~~~ [...] The change to boost/format/alt_sstream_impl.hpp was necessary in ExternalProject_libpagemaker: > In file included from libpagemaker_utils.h:22, > from geometry.h:20, > from OutputShape.h:17, > from OutputShape.cpp:10: > external/boost/include/boost/cstdint.hpp:30:2: warning: #include_next is a GCC extension > 30 | #include_next <boost/cstdint.hpp> > | ^~~~~~~~~~~~ > In file included from workdir/UnpackedTarball/boost/boost/format/alt_sstream.hpp:174, > from workdir/UnpackedTarball/boost/boost/format/internals.hpp:24, > from workdir/UnpackedTarball/boost/boost/format.hpp:38, > from PMDExceptions.h:15, > from OutputShape.h:16, > from OutputShape.cpp:10: > workdir/UnpackedTarball/boost/boost/format/alt_sstream_impl.hpp: In instantiation of ‘boost::io::basic_altstringbuf<Ch, Tr, Alloc>::int_type boost::io::basic_altstringbuf<Ch, Tr, Alloc>::overflow(boost::io::basic_altstringbuf<Ch, Tr, Alloc>::int_type) [with Ch = char; Tr = std::char_traits<char>; Alloc = std::allocator<char>; boost::io::basic_altstringbuf<Ch, Tr, Alloc>::int_type = int]’: > workdir/UnpackedTarball/boost/boost/format/alt_sstream_impl.hpp:227:9: required from here > workdir/UnpackedTarball/boost/boost/format/alt_sstream_impl.hpp:261:45: error: no matching function for call to ‘std::allocator<char>::allocate(std::size_t&, char*)’ > 261 | newptr = alloc_.allocate(new_size, is_allocated_? oldptr : 0); > | ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > In file included from gcc/trunk/inst/include/c++/10.0.0/memory:64, > from OutputShape.h:13, > from OutputShape.cpp:10: > gcc/trunk/inst/include/c++/10.0.0/bits/allocator.h:164:7: note: candidate: ‘constexpr _Tp* std::allocator< <template-parameter-1-1> >::allocate(std::size_t) [with _Tp = char; std::size_t = long unsigned int]’ > 164 | allocate(size_t __n) > | ^~~~~~~~ > gcc/trunk/inst/include/c++/10.0.0/bits/allocator.h:164:7: note: candidate expects 1 argument, 2 provided Change-Id: Id423f7597fe2e84e57df1d48a2ecc4d636c4a913 Reviewed-on: https://gerrit.libreoffice.org/81584 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-10-01external/boost: clang-cl cannot use MSVC's ATOMIC_FLAG_INITStephan Bergmann
The C++ standard leaves it unspecified how ATOMIC_FLAG_INIT is defined, and at least MS Visual Studio 2017 version 15.9 defines it as {0}, asking for list- initialization, but std::atomic_flag is no aggregate (it has a default ctor) and has no suitable ctor for that initializer list. Other standard library implementations solve that by e.g. adding a std::atomic_flag ctor taking a bool parameter, and defining ATOMIC_FLAG_INIT as std::atomic_flag(false); but MSVC apparently relies on some non-standard behavior here that allows to initialize std::atomic_flag from {0}. But that is apparently not supported by clang-cl, causing failures like > [build CXX] workdir/UnpackedTarball/boost/libs/locale/src/shared/date_time.cpp > In file included from workdir/UnpackedTarball/boost/libs/locale/src/shared/date_time.cpp:11: > In file included from workdir/UnpackedTarball/boost\boost/thread/locks.hpp:10: > In file included from workdir/UnpackedTarball/boost\boost/thread/lock_algorithms.hpp:11: > In file included from workdir/UnpackedTarball/boost\boost/thread/lock_types.hpp:18: > In file included from workdir/UnpackedTarball/boost\boost/thread/thread_time.hpp:9: > In file included from workdir/UnpackedTarball/boost\boost/date_time/time_clock.hpp:17: > In file included from external/boost/include\boost/shared_ptr.hpp:27: > In file included from workdir/UnpackedTarball/boost\boost/shared_ptr.hpp:17: > In file included from workdir/UnpackedTarball/boost\boost/smart_ptr/shared_ptr.hpp:36: > workdir/UnpackedTarball/boost\boost/smart_ptr/detail/spinlock_pool.hpp(77,5): error: no matching constructor for initialization of 'std::atomic_flag' > BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, > ^~~~~~~~~~~~~~~~~~~~~~~~~~ > workdir/UnpackedTarball/boost\boost/smart_ptr/detail/spinlock_std_atomic.hpp(81,38): note: expanded from macro 'BOOST_DETAIL_SPINLOCK_INIT' > #define BOOST_DETAIL_SPINLOCK_INIT { ATOMIC_FLAG_INIT } > ^~~~~~~~~~~~~~~~ > C:/PROGRA~2/MIB055~1/2017/COMMUN~1/VC/Tools/MSVC/1416~1.270/Include\atomic(158,26): note: expanded from macro 'ATOMIC_FLAG_INIT' > #define ATOMIC_FLAG_INIT {0} > ^~~ > C:/PROGRA~2/MIB055~1/2017/COMMUN~1/VC/Tools/MSVC/1416~1.270/Include\atomic(169,2): note: candidate constructor not viable: no known conversion from 'int' to 'const std::atomic_flag' for 1st argument > atomic_flag(const atomic_flag&) = delete; > ^ > C:/PROGRA~2/MIB055~1/2017/COMMUN~1/VC/Tools/MSVC/1416~1.270/Include\atomic(168,2): note: candidate constructor not viable: requires 0 arguments, but 1 was provided > atomic_flag() noexcept = default; > ^ The internals of external/boost appear to be the only place where we currently use ATOMIC_FLAG_INIT, and we can work around that easily by picking a different backend in boost/smart_ptr/detail/spinlock.hpp for the problematic combination of Clang and _MSC_VER 1916 (which may need to be extended to further MSVC versions). Change-Id: Ie6aa62556efbedd3897ad7803b546cb8088ebe10 Reviewed-on: https://gerrit.libreoffice.org/79967 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-05-24disable warnings in external libsLuboš Luňák
As in, really disable, so that they do not even show. This moreover avoids tons of D9025 warnings from MSVC about overriding -W4 with -w. Change-Id: Ia2e72fd72d883d91bdd89e467ee42f259e2ae033 Reviewed-on: https://gerrit.libreoffice.org/72899 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
2019-01-30external/boost/boost_1_60_0.undef.warning.patch should no longer be necessaryStephan Bergmann
...(at least the original BOOST_GCC_VERSION part) as Boost 1.69.0 boost/config/workaround.hpp contains > #ifndef BOOST_GCC > #define BOOST_GCC_WORKAROUND_GUARD 1 > #define BOOST_GCC_VERSION_WORKAROUND_GUARD 1 > #else > #define BOOST_GCC_WORKAROUND_GUARD 0 > #define BOOST_GCC_VERSION_WORKAROUND_GUARD 0 > #endif Change-Id: I7690db147dbe776ff51b94fc9950b890bb290bda Reviewed-on: https://gerrit.libreoffice.org/67000 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-01-30Just define the __clang_major___WORKAROUND_GUARDJan-Marek Glogowski
Change-Id: I84e969005ac2a96da449b5434ee5fdb37fc9b432 Reviewed-on: https://gerrit.libreoffice.org/66928 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-01-15Avoid -Werror=undef in boost/optional.hppStephan Bergmann
...after 23a8d5ffbbe58761b89f590f0735abccd69a3681 "Upgrade external/boost to Boost 1.69.0", where at least some GCC versions apparently choke on -Wundef there even though going through external/boost/include/boost/optional.hpp with #pragma GCC diagnostic ignored "-Wundef" (<https://ci.libreoffice.org/job/lo_tb_master_linux_dbg/23929/>): > In file included from /home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/workdir/UnpackedTarball/boost/boost/core/explicit_operator_bool.hpp:22:0, > from /home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/workdir/UnpackedTarball/boost/boost/optional/optional.hpp:30, > from /home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/external/boost/include/boost/optional/optional.hpp:27, > from /home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/workdir/UnpackedTarball/boost/boost/optional.hpp:15, > from /home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/external/boost/include/boost/optional.hpp:27, > from /home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/include/vcl/outdevstate.hxx:31, > from /home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/include/vcl/outdev.hxx:39, > from /home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/include/vcl/window.hxx:25, > from /home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/include/vcl/ctrl.hxx:25, > from /home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/include/vcl/fixed.hxx:25, > from /home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/comphelper/source/misc/xmlsechelper.cxx:25: > /home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/workdir/UnpackedTarball/boost/boost/type_traits/detail/config.hpp:85:69: error: "__clang_major___WORKAROUND_GUARD" is not defined, evaluates to 0 [-Werror=undef] > && !BOOST_WORKAROUND(BOOST_MSVC, < 1900) && !BOOST_WORKAROUND(__clang_major__, <= 4) > ^ > /home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/workdir/UnpackedTarball/boost/boost/config/workaround.hpp:253:10: note: in definition of macro ‘BOOST_WORKAROUND’ > ((symbol ## _WORKAROUND_GUARD + 0 == 0) && \ > ^~~~~~ > /home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/workdir/UnpackedTarball/boost/boost/type_traits/detail/config.hpp:85:69: error: "__clang_major__" is not defined, evaluates to 0 [-Werror=undef] > && !BOOST_WORKAROUND(BOOST_MSVC, < 1900) && !BOOST_WORKAROUND(__clang_major__, <= 4) > ^ > /home/tdf/lode/jenkins/workspace/lo_tb_master_linux_dbg/workdir/UnpackedTarball/boost/boost/config/workaround.hpp:254:9: note: in definition of macro ‘BOOST_WORKAROUND’ > (symbol != 0) && (1 % (( (symbol test) ) + 1))) > ^~~~~~ Change-Id: I9fe6bf0019fcddad7e1b5606a162474130a9250e Reviewed-on: https://gerrit.libreoffice.org/66349 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2019-01-15Upgrade external/boost to Boost 1.69.0Stephan Bergmann
<https://dev-www.libreoffice.org/src/boost_1_69_0.tar.bz2> is a copy of <https://dl.bintray.com/boostorg/release/1.69.0/source/boost_1_69_0.tar.bz2>, SHA256 hash as given at <https://www.boost.org/users/download/>. * removed from external/boost/include/boost/ those files that are no longer present in workdir/UnpackedTarball/boost/boost/ * the shrunk external/boost/rtti.patch.0 can probably be removed completely in a follow-up commit * the patch to libs/filesystem/src/operations.cpp in external/boost/boost-android-unified.patch.1 no longer applied, and appears to be no longer necessary anyway (seeing a working build without it of --with-distro=LibreOfficeAndroid and NDK r16b); but with the non-standard Clang 5.0.300080 from NDK r16b, the build now caused failures like > workdir/UnpackedTarball/boost/boost/type_traits/detail/is_function_cxx_11.hpp:36:11: error: class template partial specialization contains a template parameter that cannot be deduced; this partial specialization will never be used [-Wunusable-partial-specialization] > struct is_function<Ret BOOST_TT_DEF_CALL(Args...)BOOST_TT_NOEXCEPT_DECL> : public true_type {}; > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > workdir/UnpackedTarball/boost/boost/type_traits/detail/is_function_cxx_11.hpp:35:38: note: non-deducible template parameter 'NE' > template <class Ret, class...Args BOOST_TT_NOEXCEPT_PARAM> > ^ > workdir/UnpackedTarball/boost/boost/type_traits/detail/is_function_cxx_11.hpp:22:40: note: expanded from macro 'BOOST_TT_NOEXCEPT_PARAM' > #define BOOST_TT_NOEXCEPT_PARAM , bool NE > ^ showing that that version of Clang has the same problem handling noexcept(b) as a deduced template parameter as MSVC has, as already supported by the code * new external/boost/sse.patch.0 needed on Windows x86 to silence errors like > C:\cygwin\home\tdf\lode\jenkins\workspace\gerrit_windows\workdir\UnpackedTarball\boost\boost/type_traits/detail/is_function_cxx_11.hpp(111): error C2215: '__vectorcall' cannot be used with '/arch:SSE' (<https://ci.libreoffice.org/job/gerrit_windows/26117/>); according to <https://docs.microsoft.com/en-us/cpp/preprocessor/predefined-macros ?view=vs-2017>: "_M_IX86_FP Defined as an integer literal value that indicates the /arch compiler option that was set, or the default. This macro is always defined when the compilation target is an x86 processor. Otherwise, undefined. When defined, the value is: [...] 1 if the /arch:SSE compiler option was set." and we specify /arch:SSE explicitly for Windows x86 since 8bd6bf93b7711a7ac7c5cbd7c3bb980481570ebd "fdo#82430: configure: MSVC build: avoid using SSE2 instructions" * boost::logic::tribool conversion operator to bool is explicit now Change-Id: Iea49560d734f545539f062dce46740fbf812dd84 Reviewed-on: https://gerrit.libreoffice.org/66189 Reviewed-by: Stephan Bergmann <sbergman@redhat.com> Tested-by: Stephan Bergmann <sbergman@redhat.com>
2019-01-11Drop external/boost/boost.gcc47679.patchStephan Bergmann
The corresponding <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=47679> "[5 Regression] Strange uninitialized warning after SRA" is claimed to be fixed in GCC 6, so should no longer be needed (with our current baseline of GCC 7). Change-Id: Ia9435dbf6644639961094d6bfb47e47500ab70b7 Reviewed-on: https://gerrit.libreoffice.org/66181 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2018-11-30Remove obsolete _MSC_VER checksStephan Bergmann
...after 206b8c4ae320d7d8614f21800d8f77fa29f8f5ff "On Windows, check for at least Visual Studio 2017 version 15.7" Change-Id: I38ee86e1649bbdc828a7e328f2dbbac0dc163c8a Reviewed-on: https://gerrit.libreoffice.org/64250 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2018-08-31cl version 19.15.26726 (VS 2017 15.8.1) still produces those warningsStephan Bergmann
...see d84bf553afa510e5c674817fa480ac0af62e4945 "Silence external/boost deprecated std::iterator warnings with MSVC 2017" Change-Id: I886ce27b90184aa0044f5a89f40cdd69507a70c4 Reviewed-on: https://gerrit.libreoffice.org/59831 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2018-08-09Silence external/boost deprecated std::iterator warnings with MSVC 2017Stephan Bergmann
At least cl version 19.14.26433 generates such warning C4996 now. While the one about the using declaration in boost/iterator.hpp looks somewhat bogus, the one in boost/circular_buffer/details.hpp is about an actual use of std::iterator as a base class in Boost-internal code. If further such places in external/boost crop up that need fixing, an alternative approach could be to extend the external/boost/include/ wrappers to be also used with MSVC. (Globally setting _SILENCE_CXX17_ITERATOR_BASE_CLASS_DEPRECATION_WARNING has avoided, as it also finds uses in our own code that should be fixed, like 58222feb7fee0c08fb54b9ee29f8f0674c5cf508 "warning STL4015: std::iterator is deprecated (clang-cl)".) Change-Id: I6a41421a590fcee57b4ac8bcb7c3631fdfdecb81 Reviewed-on: https://gerrit.libreoffice.org/58755 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2018-07-26external/boost: silence -Werror=deprecated-copy (GCC trunk towards GCC 9)Stephan Bergmann
Change-Id: I25703979ebe94649f9cf1464d282b21a70cfe1fa Reviewed-on: https://gerrit.libreoffice.org/58041 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2018-05-17Don't ever attempt to initialise a std::locale with a UTF-8 locale on WindowsTor Lillqvist
As I said in 2ff121f298e64ff204621220622472fe697d599d, passing a POSIX-style locale name to the std::locale constructor on Windows is decidedly odd, and apparently boost adds insult to injury by even really attempting to use a UTF-8 one if that is what our code thinks it wants. Or something. This commit avoids the ton of "warn:unotools.i18n:7996:3544:unotools/source/i18n/resmgr.cxx:123: CRT Report Hook: ASSERT: f:\dd\vctools\crt\crtw32\stdcpp\xmbtowc.c(89) : Assertion failed: ploc->_Mbcurmax == 1 || ploc->_Mbcurmax == 2" we otherwise get when built with --enable-dbgutil and a current VS2015 (or 2017?). Change-Id: I3a774dff7b12d9960f553c9f242e0463c6d13d5d Reviewed-on: https://gerrit.libreoffice.org/54444 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Tor Lillqvist <tml@collabora.com>
2018-05-04Removed executable permission on data filesAndrea Gelmini
chmod -x for doc, xlsx, png, hxx, cxx, xls, ppt, hpp Change-Id: I52aed261e318cfd765e9adb3ed8edd226c8a59d8 Reviewed-on: https://gerrit.libreoffice.org/52569 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
2018-02-01external: MSVC: pragma warning: make more specific, remove obsoleteMike Kaganski
Change-Id: Ic17ffd6fc34504cf848d963e787e685ed2142080 Reviewed-on: https://gerrit.libreoffice.org/48978 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2018-01-24Silence upcoming GCC 8 -Werror=parentheses in external/boostStephan Bergmann
...reporting such delights as > [CXX] sal/cppunittester/cppunittester.cxx > In file included from workdir/UnpackedTarball/boost/boost/mpl/aux_/na_assert.hpp:23, [...] > from external/boost/include/boost/algorithm/string.hpp:25, > from sal/cppunittester/cppunittester.cxx:60: > workdir/UnpackedTarball/boost/boost/mpl/assert.hpp:188:21: error: unnecessary parentheses in declaration of ‘assert_arg’ [-Werror=parentheses] > failed ************ (Pred::************ > ^ where boost/mpl/assert.hpp contains > template< typename Pred > > failed ************ (Pred::************ > assert_arg( void (*)(Pred), typename assert_arg_pred<Pred>::type ) > ); Change-Id: I6976b2cc23f1d309d27d3fde9098b10c9d877599 Reviewed-on: https://gerrit.libreoffice.org/48386 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2018-01-23Silence -Werror,-Wundef in external/boostStephan Bergmann
> [CXX] vcl/unx/gtk3_kde5/gtk3_kde5_folderpicker.cxx > In file included from vcl/unx/gtk3_kde5/gtk3_kde5_folderpicker.cxx:20: > In file included from vcl/unx/gtk3_kde5/gtk3_kde5_folderpicker.hxx:30: > In file included from vcl/unx/gtk3_kde5/gtk3_kde5_filepicker_ipc.hxx:29: > In file included from workdir/UnpackedTarball/boost/boost/process/child.hpp:22: > In file included from workdir/UnpackedTarball/boost/boost/process/detail/execute_impl.hpp:24: > workdir/UnpackedTarball/boost/boost/process/detail/posix/executor.hpp:446:5: error: 'BOOST_POSIX_HAS_VFORK' is not defined, evaluates to 0 [-Werror,-Wundef] > #if BOOST_POSIX_HAS_VFORK > ^ under --enable-gtk3-kde5 Change-Id: Ib4648d1337a493c35b35897dc71c5e971c6eb214
2018-01-22boost: upgrade to release 1.66.0Michael Stahl
This claims to support Visual Studio 2017.4, but not the current 2017.5. * remove boost.auto_link.patch; it does not apply; not sure why we need this if we can just define BOOST_ALL_NO_LIB (see commit 7f2e168421c3cd928a31a52a8b5afe97e931d3ba) * remove some hunks from clang-cl.patch.0 that look fixed upstream * add a global workaround for spurious GCC warning: oox/source/drawingml/shape.cxx:921:54: error: ‘oShadowColor.boost::optional_detail::tc_optional_base<int>::m_storage’ may be used uninitialized in this function [-Werror=maybe-uninitialized] aFormat.Color = *oShadowColor; Change-Id: I1eb1d8b66554a84a7d7269f1faaa98695fe2f501 Reviewed-on: https://gerrit.libreoffice.org/48187 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Michael Stahl <mstahl@redhat.com>
2018-01-18android: use unified headers and llvm-c++ STL (x86) with NDK 16Christian Lohmaier
gnustl (and others) are to be removed in future versions of the ndk also bump gradle and build-tools to current versions along with it arm unfortunately crashes with llvm-c++, so keep with gnustl for now/fix that later Change-Id: Ic794c3293b599b77ec48096bf3283a99c09cbb79 Reviewed-on: https://gerrit.libreoffice.org/45163 Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com> Tested-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
2018-01-10Silence clang-cl -Werror,-Wmicrosoft-unqualified-friend, reduxStephan Bergmann
...adding two more wrapper files missing from aef6da021da33f099f99ed633814b8771ad4abda "Silence clang-cl -Werror,-Wmicrosoft- unqualified-friend in external/boost", necessary since 653736fb23346e07e8c0e6e0125689ae1f49f0f7 "pdf: use bimap for GraphicsContext-id map" Change-Id: Ied377274d355f27af5d97d7bea89e3b598d9b7d0 Reviewed-on: https://gerrit.libreoffice.org/47688 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2018-01-09Silence clang-cl -Werror,-Wmicrosoft-unqualified-friend in external/boostStephan Bergmann
...messages like: > workdir/UnpackedTarball/boost\boost/bimap/detail/map_view_iterator.hpp(138,18): error: unqualified friend declaration referring to type outside of the nearest enclosing namespace is a Microsoft extension; add a nested name specifier [-Werror,-Wmicrosoft-unqualified-friend] > friend class iterator_core_access; > ^ > ::boost::iterators:: Change-Id: I393b7c95943a55d5f755cfed41e0b7bc3306c568 Reviewed-on: https://gerrit.libreoffice.org/47673 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-12-20Remove Clang -Wunknown-pragmas workaroundStephan Bergmann
...that appears to only be necessary for Clang <= 3.4, so no longer needed since fa7b7f73938e837af2765f8a03f07e404046877b "Document that Clang 3.4.2 is known to be too old" Change-Id: I09361f6ffc23b8d20d65d3c84d9003719e2159f8 Reviewed-on: https://gerrit.libreoffice.org/46787 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-12-15Enable C++17 for clang-cl, tooStephan Bergmann
Similar to libc++ in C++17 mode, some types like std::auto_ptr are indeed removed in C++17 mode by default, and need _HAS_AUTO_PTR_ETC=1 to be enabled (see <https://blogs.msdn.microsoft.com/vcblog/2017/12/08/c17-feature-removals- and-deprecations/>). Unlike libc++, also std::binary_function and std::unary_function are removed (and need the same _HAS_AUTO_PTR_ETC=1 to enable). So either set that flag to make external code build, or use patches (for external/mdds) to make externals' files included in LO proper still work there. Change-Id: I886cc0de8196255334ee03ec48cb4bc54d460afd Reviewed-on: https://gerrit.libreoffice.org/46514 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-12-06Work around latest Boost 1.65.1 still using deprecated std::auto_ptrStephan Bergmann
...in various places, which is gone by default at least from recent libc++ in C++17 mode. So bring it back there for now, until Boost is fixed. Change-Id: I0b3128d114ab2b5693a84bdc7d2b9b9b9b5c3c76 Reviewed-on: https://gerrit.libreoffice.org/45910 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-09-19Better update of external/boost/boost_1_60_0.undef.warning.patchStephan Bergmann
follow-up to 9d837f19d1bf4cfbdee528e027f5b72d9b1da73d "Upgrade to Boost 1.65.1", in accordance with <https://github.com/boostorg/config/commit/ 2dfd1a95bab49afcc374aadb1491d8fde189db74> "Move workaround.hpp out of detail (used by more than Config)" Change-Id: I666911ef89e94b4ab717c23394b76dd0662dd9ef Reviewed-on: https://gerrit.libreoffice.org/42443 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-09-18Upgrade to Boost 1.65.1Stephan Bergmann
...<https://dl.bintray.com/boostorg/release/1.65.1/source/boost_1_65_1.tar.bz2>. One reason to upgrade is that with 1.63 CppunitTest_tools_test started to fail with -fsanitize=signed-integer-overflow after 331e2e5ed3bf4e0b2c1fab3b7bca836170317827 "long->sal_Int32 in Fraction", > workdir/UnpackedTarball/boost/boost/integer/common_factor_rt.hpp:300:5: runtime error: negation of -2147483648 cannot be represented in type 'int'; cast to an unsigned type to negate this value to itself > #0 0x7f0f99bea71b in boost::integer::detail::gcd_optimal_evaluator<int>::operator()(int, int) const workdir/UnpackedTarball/boost/boost/integer/common_factor_rt.hpp:300:5 > #1 0x7f0f99bea52a in int boost::integer::detail::gcd_optimal<int>(int const&, int const&) workdir/UnpackedTarball/boost/boost/integer/common_factor_rt.hpp:372:16 > #2 0x7f0f99be7d70 in int boost::integer::gcd<int>(int const&, int const&) workdir/UnpackedTarball/boost/boost/integer/common_factor_rt.hpp:435:12 > #3 0x7f0f99be7620 in boost::rational<int>::normalize() workdir/UnpackedTarball/boost/boost/rational.hpp:559:17 > #4 0x7f0f99bdff29 in rational_FromDouble(double) tools/source/generic/fract.cxx:449:12 > #5 0x7f0f99bdf8b4 in Fraction::Fraction(double) tools/source/generic/fract.cxx:93:25 > #6 0x7f0f9a1bb987 in tools::FractionTest::testMinLongDouble() tools/qa/cppunit/test_fract.cxx:79:18 > #7 0x7f0f9a1bddd2 in void std::_Bind<std::_Mem_fn<void (tools::FractionTest::*)()> (tools::FractionTest*)>::__call<void, , 0ul>(std::tuple<>&&, std::_Index_tuple<0ul>) /usr/lib/gcc/x86_64-redhat-linux/6.4.1/../../../../include/c++/6.4.1/functional:933:11 > #8 0x7f0f9a1bdbe9 in void std::_Bind<std::_Mem_fn<void (tools::FractionTest::*)()> (tools::FractionTest*)>::operator()<, void>() /usr/lib/gcc/x86_64-redhat-linux/6.4.1/../../../../include/c++/6.4.1/functional:991:17 > #9 0x7f0fa5eb53b0 in CppUnit::TestCaseMethodFunctor::operator()() const workdir/UnpackedTarball/cppunit/src/cppunit/TestCase.cpp:32:5 > #10 0x7f0fa5e1bd1b in CppUnit::DefaultProtector::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) workdir/UnpackedTarball/cppunit/src/cppunit/DefaultProtector.cpp:15:12 > #11 0x7f0fa5e8653d in CppUnit::ProtectorChain::ProtectFunctor::operator()() const workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:20:25 > #12 0x7f0fa5e7fb7c in CppUnit::ProtectorChain::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:86:18 > #13 0x7f0fa5f17fe0 in CppUnit::TestResult::protect(CppUnit::Functor const&, CppUnit::Test*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) workdir/UnpackedTarball/cppunit/src/cppunit/TestResult.cpp:182:28 > #14 0x7f0fa5eb398c in CppUnit::TestCase::run(CppUnit::TestResult*) workdir/UnpackedTarball/cppunit/src/cppunit/TestCase.cpp:91:13 > #15 0x7f0fa5eb7887 in CppUnit::TestComposite::doRunChildTests(CppUnit::TestResult*) workdir/UnpackedTarball/cppunit/src/cppunit/TestComposite.cpp:64:30 > #16 0x7f0fa5eb6a78 in CppUnit::TestComposite::run(CppUnit::TestResult*) workdir/UnpackedTarball/cppunit/src/cppunit/TestComposite.cpp:23:3 > #17 0x7f0fa5eb7887 in CppUnit::TestComposite::doRunChildTests(CppUnit::TestResult*) workdir/UnpackedTarball/cppunit/src/cppunit/TestComposite.cpp:64:30 > #18 0x7f0fa5eb6a78 in CppUnit::TestComposite::run(CppUnit::TestResult*) workdir/UnpackedTarball/cppunit/src/cppunit/TestComposite.cpp:23:3 > #19 0x7f0fa5f46655 in CppUnit::TestRunner::WrappingSuite::run(CppUnit::TestResult*) workdir/UnpackedTarball/cppunit/src/cppunit/TestRunner.cpp:47:27 > #20 0x7f0fa5f16a66 in CppUnit::TestResult::runTest(CppUnit::Test*) workdir/UnpackedTarball/cppunit/src/cppunit/TestResult.cpp:149:9 > #21 0x7f0fa5f475c6 in CppUnit::TestRunner::run(CppUnit::TestResult&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) workdir/UnpackedTarball/cppunit/src/cppunit/TestRunner.cpp:96:14 > #22 0x534a01 in (anonymous namespace)::ProtectedFixtureFunctor::run() const sal/cppunittester/cppunittester.cxx:316:20 > #23 0x532ac4 in sal_main() sal/cppunittester/cppunittester.cxx:466:20 > #24 0x5324f2 in main sal/cppunittester/cppunittester.cxx:373:1 > #25 0x7f0fa436e430 in __libc_start_main /usr/src/debug/glibc-2.24-66-gd5a4092c36/csu/../csu/libc-start.c:289 > #26 0x4387b9 in _start (workdir/LinkTarget/Executable/cppunittester+0x4387b9) Change-Id: Id1c3b216ee18c1d622768dc960ac257d5415c664 Reviewed-on: https://gerrit.libreoffice.org/42427 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-09-06Boost: Update last known MSVC version to VS2017.3David Ostrovsky
Change-Id: I41952279cc9d40769bfc51dd0f03c0b0624815d2 Reviewed-on: https://gerrit.libreoffice.org/41961 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Grzegorz Araminowicz <g.araminowicz@gmail.com> Reviewed-by: Michael Stahl <mstahl@redhat.com>
2017-08-16Silence further warnings in external/boost/include wrappersStephan Bergmann
...as required by clang-cl: > [build CXX] avmedia/source/framework/modeltools.cxx > In file included from C:/lo64/core/avmedia/source/framework/modeltools.cxx:29: > In file included from C:/lo64/core/external/boost/include\boost/exception/diagnostic_information.hpp:23: > In file included from C:/lo64/core/workdir/UnpackedTarball/boost\boost/exception/diagnostic_information.hpp:17: > C:/lo64/core/workdir/UnpackedTarball/boost\boost/exception/info.hpp(103,13): error: 'boost::exception_detail::error_info_container_impl' has virtual functions but non-virtual destructor [-Werror,-Wnon-virtual-dtor] > ~error_info_container_impl() throw() > ^ > C:/lo64/core/workdir/UnpackedTarball/boost\boost/exception/info.hpp(172,21): error: delete called on non-final 'boost::exception_detail::error_info_container_impl' that has virtual functions but non-virtual destructor [-Werror,-Wdelete-non-virtual-dtor] > delete this; > ^ > 2 errors generated. Change-Id: I026f7e72d027becb68ac9118616ed6d8f2ecbf80 Reviewed-on: https://gerrit.libreoffice.org/41225 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2017-08-16Re-ran bin/gen-boost-headersStephan Bergmann
(missing external/boost/include/boost/exception/diagnostic_information.hpp had caused errors with clang-cl) Change-Id: Ibb84960e5da8fe73cb67aa5ad32a2c249ff921e6
2017-07-05external/boost: Avoid -fsanitize=pointer-overflowStephan Bergmann
...as seen during e.g. CppunitTest_sw_ooxmlexport8, when (n < (m_end - p) ? n : n - capacity()) is promoted to unsigned type size_t: > workdir/UnpackedTarball/boost/boost/circular_buffer/base.hpp:2358:18: runtime error: unsigned pointer index expression result is 0x602000b97110, preceding its base 0x602000b97118 > #0 0x7f77c69a7721 in SwFrameFormat** boost::circular_buffer<SwFrameFormat*, std::allocator<SwFrameFormat*> >::add<SwFrameFormat**>(SwFrameFormat**, long) const workdir/UnpackedTarball/boost/boost/circular_buffer/base.hpp:2358:18 > #1 0x7f77c69a7635 in boost::circular_buffer<SwFrameFormat*, std::allocator<SwFrameFormat*> >::destroy_content(boost::integral_constant<bool, true> const&) workdir/UnpackedTarball/boost/boost/circular_buffer/base.hpp:2460:19 > #2 0x7f77c69a7493 in boost::circular_buffer<SwFrameFormat*, std::allocator<SwFrameFormat*> >::destroy_content() workdir/UnpackedTarball/boost/boost/circular_buffer/base.hpp:2454:9 > #3 0x7f77c69a7369 in boost::circular_buffer<SwFrameFormat*, std::allocator<SwFrameFormat*> >::destroy() workdir/UnpackedTarball/boost/boost/circular_buffer/base.hpp:2471:9 > #4 0x7f77c699d386 in boost::circular_buffer<SwFrameFormat*, std::allocator<SwFrameFormat*> >::~circular_buffer() workdir/UnpackedTarball/boost/boost/circular_buffer/base.hpp:1193:9 > #5 0x7f77c6971187 in AppendAllObjs(SwFrameFormats const*, SwFrame const*) sw/source/core/layout/frmtool.cxx:1125:1 > #6 0x7f77c6976f7b in InsertCnt_(SwLayoutFrame*, SwDoc*, unsigned long, bool, unsigned long, SwFrame*) sw/source/core/layout/frmtool.cxx:1514:13 > #7 0x7f77c6a65698 in SwRootFrame::Init(SwFrameFormat*) sw/source/core/layout/newfrm.cxx:552:5 > #8 0x7f77c7ba0d86 in SwViewShell::Init(SwViewOption const*) sw/source/core/view/vnew.cxx:126:23 > #9 0x7f77c7ba29ff in SwViewShell::SwViewShell(SwDoc&, vcl::Window*, SwViewOption const*, OutputDevice*, long) sw/source/core/view/vnew.cxx:183:5 > #10 0x7f77c57a75fe in SwCursorShell::SwCursorShell(SwDoc&, vcl::Window*, SwViewOption const*) sw/source/core/crsr/crsrsh.cxx:2672:7 > #11 0x7f77c657a0af in SwEditShell::SwEditShell(SwDoc&, vcl::Window*, SwViewOption const*) sw/source/core/edit/edws.cxx:43:7 > #12 0x7f77c67602f1 in SwFEShell::SwFEShell(SwDoc&, vcl::Window*, SwViewOption const*) sw/source/core/frmedt/fews.cxx:687:7 > #13 0x7f77c8e9758b in SwWrtShell::SwWrtShell(SwDoc&, vcl::Window*, SwView&, SwViewOption const*) sw/source/uibase/wrtsh/wrtsh1.cxx:1643:7 > #14 0x7f77c8a797f0 in SwView::SwView(SfxViewFrame*, SfxViewShell*) sw/source/uibase/uiview/view.cxx:811:27 > #15 0x7f77c8aa4ab6 in SwView::CreateInstance(SfxViewFrame*, SfxViewShell*) sw/source/uibase/uiview/view0.cxx:78:1 > #16 0x7f77d0e688c4 in SfxBaseModel::createViewController(rtl::OUString const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&, com::sun::star::uno::Reference<com::sun::star::frame::XFrame> const&) sfx2/source/doc/sfxbasemodel.cxx:4094:46 > #17 0x7f77d0e6a08f in non-virtual thunk to SfxBaseModel::createViewController(rtl::OUString const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&, com::sun::star::uno::Reference<com::sun::star::frame::XFrame> const&) sfx2/source/doc/sfxbasemodel.cxx > #18 0x7f77d11ab1e3 in (anonymous namespace)::SfxFrameLoader_Impl::impl_createDocumentView(com::sun::star::uno::Reference<com::sun::star::frame::XModel2> const&, com::sun::star::uno::Reference<com::sun::star::frame::XFrame> const&, comphelper::NamedValueCollection const&, rtl::OUString const&) sfx2/source/view/frmload.cxx:590:60 > #19 0x7f77d11a71ca in (anonymous namespace)::SfxFrameLoader_Impl::load(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&, com::sun::star::uno::Reference<com::sun::star::frame::XFrame> const&) sfx2/source/view/frmload.cxx:717:13 > #20 0x7f779960c3d1 in framework::LoadEnv::impl_loadContent() framework/source/loadenv/loadenv.cxx:1083:37 > #21 0x7f77996054f4 in framework::LoadEnv::startLoading() framework/source/loadenv/loadenv.cxx:372:20 > #22 0x7f7799603759 in framework::LoadEnv::loadComponentFromURL(com::sun::star::uno::Reference<com::sun::star::frame::XComponentLoader> const&, com::sun::star::uno::Reference<com::sun::star::uno::XComponentContext> const&, rtl::OUString const&, rtl::OUString const&, int, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) framework/source/loadenv/loadenv.cxx:158:14 > #23 0x7f77996ba887 in framework::Desktop::loadComponentFromURL(rtl::OUString const&, rtl::OUString const&, int, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) framework/source/services/desktop.cxx:624:12 > #24 0x7f77996baa8c in non-virtual thunk to framework::Desktop::loadComponentFromURL(rtl::OUString const&, rtl::OUString const&, int, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) framework/source/services/desktop.cxx > #25 0x7f77d2f9abed in unotest::MacrosTest::loadFromDesktop(rtl::OUString const&, rtl::OUString const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) unotest/source/cpp/macros_test.cxx:50:60 > #26 0x7f77d3b286d6 in SwModelTestBase::loadURL(rtl::OUString const&, char const*, char const*) sw/qa/extras/inc/swmodeltestbase.hxx:648:23 > #27 0x7f77d3b27de2 in SwModelTestBase::load(char const*, char const*, char const*) sw/qa/extras/inc/swmodeltestbase.hxx:619:16 > #28 0x7f77d3b277b7 in SwModelTestBase::executeImportTest(char const*, char const*) sw/qa/extras/inc/swmodeltestbase.hxx:224:13 > #29 0x7f77d3cec8e6 in void std::_Bind<std::_Mem_fn<void (testFdo78939::*)()> (testFdo78939*)>::__call<void, , 0ul>(std::tuple<>&&, std::_Index_tuple<0ul>) /usr/lib/gcc/x86_64-redhat-linux/6.3.1/../../../../include/c++/6.3.1/functional:933:11 > #30 0x7f77d3cec6ed in void std::_Bind<std::_Mem_fn<void (testFdo78939::*)()> (testFdo78939*)>::operator()<, void>() /usr/lib/gcc/x86_64-redhat-linux/6.3.1/../../../../include/c++/6.3.1/functional:991:17 > #31 0x7f7808612258 in CppUnit::TestCaseMethodFunctor::operator()() const workdir/UnpackedTarball/cppunit/src/cppunit/TestCase.cpp:32:5 > #32 0x7f78085e30d5 in CppUnit::ProtectorChain::ProtectFunctor::operator()() const workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:20:25 > #33 0x7f78085e30d5 in CppUnit::ProtectorChain::ProtectFunctor::operator()() const workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:20:25 > #34 0x7f77fc7fe014 in (anonymous namespace)::Prot::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) unotest/source/cpp/unoexceptionprotector/unoexceptionprotector.cxx:63:16 > #35 0x7f78085e30d5 in CppUnit::ProtectorChain::ProtectFunctor::operator()() const workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:20:25 > #36 0x7f780857932d in CppUnit::DefaultProtector::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) workdir/UnpackedTarball/cppunit/src/cppunit/DefaultProtector.cpp:15:12 > #37 0x7f78085e30d5 in CppUnit::ProtectorChain::ProtectFunctor::operator()() const workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:20:25 > #38 0x7f78085dc5fa in CppUnit::ProtectorChain::protect(CppUnit::Functor const&, CppUnit::ProtectorContext const&) workdir/UnpackedTarball/cppunit/src/cppunit/ProtectorChain.cpp:86:18 > #39 0x7f7808674598 in CppUnit::TestResult::protect(CppUnit::Functor const&, CppUnit::Test*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) workdir/UnpackedTarball/cppunit/src/cppunit/TestResult.cpp:182:28 > #40 0x7f7808610859 in CppUnit::TestCase::run(CppUnit::TestResult*) workdir/UnpackedTarball/cppunit/src/cppunit/TestCase.cpp:91:13 > #41 0x7f7808614624 in CppUnit::TestComposite::doRunChildTests(CppUnit::TestResult*) workdir/UnpackedTarball/cppunit/src/cppunit/TestComposite.cpp:64:30 > #42 0x7f780861387c in CppUnit::TestComposite::run(CppUnit::TestResult*) workdir/UnpackedTarball/cppunit/src/cppunit/TestComposite.cpp:23:3 > #43 0x7f7808614624 in CppUnit::TestComposite::doRunChildTests(CppUnit::TestResult*) workdir/UnpackedTarball/cppunit/src/cppunit/TestComposite.cpp:64:30 > #44 0x7f780861387c in CppUnit::TestComposite::run(CppUnit::TestResult*) workdir/UnpackedTarball/cppunit/src/cppunit/TestComposite.cpp:23:3 > #45 0x7f78086a2f5c in CppUnit::TestRunner::WrappingSuite::run(CppUnit::TestResult*) workdir/UnpackedTarball/cppunit/src/cppunit/TestRunner.cpp:47:27 > #46 0x7f780867304e in CppUnit::TestResult::runTest(CppUnit::Test*) workdir/UnpackedTarball/cppunit/src/cppunit/TestResult.cpp:149:9 > #47 0x7f78086a3e7e in CppUnit::TestRunner::run(CppUnit::TestResult&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) workdir/UnpackedTarball/cppunit/src/cppunit/TestRunner.cpp:96:14 > #48 0x532f3d in (anonymous namespace)::ProtectedFixtureFunctor::run() const sal/cppunittester/cppunittester.cxx:316:20 > #49 0x53101c in sal_main() sal/cppunittester/cppunittester.cxx:466:20 > #50 0x530a36 in main sal/cppunittester/cppunittester.cxx:373:1 > #51 0x7f7806bc4400 in __libc_start_main /usr/src/debug/glibc-2.24-59-g86ac4a7/csu/../csu/libc-start.c:289 > #52 0x4385a9 in _start (workdir/LinkTarget/Executable/cppunittester+0x4385a9) Change-Id: I4f32ce04daa61cc05dd6b8ef7c84c238c927056c
2017-05-09Use BOOST_USE_WINDOWS_H to avoid errors when building with clang-clStephan Bergmann
> [build CXX] workdir/UnpackedTarball/boost/libs/locale/src/shared/date_time.cpp [...] > In file included from C:/lo64/core/workdir/UnpackedTarball/boost/libs/locale/src/shared/date_time.cpp:11: > In file included from C:/lo64/core/workdir/UnpackedTarball/boost\boost/thread/mutex.hpp:14: > In file included from C:/lo64/core/workdir/UnpackedTarball/boost\boost/thread/win32/mutex.hpp:9: > In file included from C:/lo64/core/workdir/UnpackedTarball/boost\boost/thread/win32/basic_timed_mutex.hpp:14: > C:/lo64/core/workdir/UnpackedTarball/boost\boost/thread/win32/thread_primitives.hpp(172,55): error: conflicting types for 'CreateMutexA' > __declspec(dllimport) void* __stdcall CreateMutexA(_SECURITY_ATTRIBUTES*,int,char const*); > ^ > C:/PROGRA~2/WI3CF2~1/10/Include/10.0.15063.0/um\synchapi.h(489,1): note: previous declaration is here > CreateMutexA( > ^ [...] Change-Id: I141ea196250dc855c780f237436c0f19f0594cb1
2017-05-02Adapt bin/gen-boost-headers to Clang 5Stephan Bergmann
...since <http://llvm.org/viewvc/llvm-project?view=revision&revision=301647> "Use the -Wunknown-warning-option group for the 'unknown warning group' diagnostic in #pragma diagnostic". * external/boost/include/boost/{locale.hpp,locale/gnu_gettext.hpp} would have been removed by 'make cmd cmd=bin/gen-boost-headers' as they are still unused from c25eee44966703cb27d632bccb39b20978341ffd "build boost::locale library", but there's reportedly a patch in Gerrit to actually use them, so I fixed them manually for now. * The deviating comment style is to keep lines no wider than 80 characters. Change-Id: I64603ae8d8a82781eda46f12c9dd5c68dcf395b9
2017-04-28try without iconv, we probably don't need it in practiceCaolán McNamara
Change-Id: I14782971dd35f8d96f1e9b08fdf060aa917a1e37
2017-04-28build boost::locale libraryCaolán McNamara
Change-Id: I40b89a0df483645fc743fb092d3d39ea682c510c Reviewed-on: https://gerrit.libreoffice.org/37060 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
2017-02-03upload boost 1.63.0David Tardon
Change-Id: I7f896bb9650f68626b4bcfe96c9c41fafeab436a Reviewed-on: https://gerrit.libreoffice.org/33827 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: David Tardon <dtardon@redhat.com>
2017-01-17replace boost::checked_deleter with std::default_deleteJochen Nitschke
and remove all traces of boost/checked_delete.hpp Change-Id: I4486d0e07a7197d75f8739c8c6d79670163eaab2 Reviewed-on: https://gerrit.libreoffice.org/33182 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Jochen Nitschke <j.nitschke+logerrit@ok.de>
2017-01-08external/boost: Silence -fsanitize=nonnull-attributeStephan Bergmann
...as reported e.g. during CppunitTest_sw_odfimport: > /workdir/UnpackedTarball/boost/boost/circular_buffer/debug.hpp:37:17: runtime error: null pointer passed as argument 1, which is declared to never be null > /usr/include/string.h:62:62: note: nonnull attribute specified here > #0 0x2b24bc0e6389 in void boost::cb_details::do_fill_uninitialized_memory<SwFrameFormat*>(SwFrameFormat**, unsigned long) /workdir/UnpackedTarball/boost/boost/circular_buffer/debug.hpp:37:5 > #1 0x2b24bc0e5b48 in boost::circular_buffer<SwFrameFormat*, std::allocator<SwFrameFormat*> >::allocate(unsigned long) /workdir/UnpackedTarball/boost/boost/circular_buffer/base.hpp:2375:9 > #2 0x2b24bc0e545a in boost::circular_buffer<SwFrameFormat*, std::allocator<SwFrameFormat*> >::initialize_buffer(unsigned long) /workdir/UnpackedTarball/boost/boost/circular_buffer/base.hpp:2482:18 > #3 0x2b24bc0cfaa7 in boost::circular_buffer<SwFrameFormat*, std::allocator<SwFrameFormat*> >::circular_buffer(unsigned long, std::allocator<SwFrameFormat*> const&) /workdir/UnpackedTarball/boost/boost/circular_buffer/base.hpp:1036:9 > #4 0x2b24bc068cd7 in AppendAllObjs(SwFrameFormats const*, SwFrame const*) /sw/source/core/layout/frmtool.cxx:1100:44 ... Change-Id: Id96a6127990548ab0ae2e8a02b7bec2d61094c37
2016-08-29boost: update generated wrapper headersMichael Stahl
... and delete recently added clang Wundef patch Change-Id: I83af127fe98ff23feb944eb68dbd2334d23564c8
2016-08-29Fixup clang Werror boost build on MacOSXJan-Marek Glogowski
Fixes the Boost::Tuple header used by Boost::MultiIndex. Change-Id: I98eb047e699e04934ee09323633e28cecef84e70
2016-05-31Drop warning-related parts of external/boost/clang-cl.patch.0Stephan Bergmann
...which are no longer necessary after e5c6574f5df8d2a5914beb03dce604beb8d62ee8 "boost: warning-patch-ectomy" Change-Id: I4e79a4c7b9b20f9b49dc05e6a86831837aa4bbf0
2016-05-30boost: restore boost.gcc47679.patchMichael Stahl
One of the tinderboxes fails with mysterious warning: include/tools/gen.hxx:418:36: error: '*((void*)& aViewportExt +16)' may be used uninitialized in this function [-Werror=maybe-uninitialized] nBottom = rSize.Height() ? nTop+rSize.Height()-1 : RECT_EMPTY; Change-Id: I62bf99d1a623ba4bd9d7db5fe049366d0f20e26f
2016-05-30boost: warning-patch-ectomyMichael Stahl
Upstream maintainers, with few exceptions, generally don't care about warnings in boost headers, hence we re-base our warning fix patches on every upgrade, which is a pointless exercise in frustration. Most of the patches are for GCC/Clang warnings, where we could use -isystem to suppress the warnings (with corresponding hacks in the build system, because -isystem also disables dependency generation) - but clang-cl does not support -isystem. So generate a bunch of wrapper headers into external/boost/include, that disable all known warnings and use #include_next to get the real boost header. This allows us to get rid of most of the existing patches. There is however a bug in GCC that preprocessor warnings like -Wundef cannot be disabled with a #pragma, so those patches cannot be removed. https://gcc.gnu.org/bugzilla/show_bug.cgi?id=53431 Change-Id: I2992bf4a463015f1140489df867bd80757f84541 Reviewed-on: https://gerrit.libreoffice.org/25563 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Michael Stahl <mstahl@redhat.com>
2016-05-30boost: remove boost.std.move.patchMichael Stahl
Apparently required only on obsolete/unsupported Mac OS X versions. Change-Id: I68540e3ac0d6830ed42854def0367a17f15feacd
2016-05-26boost: remove patches for headers that are no longer usedMichael Stahl
The following libraries are mostly or completely unused on current master, in MSVC 2013 and GCC builds: * crc * dynamic_bitset * ptr_container * random * signal2 That's much less removal than we hoped, but it turns out that a lot of boost headers include other boost headers, so removing includes in LO code only goes this far. Also move one property_tree hunk from a wrong patch file to more approriate one. Change-Id: I6ad3a5987b025a57ca92402cca9a0e1f659128e9 Reviewed-on: https://gerrit.libreoffice.org/25513 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Michael Stahl <mstahl@redhat.com>
2016-05-12have another stab at fixing the -Wimplicit-fallthrough in json_parserCaolán McNamara
without triggering a -Wimplicit-fallthrough in unreachable code Change-Id: I971272ffcf87d7224265a9a3ae87fcf8129c7a7a
2016-05-12have a stab at fixing the -Wimplicit-fallthrough in json_parserCaolán McNamara
Change-Id: I2e6909cd804159a3540de4eb8ddecc1bd9131457
2016-05-11Missing includeStephan Bergmann
Change-Id: If7abf2ad3ac738e7103491e38a0e53ba424f5550
2016-05-10Note pull request for boost patchStephan Bergmann
Change-Id: I92a98bb196c9f6e7dfdca7008a34fb4fd3e10799
2016-05-10Use BOOST_FALLTHROUGH in external codeStephan Bergmann
...in preparation of enabling Clang's -Wimplicit-fallthrough Change-Id: If64f9b18591b3cd2528adc6c2d6011d509d4afcd
2016-03-08Boost.Thread appears to be unneededDavid Tardon
Change-Id: I62ec68ed2ff67ac62137de2fcd7106ada90721ae