'robots' content='index, nofollow'/>
summaryrefslogtreecommitdiff
path: root/external/boost/include
AgeCommit message (Collapse)Author
2024-02-15regenerate boost headersNoel Grandin
to reduce noise when building in debug mode with gcc (Ubuntu 13.2.0-4ubuntu3) 13.2.0 e.g. In file included from /home/noel/libo2/workdir/UnpackedTarball/boost/boost/property_tree/json_parser.hpp:15, from /home/noel/libo2/external/boost/include/boost/property_tree/json_parser.hpp:30, from /home/noel/libo2/sw/inc/pch/precompiled_sw.hxx:61: /home/noel/libo2/workdir/UnpackedTarball/boost/boost/property_tree/json_parser/error.hpp: In instantiation of ‘boost::wrapexcept<E>::wrapexcept(const E&, const boost::source_location&) [with E = boost::property_tree::json_parser::json_parser_error]’: /home/noel/libo2/workdir/UnpackedTarball/boost/boost/throw_exception.hpp:171:11: required from ‘void boost::throw_exception(const E&, const source_location&) [with E = property_tree::json_parser::json_parser_error]’ /home/noel/libo2/workdir/UnpackedTarball/boost/boost/property_tree/json_parser/detail/write.hpp:159:13: required from ‘void boost::property_tree::json_parser::write_json_internal(std::basic_ostream<typename Ptree::key_type::value_type>&, const Ptree&, const std::string&, bool) [with Ptree = boost::property_tree::basic_ptree<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> >; typename Ptree::key_type::value_type = char; typename Ptree::key_type = std::__cxx11::basic_string<char>; typename Ptree::key_type::value_type = char; typename Ptree::key_type = std::__cxx11::basic_string<char>; std::string = std::__cxx11::basic_string<char>]’ /home/noel/libo2/workdir/UnpackedTarball/boost/boost/property_tree/json_parser.hpp:99:28: required from ‘void boost::property_tree::json_parser::write_json(std::basic_ostream<typename Ptree::key_type::value_type>&, const Ptree&, bool) [with Ptree = boost::property_tree::basic_ptree<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> >; typename Ptree::key_type::value_type = char; typename Ptree::key_type = std::__cxx11::basic_string<char>; typename Ptree::key_type::value_type = char; typename Ptree::key_type = std::__cxx11::basic_string<char>]’ /home/noel/libo2/sw/source/core/crsr/viscrs.cxx:129:37: required from here /home/noel/libo2/workdir/UnpackedTarball/boost/boost/property_tree/json_parser/error.hpp:20:11: warning: implicitly-declared ‘boost::property_tree::file_parser_error::file_parser_error(const boost::property_tree::file_parser_error&)’ is deprecated [-Wdeprecated-copy-dtor] 20 | class json_parser_error: public file_parser_error Change-Id: I1dd49af4d8c573a07b34d3216a36f283aaafa106 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/163372 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-11-24Drop redundant -Wnon-virtual-dtorStephan Bergmann
Inspired by <https://gcc.gnu.org/pipermail/gcc-patches/2022-November/607102.html> "[PATCH] doc: -Wdelete-non-virtual-dtor supersedes -Wnon-virtual-dtor", drop explicitly enabling -Wnon-virtual-dtor in favor of -Wdelete-non-virtual-dtor, which is already enabled by -Wall. (-Wdelete-non-virtual-dtor first appeared in Clang 3.0, <https://github.com/llvm/llvm-project/commit/8bd428574c717e68a8274739d2ba0f6dc16fd0fb> "Add new warning that warns when invoking 'delete' on a polymorphic, non-final, class without a virtual destructor", and GCC 4.7, <https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=014ab419efc12a59efebd2720d79e1c055675c85> "invoke.texi: Document -Wdelete-non-virtual-dtor. [...]") Dropping the explicit setting of -Wnon-virtual-dtor (and nowhere setting it implicitly via -Weffc++) means we can get rid of lots of places that either set -Wno-non-virtual-dtor or use some pragma to ignore -Wnon-virtual-dtor. (In various places across extensions/source/activex/ and winaccessibility/, the commits f26996bd3398afa789a5491968244563ccf70908 "Silence -Werror,-Wnon-virtual-dtor in generated so_activex.h (clang-cl)" and c6086ca6535692496fbd718d174d8eb5a5dea7c7 "Silence -Werror,-Wnon-virtual-dtor in generated UAccCOM.h (clang-cl)" had singled out some includes to wrap them in pragmas. Now that those pragmas are gone again, move those includes back to where they had been prior to being singled out. And the -Wno-non-virtual-dtor in external/firebird/macos-arm64.patch.0 appeared first in ccd0e5f445d4a7d0e7aca6c23c02c61bf14510b2 "Make firebird build for macOS on arm64", which, though it doesn't state it explicitly, apparently created that patch's builds/posix/prefix.darwin_arm64 as a copy of firebird's already existing builds/posix/prefix.* files, which routinely include that warning option too, so keep it there too even if it is probably irrelevant throughout.) Change-Id: I7e4fa9f2c07e267b2ed15607905027f6b78142f3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/143182 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2022-10-25tdf#126788 speed up export to pdf of complex table documentNoel Grandin
We can avoid an allocation in the common case, shaves 10% off the --convert-to pdf time. Change-Id: I9263d3dc8fd6a1d74cd063ba13e2e0160f7a9dd6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/141769 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2022-08-19Upgrade external/boost to latest Boost 1.80.0Stephan Bergmann
<https://dev-www.libreoffice.org/src/boost_1_80_0.tar.xz> has been generated (on Fedora 36) with > $ wget https://boostorg.jfrog.io/artifactory/main/release/1.80.0/source/boost_1_80_0.tar.bz2 > $ printf '1e19565d82e43bc59209a168f5ac899d3ba471d55c7610c677d4ccf2c9c500c0 boost_1_80_0.tar.bz2' | sha256sum -c # cf. <https://www.boost.org/users/history/version_1_80_0.html> > boost_1_80_0.tar.bz2: OK > $ external/boost/repack_tarball.sh boost_1_80_0.tar.bz2 > Unpacking boost_1_80_0.tar.bz2 ... > Removing unnecessary files ... > Creating boost_1_80_0.tar.xz ... > Cleaning up ... > 322e567e98c466c0aa0e380ed8c647552fe4af48998648428f1b5f0c8eff4666 boost_1_80_0.tar.xz > Done. * In StaticLibrary_boost_filesystem, <https://github.com/boostorg/filesystem/commit/36cf9aaf816a39dce3d32e2bfe09e214d7f3ab64> "Updated protection of remove_all against CVE-2022-21658 on POSIX" had introduced uses of certain POSIX *at functions (like utimensat) conditionally on some new BOOST_FILESYSTEM_HAS_POSIX_AT_APIS, to be discovered by workdir/UnpackedTarball/boost/libs/filesystem/CMakeLists.txt which we don't run. At least AT_NO_AUTOMOUNT, as used in workdir/UnpackedTarball/boost/libs/filesystem/src/operations.cpp, appears to be unavailable on the macOS baseline, but otherwise assume that all that POSIX functionality is available on all other non-Windows baselines and hardcode that in external/boost/StaticLibrary_boost_filesystem.mk. (If it turns out that we need to exclude some more platforms there, we /might/ need to backport <https://github.com/boostorg/filesystem/commit/5864f397ccad30f6e73221b90bdac57a303b9752> "Fixed a missing include on POSIX systems that don't support *at APIs" from the develop branch towards Boost 1.81.) * In StaticLibrary_boost_locale, <https://github.com/boostorg/locale/commit/41868c62a0519799696b544518f1efd831ff71c2> "Support systems without implicit include path" had moved source files around (and then would have failed with > workdir/UnpackedTarball/boost/libs/locale/src/boost/locale/shared/mo_lambda.cpp:7:10: fatal error: 'boost/locale/shared/mo_lambda.hpp' file not found > #include "boost/locale/shared/mo_lambda.hpp" > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ etc. without the additional -I option). * Some Clang builds would have started to fail with > In file included from desktop/qa/unit/desktop-lok-init.cxx:19: > In file included from desktop/inc/lib/init.hxx:20: > In file included from workdir/UnpackedTarball/boost/boost/container/flat_map.hpp:26: > workdir/UnpackedTarball/boost/boost/container/new_allocator.hpp:168:12: error: '__cpp_sized_deallocation' is not defined, evaluates to 0 [-Werror,-Wundef] > # if __cpp_sized_deallocation > ^ so add another external/boost/include/ wrapper. Change-Id: I5e53f7ddab07eadba9bdf653acad571f50517b46 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/138511 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2022-07-14Adapt to new Clang 15 trunk -Wdeprecated-builtinsStephan Bergmann
...<https://github.com/llvm/llvm-project/commit/0b89d1d59f82cf5b45c250cd5c3351e43ce35ef9> "[Sema] Add deprecation warnings for some compiler provided __has_* type traits", which hits in Boost include files, > In file included from libreofficekit/qa/tilebench/tilebench.cxx:27: > In file included from external/boost/include/boost/property_tree/json_parser.hpp:31: > In file included from workdir/UnpackedTarball/boost/boost/property_tree/json_parser.hpp:14: > In file included from external/boost/include/boost/property_tree/ptree.hpp:31: > In file included from workdir/UnpackedTarball/boost/boost/property_tree/ptree.hpp:16: > In file included from workdir/UnpackedTarball/boost/boost/property_tree/string_path.hpp:15: > In file included from workdir/UnpackedTarball/boost/boost/property_tree/id_translator.hpp:16: > In file included from external/boost/include/boost/optional.hpp:31: > In file included from workdir/UnpackedTarball/boost/boost/optional.hpp:15: > In file included from workdir/UnpackedTarball/boost/boost/optional/optional.hpp:42: > workdir/UnpackedTarball/boost/boost/type_traits/has_nothrow_constructor.hpp:27:84: error: builtin __has_nothrow_constructor is deprecated; use __is_nothrow_constructible instead [-Werror,-Wdeprecated-builtins] > template <class T> struct has_nothrow_constructor : public integral_constant<bool, BOOST_HAS_NOTHROW_CONSTRUCTOR(T)>{}; > ^ > workdir/UnpackedTarball/boost/boost/type_traits/intrinsics.hpp:199:48: note: expanded from macro 'BOOST_HAS_NOTHROW_CONSTRUCTOR' > # define BOOST_HAS_NOTHROW_CONSTRUCTOR(T) (__has_nothrow_constructor(T) && is_default_constructible<T>::value) > ^ etc. Change-Id: I08376710e25013b44279532d6e5fc256ed95cb76 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/137046 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2021-08-12disable gcc warnings when using boost::make_sharedNoel Grandin
Change-Id: I02a54d9ab9c1faf36ce0b03b6ca42b3708f02667 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/120394 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2021-08-10Clean up remaining uses of boost::logic::triboolStephan Bergmann
obFitShapeToText and obRelFlipV can just as well be modelled with std::optional<bool>, and obFlipH and obFlipV apparently only need two states anyway (as for a boost::logic::tribool x, bool(x == true) is true iff x has the value true) Change-Id: Ic35e33ffa4ee30d1c2cdf9f8d4aa3bae29ece2af Reviewed-on: https://gerrit.libreoffice.org/c/core/+/120281 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2021-01-06Upgrade external/boost to latest Boost 1.75.0Stephan Bergmann
* <https://dev-www.libreoffice.org/src/boost_1_75_0.tar.xz> has been generated (on Fedora 33) with > $ wget https://dl.bintray.com/boostorg/release/1.75.0/source/boost_1_75_0.tar.bz2 > $ printf '953db31e016db7bb207f11432bef7df100516eeb746843fa0486a222e3fd49cb boost_1_75_0.tar.bz2' | sha256sum -c # cf. <https://www.boost.org/users/history/version_1_75_0.html> > boost_1_75_0.tar.bz2: OK > $ external/boost/repack_tarball.sh boost_1_75_0.tar.bz2 > Unpacking boost_1_75_0.tar.bz2 ... > Removing unnecessary files ... > Creating boost_1_75_0.tar.xz ... > Cleaning up ... > cc378a036a1cfd3af289f3da24deeb8dba7a729f61ab104c7b018a622e22d21b boost_1_75_0.tar.xz > Done. * external/boost/StaticLibrary_boost_date_time.mk: Even though date_generators.cpp and greg_weekday.cpp are still present, their function definitions are now covered by inline function definitions in include files, > workdir/UnpackedTarball/boost/libs/date_time/src/gregorian/greg_weekday.cpp:23:17: error: redefinition of 'as_short_string' > greg_weekday::as_short_string() const > ^ > workdir/UnpackedTarball/boost/boost/date_time/gregorian/greg_weekday.hpp:52:17: note: previous definition is here > const char* as_short_string() const > ^ etc. and > workdir/UnpackedTarball/boost/libs/date_time/src/gregorian/date_generators.cpp:23:36: error: redefinition of 'nth_as_str' > BOOST_DATE_TIME_DECL const char* nth_as_str(int ele) > ^ > workdir/UnpackedTarball/boost/boost/date_time/date_generators.hpp:157:22: note: previous definition is here > inline const char* nth_as_str(int ele) > ^ * external/boost/StaticLibrary_boost_filesystem.mk now lacked various symbols, as seen when linking external/liborcus' orcus-parser library: > "boost::filesystem::emit_error(int, boost::system::error_code*, char const*)", referenced from: [...] > "boost::filesystem::emit_error(int, boost::filesystem::path const&, boost::system::error_code*, char const*)", referenced from: [...] > "boost::filesystem::emit_error(int, boost::filesystem::path const&, boost::filesystem::path const&, boost::system::error_code*, char const*)", referenced from: [...] > "boost::filesystem::filesystem_error::filesystem_error(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, boost::filesystem::path const&, boost::system::error_code)", referenced from: [...] > "boost::filesystem::filesystem_error::filesystem_error(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, boost::filesystem::path const&, boost::filesystem::path const&, boost::system::error_code)", referenced from: [...] > "boost::filesystem::filesystem_error::~filesystem_error()", referenced from: [...] > "boost::filesystem::detail::dir_itr_close(void*&, void*&)", referenced from: [...] > "boost::filesystem::detail::directory_iterator_construct(boost::filesystem::directory_iterator&, boost::filesystem::path const&, unsigned int, boost::system::error_code*)", referenced from: [...] > "boost::filesystem::detail::directory_iterator_increment(boost::filesystem::directory_iterator&, boost::system::error_code*)", referenced from: [...] > "typeinfo for boost::filesystem::filesystem_error", referenced from: [...] * No longer sure why external/boost/gcc9.patch.0 from e7b8728f5c0292a6c6a18e76220b1769ecf25aa3 "external/boost: silence -Werror=deprecated-copy (GCC trunk towards GCC 9)" was necessary at all, in addition to that commit's > #pragma GCC diagnostic ignored "-Wdeprecated-copy" changes, but at least a build with recent GCC 11 trunk appears to work fine now without it. (And the patch would no longer have applied as-is.) * The dropped patches in external/boost/c++20-allocator.patch.0 and external/boost/clang-cl.patch.0 would no longer have applied as-is, but also appear not to be needed any more. * external/boost/include/boost/property_tree/ptree_fwd.hpp became necessary to silence > In file included from workdir/UnpackedTarball/boost/boost/property_tree/ptree_fwd.hpp:16, > from libreofficekit/qa/gtktiledviewer/gtv-helpers.hxx:21, > from libreofficekit/qa/gtktiledviewer/gtv-application-window.cxx:19: > workdir/UnpackedTarball/boost/boost/throw_exception.hpp: In instantiation of ‘boost::wrapexcept<E>::wrapexcept(const E&, const boost::source_location&) [with E = boost::property_tree::ptree_bad_data]’: > workdir/UnpackedTarball/boost/boost/throw_exception.hpp:171:11: required from ‘void boost::throw_exception(const E&, const boost::source_location&) [with E = boost::property_tree::ptree_bad_data]’ > workdir/UnpackedTarball/boost/boost/property_tree/detail/ptree_implementation.hpp:826:13: required from ‘void boost::property_tree::basic_ptree<Key, Data, KeyCompare>::put_value(const Type&, Translator) [with Type = char [8]; Translator = boost::property_tree::stream_translator<char, std::char_traits<char>, std::allocator<char>, char [8]>; Key = std::__cxx11::basic_string<char>; Data = std::__cxx11::basic_string<char>; KeyCompare = std::less<std::__cxx11::basic_string<char> >]’ > workdir/UnpackedTarball/boost/boost/property_tree/detail/ptree_implementation.hpp:845:34: required from ‘boost::property_tree::basic_ptree<K, D, C>& boost::property_tree::basic_ptree<Key, Data, KeyCompare>::put(const path_type&, const Type&, Translator) [with Type = char [8]; Translator = boost::property_tree::stream_translator<char, std::char_traits<char>, std::allocator<char>, char [8]>; Key = std::__cxx11::basic_string<char>; Data = std::__cxx11::basic_string<char>; KeyCompare = std::less<std::__cxx11::basic_string<char> >; boost::property_tree::basic_ptree<Key, Data, KeyCompare>::path_type = boost::property_tree::string_path<std::__cxx11::basic_string<char>, boost::property_tree::id_translator<std::__cxx11::basic_string<char> > >]’ > workdir/UnpackedTarball/boost/boost/property_tree/detail/ptree_implementation.hpp:859:19: required from ‘boost::property_tree::basic_ptree<K, D, C>& boost::property_tree::basic_ptree<Key, Data, KeyCompare>::put(const path_type&, const Type&) [with Type = char [8]; Key = std::__cxx11::basic_string<char>; Data = std::__cxx11::basic_string<char>; KeyCompare = std::less<std::__cxx11::basic_string<char> >; boost::property_tree::basic_ptree<Key, Data, KeyCompare>::path_type = boost::property_tree::string_path<std::__cxx11::basic_string<char>, boost::property_tree::id_translator<std::__cxx11::basic_string<char> > >]’ > libreofficekit/qa/gtktiledviewer/gtv-application-window.cxx:300:103: required from here > workdir/UnpackedTarball/boost/boost/throw_exception.hpp:134:82: error: implicitly-declared ‘boost::property_tree::ptree_bad_data::ptree_bad_data(const boost::property_tree::ptree_bad_data&)’ is deprecated [-Werror=deprecated-copy-dtor] > 134 | explicit wrapexcept( E const & e, boost::source_location const & loc ): E( e ) > | ^ > In file included from workdir/UnpackedTarball/boost/boost/property_tree/exceptions.hpp:84, > from workdir/UnpackedTarball/boost/boost/property_tree/string_path.hpp:16, > from workdir/UnpackedTarball/boost/boost/property_tree/ptree.hpp:16, > from external/boost/include/boost/property_tree/ptree.hpp:30, > from workdir/UnpackedTarball/boost/boost/property_tree/json_parser.hpp:14, > from external/boost/include/boost/property_tree/json_parser.hpp:30, > from libreofficekit/qa/gtktiledviewer/gtv-application-window.cxx:26: > workdir/UnpackedTarball/boost/boost/property_tree/detail/exception_implementation.hpp:51:12: note: because ‘boost::property_tree::ptree_bad_data’ has user-provided ‘virtual boost::property_tree::ptree_bad_data::~ptree_bad_data()’ > 51 | inline ptree_bad_data::~ptree_bad_data() throw() > | ^~~~~~~~~~~~~~ etc. Change-Id: I36fcd04ca6f109910761a5802535a18cfb17ddd9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/108878 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-07-22Silence GCC 11 trunk -Werror=nonnull in external/boostStephan Bergmann
...like > In file included from workdir/UnpackedTarball/boost/boost/concept/assert.hpp:35, > from workdir/UnpackedTarball/boost/boost/concept_check.hpp:20, > from workdir/UnpackedTarball/boost/boost/range/concepts.hpp:19, > from workdir/UnpackedTarball/boost/boost/range/size_type.hpp:20, > from workdir/UnpackedTarball/boost/boost/range/size.hpp:21, > from workdir/UnpackedTarball/boost/boost/range/functions.hpp:20, > from workdir/UnpackedTarball/boost/boost/range/iterator_range_core.hpp:38, > from workdir/UnpackedTarball/boost/boost/range/iterator_range.hpp:13, > from external/boost/include/boost/range/iterator_range.hpp:29, > from workdir/UnpackedTarball/boost/boost/range/as_literal.hpp:22, > from workdir/UnpackedTarball/boost/boost/algorithm/string/trim.hpp:19, > from workdir/UnpackedTarball/boost/boost/algorithm/string.hpp:19, > from external/boost/include/boost/algorithm/string.hpp:29, > from sal/cppunittester/cppunittester.cxx:61: > workdir/UnpackedTarball/boost/boost/concept/detail/general.hpp: In instantiation of ‘static void boost::concepts::constraint<Model>::failed() [with Model = boost::algorithm::FinderConcept<boost::algorithm::detail::token_finderF<boost::algorithm::detail::is_any_ofF<char> >, const char*>]’: > workdir/UnpackedTarball/boost/boost/algorithm/string/iter_find.hpp:81:13: required from ‘SequenceSequenceT& boost::algorithm::iter_split(SequenceSequenceT&, RangeT&&, FinderT) [with SequenceSequenceT = std::__debug::vector<std::__cxx11::basic_string<char> >; RangeT = const char*&; FinderT = boost::algorithm::detail::token_finderF<boost::algorithm::detail::is_any_ofF<char> >]’ > workdir/UnpackedTarball/boost/boost/algorithm/string/split.hpp:158:50: required from ‘SequenceSequenceT& boost::algorithm::split(SequenceSequenceT&, RangeT&&, PredicateT, boost::algorithm::token_compress_mode_type) [with SequenceSequenceT = std::__debug::vector<std::__cxx11::basic_string<char> >; RangeT = const char*&; PredicateT = boost::algorithm::detail::is_any_ofF<char>]’ > sal/cppunittester/cppunittester.cxx:303:71: required from here > workdir/UnpackedTarball/boost/boost/concept/detail/general.hpp:47:52: error: ‘this’ pointer null [-Werror=nonnull] > 47 | static void failed() { ((Model*)0)->constraints(); } > | ~~~~~~~~~~~~~~~~~~~~~~~~^~ Change-Id: Ia22b5d510ba41bea138dfcc8d8e0b9eb1e9ad41c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/99217 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>