11d654788908a30ea4f7481f8474c334df83ae32
100
Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
11d6547889 |
Handle missing default values in JS UNO structs
Signed-off-by: Stephan Bergmann <stephan.bergmann@collabora.com> Change-Id: I63b589645a8c1efc95b6fb023931c45b1d08b65e Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/7624 Reviewed-by: Michael Stahl <michael.stahl@collabora.com> Tested-by: Jenkins CPCI <releng@collaboraoffice.com> (cherry picked from commit 0e55d63d948f177f3b3dabf459000b576e169815) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/208737 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org> |
||
|
|
427f2f79e9 |
external/boost: Silence new Clang 24 trunk -Werror,-Wunused-template
as seen e.g. at > In file included from engine/cppuhelper/source/defaultbootstrap.cxx:27: > In file included from engine/cppuhelper/source/servicemanager.hxx:35: > In file included from engine/external/boost/include/boost/container/small_vector.hpp:31: > In file included from engine/workdir/UnpackedTarball/boost/boost/container/small_vector.hpp:27: > In file included from engine/workdir/UnpackedTarball/boost/boost/container/vector.hpp:61: > In file included from engine/workdir/UnpackedTarball/boost/boost/move/algo/adaptive_merge.hpp:16: > engine/workdir/UnpackedTarball/boost/boost/move/algo/detail/adaptive_sort_merge.hpp:261:17: error: unused function template 'needed_keys_count' [-Werror,-Wunused-template] > 261 | static SizeType needed_keys_count(SizeType n_block_a, SizeType n_block_b) > | ^~~~~~~~~~~~~~~~~ and > In file included from engine/vcl/source/outdev/eps.cxx:22: > In file included from engine/include/vcl/metaact.hxx:45: > In file included from engine/workdir/UnpackedTarball/boost/boost/container/vector.hpp:61: > In file included from engine/workdir/UnpackedTarball/boost/boost/move/algo/adaptive_merge.hpp:16: > engine/workdir/UnpackedTarball/boost/boost/move/algo/detail/adaptive_sort_merge.hpp:261:17: error: unused function template 'needed_keys_count' [-Werror,-Wunused-template] > 261 | static SizeType needed_keys_count(SizeType n_block_a, SizeType n_block_b) > | ^~~~~~~~~~~~~~~~~ Signed-off-by: Stephan Bergmann <stephan.bergmann@collabora.com> Change-Id: I1c81650c82df717317846769ea3ac016d9a14652 Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/7281 Reviewed-by: Noel Grandin <noel.grandin@collabora.com> Tested-by: Jenkins CPCI <releng@collaboraoffice.com> (cherry picked from commit fd3a8cc0417525806d45522fc6752c6678b2d433) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/208736 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org> |
||
|
|
dff972be18 |
Clang 23 trunk supports -std=c++2d now
...since <https://github.com/llvm/llvm-project/commit/1381ef49fc5cc8c5bd76aa9b86fdf2507312d78d> "[Clang] Add flags and lang option for C++2d (#203992)" Signed-off-by: Stephan Bergmann <stephan.bergmann@collabora.com> Change-Id: I51ba2a7265663ced6a7dc2e9c9420b8c7b8a851f Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/7334 Reviewed-by: Michael Stahl <michael.stahl@collabora.com> Tested-by: Jenkins CPCI <releng@collaboraoffice.com> (cherry picked from commit d239d80aef979e2371c33c49061b153d9f4c72d3) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/208734 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org> |
||
|
|
4bfd2fe88c |
external/skia: Support --with-latest-c++ with GCC 17 trunk and Clang 24 trunk
...in the same vein as a015d0798cf846d10b712ac80451ba9678ff61d8 "Add support for C++29 to --with-latest-c++" and d239d80aef979e2371c33c49061b153d9f4c72d3 "Clang 23 trunk supports -std=c++2d now" Signed-off-by: Stephan Bergmann <stephan.bergmann@collabora.com> Change-Id: I26add201dab5f4329379e45cbc2965cec0ee7f3f Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/7400 Reviewed-by: Michael Stahl <michael.stahl@collabora.com> Tested-by: Jenkins CPCI <releng@collaboraoffice.com> (cherry picked from commit 811e5fe3b3738c1d1aca48e8d6c3955d78c76e9d) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/208733 Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org> Tested-by: Jenkins |
||
|
|
5e058924d9 |
Fix use-after-free when a deferred fill-bitmap link's host dies
...as seen in CppunitTest_sw_tiledrendering2 since d8a09afac6108d7ba23b253ed83b564af8a31c55 "register writer XATTR_FILLBITMAP URLs as SvBaseLinks via SwFormat and SwContentNode", > ==2824606==ERROR: AddressSanitizer: heap-use-after-free on address 0x7cc203206790 at pc 0x7bb1cfa02361 bp 0x7ffdaad4bb30 sp 0x7ffdaad4bb28 > READ of size 8 at 0x7cc203206790 thread T0 > #0 in __gnu_cxx::__normal_iterator<SvtBroadcaster* const*, std::__cxx1998::vector<SvtBroadcaster*, std::allocator<SvtBroadcaster*>>>::__normal_iterator(SvtBroadcaster* const* const&) at /home/sberg/gcc/inst/lib/gcc/x86_64-pc-linux-gnu/17.0.0/../../../../include/c++/17.0.0/bits/stl_iterator.h:1059:20 > #1 in std::__cxx1998::vector<SvtBroadcaster*, std::allocator<SvtBroadcaster*>>::begin() const at /home/sberg/gcc/inst/lib/gcc/x86_64-pc-linux-gnu/17.0.0/../../../../include/c++/17.0.0/bits/stl_vector.h:1051:16 > #2 in std::__debug::vector<SvtBroadcaster*, std::allocator<SvtBroadcaster*>>::begin() const at /home/sberg/gcc/inst/lib/gcc/x86_64-pc-linux-gnu/17.0.0/../../../../include/c++/17.0.0/debug/vector:355:38 > #3 in __gnu_debug::_Safe_iterator<__gnu_cxx::__normal_iterator<SvtBroadcaster* const*, std::__cxx1998::vector<SvtBroadcaster*, std::allocator<SvtBroadcaster*>>>, std::__debug::vector<SvtBroadcaster*, std::allocator<SvtBroadcaster*>>, std::random_access_iterator_tag> o3tl::sorted_vector<SvtBroadcaster*, std::less<SvtBroadcaster*>, o3tl::find_unique>::find<SvtBroadcaster*>(SvtBroadcaster* const&) const at engine/include/o3tl/sorted_vector.hxx:220:69 > #4 in SvtListener::BroadcasterDying(SvtBroadcaster&) at engine/svl/source/notify/listener.cxx:58:58 > #5 in SvtBroadcaster::~SvtBroadcaster() at engine/svl/source/notify/broadcast.cxx:203:25 > #6 in sw::BroadcasterMixin::~BroadcasterMixin() at engine/sw/inc/calbck.hxx:102:24 > #7 in sw::BroadcastingModify::~BroadcastingModify() at engine/sw/inc/calbck.hxx:245:59 > #8 in SwContentNode::~SwContentNode() at engine/sw/source/core/docnode/node.cxx:1115:1 > #9 in SwTextNode::~SwTextNode() at engine/sw/source/core/txtnode/ndtxt.cxx:298:1 > #10 in SwTextNode::~SwTextNode() at engine/sw/source/core/txtnode/ndtxt.cxx:296:1 > #11 in SwNodes::RemoveNode(o3tl::strong_int<int, Tag_SwNodeOffset>, o3tl::strong_int<int, Tag_SwNodeOffset>, bool) at engine/sw/source/core/docnode/nodes.cxx:2417:13 > #12 in SwNodes::DelNodes(SwNodeIndex const&, o3tl::strong_int<int, Tag_SwNodeOffset>) at engine/sw/source/core/docnode/nodes.cxx:1417:17 > #13 in SwDoc::~SwDoc() at engine/sw/source/core/doc/docnew.cxx:514:15 > #14 in SwDoc::release() at engine/sw/source/core/doc/doc.cxx:137:9 > #15 in rtl::Reference<SwDoc>::clear() at engine/include/rtl/ref.hxx:181:19 > #16 in SwDocShell::RemoveLink() at engine/sw/source/uibase/app/docshini.cxx:451:16 > #17 in SwDocShell::~SwDocShell() at engine/sw/source/uibase/app/docshini.cxx:379:5 > #18 in SwDocShell::~SwDocShell() at engine/sw/source/uibase/app/docshini.cxx:369:1 > #19 in cppu::OWeakObject::release() at engine/cppuhelper/source/weak.cxx:230:9 > #20 in rtl::Reference<SfxObjectShell>::~Reference() at engine/include/rtl/ref.hxx:116:22 > #21 in IMPL_SfxBaseModel_DataContainer::~IMPL_SfxBaseModel_DataContainer() at engine/sfx2/source/doc/sfxbasemodel.cxx:267:5 > #22 in void std::destroy_at<IMPL_SfxBaseModel_DataContainer>(IMPL_SfxBaseModel_DataContainer*) at /home/sberg/gcc/inst/lib/gcc/x86_64-pc-linux-gnu/17.0.0/../../../../include/c++/17.0.0/bits/stl_construct.h:88:15 > #23 in void std::_Destroy<IMPL_SfxBaseModel_DataContainer>(IMPL_SfxBaseModel_DataContainer*) at /home/sberg/gcc/inst/lib/gcc/x86_64-pc-linux-gnu/17.0.0/../../../../include/c++/17.0.0/bits/stl_construct.h:164:7 > #24 in void std::allocator_traits<std::allocator<void>>::destroy<IMPL_SfxBaseModel_DataContainer>(std::allocator<void>&, IMPL_SfxBaseModel_DataContainer*) at /home/sberg/gcc/inst/lib/gcc/x86_64-pc-linux-gnu/17.0.0/../../../../include/c++/17.0.0/bits/alloc_traits.h:863:4 > #25 in std::_Sp_counted_ptr_inplace<IMPL_SfxBaseModel_DataContainer, std::allocator<void>, (__gnu_cxx::_Lock_policy)2>::_M_dispose() at /home/sberg/gcc/inst/lib/gcc/x86_64-pc-linux-gnu/17.0.0/../../../../include/c++/17.0.0/bits/shared_ptr_base.h:650:2 > #26 in std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release() at /home/sberg/gcc/inst/lib/gcc/x86_64-pc-linux-gnu/17.0.0/../../../../include/c++/17.0.0/bits/shared_ptr_base.h:423:8 > #27 in std::__shared_count<(__gnu_cxx::_Lock_policy)2>::~__shared_count() at /home/sberg/gcc/inst/lib/gcc/x86_64-pc-linux-gnu/17.0.0/../../../../include/c++/17.0.0/bits/shared_ptr_base.h:1100:11 > #28 in std::__shared_ptr<IMPL_SfxBaseModel_DataContainer, (__gnu_cxx::_Lock_policy)2>::~__shared_ptr() at /home/sberg/gcc/inst/lib/gcc/x86_64-pc-linux-gnu/17.0.0/../../../../include/c++/17.0.0/bits/shared_ptr_base.h:1574:31 > #29 in std::__shared_ptr<IMPL_SfxBaseModel_DataContainer, (__gnu_cxx::_Lock_policy)2>::reset() at /home/sberg/gcc/inst/lib/gcc/x86_64-pc-linux-gnu/17.0.0/../../../../include/c++/17.0.0/bits/shared_ptr_base.h:1692:9 > #30 in SfxBaseModel::dispose() at engine/sfx2/source/doc/sfxbasemodel.cxx:801:13 > #31 in SwXTextDocument::dispose() at engine/sw/source/uibase/uno/unotxdoc.cxx:581:19 > #32 in SfxBaseModel::close(unsigned char) at engine/sfx2/source/doc/sfxbasemodel.cxx:1543:5 > #33 in SwXTextDocument::close(unsigned char) at engine/sw/source/uibase/uno/unotxdoc.cxx:594:19 > #34 in SfxBaseModel::dispose() at engine/sfx2/source/doc/sfxbasemodel.cxx:752:13 > #35 in SwXTextDocument::dispose() at engine/sw/source/uibase/uno/unotxdoc.cxx:581:19 > #36 in UnoApiTest::tearDown() at engine/test/source/unoapi_test.cxx:66:22 > #37 in SwTiledRenderingTest::tearDown() at engine/sw/qa/unit/swtiledrenderingtest.cxx:63:22 > > 0x7cc203206790 is located 144 bytes inside of 200-byte region [0x7cc203206700,0x7cc2032067c8) > freed by thread T0 here: > #0 in operator delete(void*, unsigned long) at /home/sberg/github.com/llvm/llvm-project/compiler-rt/lib/asan/asan_new_delete.cpp:187:3 > #1 in (anonymous namespace)::SwHostFillBitmapLink<SwContentNode>::~SwHostFillBitmapLink() at engine/sw/source/core/doc/FillBitmapLinkTracker.cxx:54:7 > #2 in SvRefBase::ReleaseRef() at engine/include/tools/ref.hxx:161:29 > #3 in tools::SvRef<sfx2::SvBaseLink>::~SvRef() at engine/include/tools/ref.hxx:57:36 > #4 in (anonymous namespace)::SwHostFillBitmapLink<SwContentNode>::Notify(SfxHint const&) at engine/sw/source/core/doc/FillBitmapLinkTracker.cxx:95:5 > #5 in SvtBroadcaster::Broadcast(SfxHint const&) at engine/svl/source/notify/broadcast.cxx:220:25 > #6 in SvtBroadcaster::~SvtBroadcaster() at engine/svl/source/notify/broadcast.cxx:188:5 SwHostFillBitmapLink is both an sfx2::SvBaseLink (held by the tracker map and the LinkManager) and an SvtListener on its host node's broadcaster. On the host's SfxHintId::Dying it asked the tracker to drop it, which erased the map entry and released its last reference, so the link freed itself while still in the broadcaster's listener list. SvtBroadcaster::~SvtBroadcaster then ran its BroadcasterDying pass over that list and called into the freed link. So park a removed link's reference in m_aPendingRelease and free it on a later call, once the host's Dying broadcast that removed it is over, so the link outlives the broadcaster's destructor. (Fixing it in SvtBroadcaster instead, recording a self-removing listener in maDestructedListeners under mbDisposing so the destructor's pass skips it, would be exactly the tarpit that the sequence |
||
|
|
0a654a90d2 |
external/harfbuzz: Silence new Clang 24 trunk -Werror,-Wunused-template
> In file included from ../src/hb-number.cc:26: > In file included from ../src/hb.hh:560: > ../src/hb-meta.hh:131:3: error: unused function template 'operator()' [-Werror,-Wunused-template] > 131 | operator () (T&& v) const HB_AUTO_RETURN (std::forward<T> (v)) > | ^~~~~~~~ etc. Signed-off-by: Stephan Bergmann <stephan.bergmann@collabora.com> Change-Id: I69284c010e4970db55ecb6e1507186648b8b5271 Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/7282 Tested-by: Jenkins CPCI <releng@collaboraoffice.com> Reviewed-by: Noel Grandin <noel.grandin@collabora.com> (cherry picked from commit 6b03159992ce09f1b63a799ca99476c048758054) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/208278 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org> |
||
|
|
727d62727e |
Fix --with-latest-c++ build against libstdc++ 16
(e.g., libstdc++-devel-16.1.1-2.fc44.x86_64) after f320d95d89ecc9bea81182795969f83b05ec903c "Avoid deprecated std::filesystem::path::string", > In file included from engine/codemaker/source/netmaker/netproduce.cxx:19: > engine/codemaker/source/netmaker/csharpfile.hxx: In member function ‘std::string CSharpFile::getPath() const’: > engine/codemaker/source/netmaker/csharpfile.hxx:31:27: error: ‘const class std::filesystem::__cxx11::path’ has no member named ‘display_string’ > 31 | return m_filePath.display_string(); > | ^~~~~~~~~~~~~~ etc. Signed-off-by: Stephan Bergmann <stephan.bergmann@collabora.com> Change-Id: Ib51f9e0d0e1f902726f0d68a11fe28110388ef6a Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/6554 Tested-by: Jenkins CPCI <releng@collaboraoffice.com> Reviewed-by: Michael Stahl <michael.stahl@collabora.com> (cherry picked from commit 63e9ab3b87cc5a793c8733e375dc86d99419a88d) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/208277 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org> |
||
|
|
67bf3bc2cc |
Drop the long-dead SCP2_URE_DL name-construction macros
Signed-off-by: Stephan Bergmann <stephan.bergmann@collabora.com> Change-Id: I30c4e7c00a14da9a1ffce0b257a1686ac8ebe79a Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/4072 Reviewed-by: Michael Stahl <michael.stahl@collabora.com> Tested-by: Jenkins CPCI <releng@collaboraoffice.com> (cherry picked from commit 43c99b68075a4f71d12fde826debd24ad5e61c60) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/208013 Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org> Tested-by: Jenkins |
||
|
|
1df02d7afa |
Fix heap-buffer-overflow in formula::FormulaTokenArray::Add
ScTokenArray::Clone and CloneValue have always allocated the parse-token array pCode to hold exactly nLen entries, but unlike Assign they left mbFinalized at false. And FormulaTokenArray::Add assumes that a non-finalized pCode has room for at least MAX_FAST_TOKENS entries. Which now started to break with a21f6a3a0eae72fef90576d249d96dc00beeb2c5 "sc: round-trip dynamic-array masters and @ through ODF", > ==611420==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x7befc900e420 at pc 0x7b8f762c6d53 bp 0x7ffdf0776f90 sp 0x7ffdf0776f88 > WRITE of size 8 at 0x7befc900e420 thread T0 > #0 in formula::FormulaTokenArray::Add(formula::FormulaToken*) at engine/formula/source/core/api/token.cxx:772:25 > #1 in ScTokenArray::AddRawToken(ScRawToken const&) at engine/sc/source/core/tool/token.cxx:2004:12 > #2 in ScTokenArray::AddOpCode(OpCode) at engine/sc/source/core/tool/token.cxx:2224:12 > #3 in (anonymous namespace)::prependImplicitIntersection(ScTokenArray&) at engine/sc/source/core/data/formulacell.cxx:1654:49 > #4 in ScFormulaCell::ResolveImplicitIntersection(ScTokenArray&, ScDocument&, ScAddress const&) at engine/sc/source/core/data/formulacell.cxx:2716:9 > #5 in ImportExcel::Formula(XclAddress const&, unsigned short, unsigned short, double, bool) at engine/sc/source/filter/excel/excform.cxx:127:17 > #6 in ImportExcel::Formula25() at engine/sc/source/filter/excel/excform.cxx:72:5 > #7 in ImportExcel8::Read() at engine/sc/source/filter/excel/read.cxx:1184:49 > #8 in ScFormatFilterPluginImpl::ScImportExcel(SfxMedium&, ScDocument*, EXCIMPFORMAT) at engine/sc/source/filter/excel/excel.cxx:255:35 > #9 in ScDocShell::ConvertFrom(SfxMedium&) at engine/sc/source/ui/docshell/docsh.cxx:1329:52 > #10 in SfxObjectShell::DoLoad(SfxMedium*) at engine/sfx2/source/doc/objstor.cxx:777:27 > #11 in ScFilterTestBase::loadDoc(rtl::OUString const&, rtl::OUString const&, rtl::OUString const&, rtl::OUString const&, SfxFilterFlags, SotClipboardFormatId, int) at engine/sc/qa/unit/helper/scfiltertestbase.cxx:40:21 > #12 in ScFiltersTest::load(rtl::OUString const&, rtl::OUString const&, rtl::OUString const&, SfxFilterFlags, SotClipboardFormatId, unsigned int) at engine/sc/qa/unit/filters-test.cxx:68:31 > #13 in non-virtual thunk to ScFiltersTest::load(rtl::OUString const&, rtl::OUString const&, rtl::OUString const&, SfxFilterFlags, SotClipboardFormatId, unsigned int) at engine/sc/qa/unit/filters-test.cxx > #14 in test::FiltersTest::recursiveScan(test::filterStatus, rtl::OUString const&, rtl::OUString const&, rtl::OUString const&, SfxFilterFlags, SotClipboardFormatId, unsigned int, bool) at engine/unotest/source/cpp/filters-test.cxx:132:20 > #15 in test::FiltersTest::testDir(rtl::OUString const&, std::basic_string_view<char16_t, std::char_traits<char16_t>>, rtl::OUString const&, SfxFilterFlags, SotClipboardFormatId, unsigned int, bool) at engine/unotest/source/cpp/filters-test.cxx:157:5 > #16 in ScFiltersTest::testCVEs() at engine/sc/qa/unit/filters-test.cxx:91:5 > > 0x7befc900e420 is located 0 bytes after 64-byte region [0x7befc900e3e0,0x7befc900e420) > allocated by thread T0 here: > #0 in operator new[](unsigned long) at /home/sberg/github.com/llvm/llvm-project/compiler-rt/lib/asan/asan_new_delete.cpp:111:37 > #1 in ScTokenArray::Clone() const at engine/sc/source/core/tool/token.cxx:1901:24 > #2 in ImportExcel::Formula(XclAddress const&, unsigned short, unsigned short, double, bool) at engine/sc/source/filter/excel/excform.cxx:126:70 > #3 in ImportExcel::Formula25() at engine/sc/source/filter/excel/excform.cxx:72:5 Signed-off-by: Stephan Bergmann <stephan.bergmann@collabora.com> Change-Id: I2ce67e89c24fee8e1bdfa7baf40ce02783637254 Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/4962 Tested-by: Jenkins CPCI <releng@collaboraoffice.com> Reviewed-by: Tomaž Vajngerl <tomaz.vajngerl@collabora.com> (cherry picked from commit e4161389322e3f096e3b1537058a94e0636eaeaa) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/207469 Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org> Tested-by: Jenkins |
||
|
|
d862077a2e |
external/afdko: Fix some errors
...hitting at least with recent Clang 23 trunk and --with-latest-c++,
> engine/workdir/UnpackedTarball/afdko/c/shared/absfont/absfont_dump.cpp:555:19: error: invalid comparison of floating-point type 'float' with enumeration type '(unnamed enum at
engine/workdir/UnpackedTarball/afdko/c/shared/include/absfont.h:541:1)'
> 555 | if (width == ABF_EDGE_HINT_LO) {
> | ~~~~~ ^ ~~~~~~~~~~~~~~~~
etc. and
> .../include/c++/17.0.0/bits/unique_ptr.h:90:16: error: invalid application of 'sizeof' to an incomplete type 'VarModel'
> 90 | static_assert(sizeof(_Tp)>0,
> | ^~~~~~~~~~~
> [...]
> engine/workdir/UnpackedTarball/afdko/c/shared/include/varsupport.h:466:5: note: in defaulted default constructor for 'std::vector<std::unique_ptr<VarModel>>' first required here
> 466 | itemVariationStore() {}
> | ^
> engine/workdir/UnpackedTarball/afdko/c/shared/include/varsupport.h:424:7: note: forward declaration of 'VarModel'
> 424 | class VarModel;
presumably new with 6c40019917bd6e88f6b54d0a2d53d64729c64166 "afdko:
upgrade to 5.0.1"
Signed-off-by: Stephan Bergmann <stephan.bergmann@collabora.com>
Change-Id: I7f7de8233fcd9a2447d0080af3ff14b0bdf69a10
Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/4879
Reviewed-by: Michael Stahl <michael.stahl@collabora.com>
Tested-by: Jenkins CPCI <releng@collaboraoffice.com>
(cherry picked from commit 7bc7ade726e4d50c1589247123e8104783a5e604)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/207287
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Tested-by: Jenkins
|
||
|
|
a3a4e2b88b |
external/afdko: Fix references to temporaries
> engine/workdir/UnpackedTarball/afdko/c/addfeatures/hotconv/FeatCtx.cpp: In member function ‘const GPat::ClassRec& FeatCtx::lookupGlyphClass(const std::string&)’:
> engine/workdir/UnpackedTarball/afdko/c/addfeatures/hotconv/FeatCtx.cpp:494:22: error: returning reference to temporary [-Wreturn-local-addr]
> 494 | return GPat::ClassRec {};
> | ^~~~~~~~~~~
and
> engine/workdir/UnpackedTarball/afdko/c/addfeatures/hotconv/GPOS.cpp: In member function ‘GPat::ClassRec& GPOS::getCR(uint32_t, int)’:
> engine/workdir/UnpackedTarball/afdko/c/addfeatures/hotconv/GPOS.cpp:1002:12: error: cannot bind non-const lvalue reference of type ‘GPat::ClassRec&’ to an rvalue of type ‘GPat::ClassRec’
> 1002 | return cr;
> | ^~
presumably new with 6c40019917bd6e88f6b54d0a2d53d64729c64166 "afdko:
upgrade to
5.0.1"
Signed-off-by: Stephan Bergmann <stephan.bergmann@collabora.com>
Change-Id: Id8d7f8c924fd270631b6d9a0c97f39a4f8826c74
Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/4837
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Tested-by: Jenkins CPCI <releng@collaboraoffice.com>
(cherry picked from commit 95050b2a21d0625d97024cc041bd3dd9837ca190)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/207286
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
|
||
|
|
a3550ef87f |
Add support for C++29 to --with-latest-c++
...now that at least GCC 17 trunk supports it since <https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=0c5c6249a2e9a75d2e7d1c6c434487c8dc077130> "c++, libcpp: Add -std=c++2[9d] and -std=gnu++2[9d] options". (But we need two TODOs until Clang and Meson support it, too.) Signed-off-by: Stephan Bergmann <stephan.bergmann@collabora.com> Change-Id: Idff90c0a9068072cdc60c1cf88998bbb39ef54b4 Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/4973 Tested-by: Jenkins CPCI <releng@collaboraoffice.com> Reviewed-by: Michael Stahl <michael.stahl@collabora.com> (cherry picked from commit a015d0798cf846d10b712ac80451ba9678ff61d8) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/207166 Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org> Tested-by: Jenkins |
||
|
|
da446e66eb |
Pass --enable-debug into external/cppunittest
Signed-off-by: Stephan Bergmann <stephan.bergmann@collabora.com> Change-Id: I531f4e7cdb461dd40be0d06e88ffa9c677820446 Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/4813 Reviewed-by: Michael Stahl <michael.stahl@collabora.com> Tested-by: Jenkins CPCI <releng@collaboraoffice.com> (cherry picked from commit d44f929cb922ca9e2e6c2503429ca4587255a325) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/207170 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org> |
||
|
|
6c22a1050e |
This bogus -Warray-bounds still hits with GCC 17
Signed-off-by: Stephan Bergmann <stephan.bergmann@collabora.com> Change-Id: I986acdaee26da6b684afc51955ab658a0674d309 Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/4853 Tested-by: Jenkins CPCI <releng@collaboraoffice.com> Reviewed-by: Michael Stahl <michael.stahl@collabora.com> (cherry picked from commit 78330ecdc4f447a47cde4afe64e55dfab061ef27) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/207169 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org> |
||
|
|
60fdd8f4f8 |
Silence some more spurious -Werror=array-bounds=
seen at least with GCC 16 trunk and --enable-optimized,
> In file included from /usr/include/c++/16/bits/char_traits.h:59,
> from /usr/include/c++/16/ios:44,
> from /usr/include/c++/16/bits/ostream.h:43,
> from /usr/include/c++/16/ostream:42,
> from engine/include/rtl/ustring.hxx:30,
> from engine/include/vcl/ctrl.hxx:23,
> from engine/include/vcl/InterimItemWindow.hxx:13,
> from engine/include/svtools/scrolladaptor.hxx:24,
> from engine/dbaccess/source/ui/inc/JoinTableView.hxx:21,
> from engine/dbaccess/source/ui/inc/QueryTableView.hxx:21,
> from engine/dbaccess/source/ui/querydesign/QueryTableView.cxx:20:
> In function ‘constexpr void std::destroy_at(_Tp*) [with _Tp = dbaui::OQueryTableWindowData]’,
> inlined from ‘constexpr void std::_Destroy(_Tp*) [with _Tp = dbaui::OQueryTableWindowData]’ at /usr/include/c++/16/bits/stl_construct.h:164:22,
> inlined from ‘static constexpr void std::allocator_traits<std::allocator<void> >::destroy(allocator_type&, _Up*) [with _Up = dbaui::OQueryTableWindowData]’ at /usr/include/c++/16/bits/alloc_traits.h:859:17,
> inlined from ‘void std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::_M_dispose() [with _Tp = dbaui::OQueryTableWindowData; _Alloc = std::allocator<void>; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:682:35,
> inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:423:18,
> inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:392:5,
> inlined from ‘std::__shared_count<_Lp>::~__shared_count() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1136:21,
> inlined from ‘std::__shared_ptr<_Tp, _Lp>::~__shared_ptr() [with _Tp = dbaui::OQueryTableConnectionData; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1610:7,
> inlined from ‘std::shared_ptr<dbaui::OQueryTableConnectionData>::~shared_ptr()’ at /usr/include/c++/16/bits/shared_ptr.h:175:11,
> inlined from ‘void {anonymous}::addConnections(dbaui::OQueryTableView*, const dbaui::OQueryTableWindow&, const dbaui::OQueryTableWindow&, const com::sun::star::uno::Reference<com::sun::star::container::XNameAccess>&)’ at engine/dbaccess/source/ui/querydesign/QueryTableView.cxx:174:5:
> /usr/include/c++/16/bits/stl_construct.h:88:25: error: array subscript ‘dbaui::OQueryTableWindowData[0]’ is partly outside array bounds of ‘unsigned char [104]’ [-Werror=array-bounds=]
> 88 | __location->~_Tp();
> | ~~~~~~~~~~~~~~~~^~
> In file included from /usr/include/c++/16/x86_64-redhat-linux/bits/c++allocator.h:33,
> from /usr/include/c++/16/bits/allocator.h:46,
> from /usr/include/c++/16/string:46,
> from /usr/include/c++/16/bits/locale_classes.h:43,
> from /usr/include/c++/16/bits/ios_base.h:43,
> from /usr/include/c++/16/ios:46:
> In member function ‘constexpr _Tp* std::__new_allocator<_Tp>::allocate(size_type, const void*) [with _Tp = std::_Sp_counted_ptr_inplace<dbaui::OQueryTableConnectionData, std::allocator<void>, __gnu_cxx::_S_atomic>]’,
> inlined from ‘constexpr _Tp* std::allocator< <template-parameter-1-1> >::allocate(std::size_t) [with _Tp = std::_Sp_counted_ptr_inplace<dbaui::OQueryTableConnectionData, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at /usr/include/c++/16/bits/allocator.h:206:40,
> inlined from ‘static constexpr _Tp* std::allocator_traits<std::allocator<_CharT> >::allocate(allocator_type&, size_type) [with _Tp = std::_Sp_counted_ptr_inplace<dbaui::OQueryTableConnectionData, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at /usr/include/c++/16/bits/alloc_traits.h:638:28,
> inlined from ‘std::__allocated_ptr<_Alloc> std::__allocate_guarded(_Alloc&) [with _Alloc = allocator<_Sp_counted_ptr_inplace<dbaui::OQueryTableConnectionData, allocator<void>, __gnu_cxx::_S_atomic> >]’ at /usr/include/c++/16/bits/allocated_ptr.h:103:69,
> inlined from ‘std::__shared_count<_Lp>::__shared_count(_Tp*&, std::_Sp_alloc_shared_tag<_Alloc>, _Args&& ...) [with _Tp = dbaui::OQueryTableConnectionData; _Alloc = std::allocator<void>; _Args = {const std::shared_ptr<dbaui::OTableWindowData>&, const std::shared_ptr<dbaui::OTableWindowData>&}; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1034:9,
> inlined from ‘std::__shared_ptr<_Tp, _Lp>::__shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {const std::shared_ptr<dbaui::OTableWindowData>&, const std::shared_ptr<dbaui::OTableWindowData>&}; _Tp = dbaui::OQueryTableConnectionData; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1812:14,
> inlined from ‘std::shared_ptr<_Tp>::shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {const std::shared_ptr<dbaui::OTableWindowData>&, const std::shared_ptr<dbaui::OTableWindowData>&}; _Tp = dbaui::OQueryTableConnectionData]’ at /usr/include/c++/16/bits/shared_ptr.h:463:59,
> inlined from ‘std::shared_ptr<std::_NonArray<_Tp> > std::make_shared(_Args&& ...) [with _Tp = dbaui::OQueryTableConnectionData; _Args = {const shared_ptr<dbaui::OTableWindowData>&, const shared_ptr<dbaui::OTableWindowData>&}]’ at /usr/include/c++/16/bits/shared_ptr.h:1066:39,
> inlined from ‘void {anonymous}::addConnections(dbaui::OQueryTableView*, const dbaui::OQueryTableWindow&, const dbaui::OQueryTableWindow&, const com::sun::star::uno::Reference<com::sun::star::container::XNameAccess>&)’ at engine/dbaccess/source/ui/querydesign/QueryTableView.cxx:127:111:
> /usr/include/c++/16/bits/new_allocator.h:162:75: note: at offset 16 into object of size 104 allocated by ‘operator new’
> 162 | return static_cast<_Tp*>(_GLIBCXX_OPERATOR_NEW(__n * sizeof(_Tp)));
> | ^
> In function ‘constexpr void std::destroy_at(_Tp*) [with _Tp = dbaui::OQueryTableWindowData]’,
> inlined from ‘constexpr void std::_Destroy(_Tp*) [with _Tp = dbaui::OQueryTableWindowData]’ at /usr/include/c++/16/bits/stl_construct.h:164:22,
> inlined from ‘static constexpr void std::allocator_traits<std::allocator<void> >::destroy(allocator_type&, _Up*) [with _Up = dbaui::OQueryTableWindowData]’ at /usr/include/c++/16/bits/alloc_traits.h:859:17,
> inlined from ‘void std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::_M_dispose() [with _Tp = dbaui::OQueryTableWindowData; _Alloc = std::allocator<void>; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:682:35,
> inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:423:18,
> inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:392:5,
> inlined from ‘std::__shared_count<_Lp>::~__shared_count() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1136:21,
> inlined from ‘std::__shared_ptr<_Tp, _Lp>::~__shared_ptr() [with _Tp = dbaui::OQueryTableConnectionData; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1610:7,
> inlined from ‘std::shared_ptr<dbaui::OQueryTableConnectionData>::~shared_ptr()’ at /usr/include/c++/16/bits/shared_ptr.h:175:11,
> inlined from ‘virtual void dbaui::OQueryTableView::AddConnection(const dbaui::OJoinExchangeData&, const dbaui::OJoinExchangeData&)’ at engine/dbaccess/source/ui/querydesign/QueryTableView.cxx:558:5:
> /usr/include/c++/16/bits/stl_construct.h:88:25: error: array subscript ‘dbaui::OQueryTableWindowData[0]’ is partly outside array bounds of ‘unsigned char [104]’ [-Werror=array-bounds=]
> 88 | __location->~_Tp();
> | ~~~~~~~~~~~~~~~~^~
> In member function ‘constexpr _Tp* std::__new_allocator<_Tp>::allocate(size_type, const void*) [with _Tp = std::_Sp_counted_ptr_inplace<dbaui::OQueryTableConnectionData, std::allocator<void>, __gnu_cxx::_S_atomic>]’,
> inlined from ‘constexpr _Tp* std::allocator< <template-parameter-1-1> >::allocate(std::size_t) [with _Tp = std::_Sp_counted_ptr_inplace<dbaui::OQueryTableConnectionData, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at /usr/include/c++/16/bits/allocator.h:206:40,
> inlined from ‘static constexpr _Tp* std::allocator_traits<std::allocator<_CharT> >::allocate(allocator_type&, size_type) [with _Tp = std::_Sp_counted_ptr_inplace<dbaui::OQueryTableConnectionData, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at /usr/include/c++/16/bits/alloc_traits.h:638:28,
> inlined from ‘std::__allocated_ptr<_Alloc> std::__allocate_guarded(_Alloc&) [with _Alloc = allocator<_Sp_counted_ptr_inplace<dbaui::OQueryTableConnectionData, allocator<void>, __gnu_cxx::_S_atomic> >]’ at /usr/include/c++/16/bits/allocated_ptr.h:103:69,
> inlined from ‘std::__shared_count<_Lp>::__shared_count(_Tp*&, std::_Sp_alloc_shared_tag<_Alloc>, _Args&& ...) [with _Tp = dbaui::OQueryTableConnectionData; _Alloc = std::allocator<void>; _Args = {const std::shared_ptr<dbaui::OTableWindowData>&, const std::shared_ptr<dbaui::OTableWindowData>&}; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1034:9,
> inlined from ‘std::__shared_ptr<_Tp, _Lp>::__shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {const std::shared_ptr<dbaui::OTableWindowData>&, const std::shared_ptr<dbaui::OTableWindowData>&}; _Tp = dbaui::OQueryTableConnectionData; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1812:14,
> inlined from ‘std::shared_ptr<_Tp>::shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {const std::shared_ptr<dbaui::OTableWindowData>&, const std::shared_ptr<dbaui::OTableWindowData>&}; _Tp = dbaui::OQueryTableConnectionData]’ at /usr/include/c++/16/bits/shared_ptr.h:463:59,
> inlined from ‘std::shared_ptr<std::_NonArray<_Tp> > std::make_shared(_Args&& ...) [with _Tp = dbaui::OQueryTableConnectionData; _Args = {const shared_ptr<dbaui::OTableWindowData>&, const shared_ptr<dbaui::OTableWindowData>&}]’ at /usr/include/c++/16/bits/shared_ptr.h:1066:39,
> inlined from ‘virtual void dbaui::OQueryTableView::AddConnection(const dbaui::OJoinExchangeData&, const dbaui::OJoinExchangeData&)’ at engine/dbaccess/source/ui/querydesign/QueryTableView.cxx:539:121:
> /usr/include/c++/16/bits/new_allocator.h:162:75: note: at offset 16 into object of size 104 allocated by ‘operator new’
> 162 | return static_cast<_Tp*>(_GLIBCXX_OPERATOR_NEW(__n * sizeof(_Tp)));
> | ^
> In file included from /usr/include/c++/16/bits/stl_tempbuf.h:61,
> from /usr/include/c++/16/memory:68,
> from engine/include/dbaccess/dataview.hxx:22,
> from engine/reportdesign/source/ui/inc/DesignView.hxx:22,
> from engine/reportdesign/source/ui/inc/ReportController.hxx:22,
> from engine/reportdesign/source/ui/report/ReportController.cxx:20:
> In function ‘constexpr void std::destroy_at(_Tp*) [with _Tp = rptui::OGroupsSortingDialog]’,
> inlined from ‘constexpr void std::_Destroy(_Tp*) [with _Tp = rptui::OGroupsSortingDialog]’ at /usr/include/c++/16/bits/stl_construct.h:164:22,
> inlined from ‘static constexpr void std::allocator_traits<std::allocator<void> >::destroy(allocator_type&, _Up*) [with _Up = rptui::OGroupsSortingDialog]’ at /usr/include/c++/16/bits/alloc_traits.h:859:17,
> inlined from ‘void std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::_M_dispose() [with _Tp = rptui::OGroupsSortingDialog; _Alloc = std::allocator<void>; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:682:35,
> inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:423:18,
> inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:392:5,
> inlined from ‘std::__shared_count<_Lp>::~__shared_count() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1136:21,
> inlined from ‘std::__shared_ptr<_Tp, _Lp>::~__shared_ptr() [with _Tp = rptui::AnyConverter; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1610:7,
> inlined from ‘std::shared_ptr<rptui::AnyConverter>::~shared_ptr()’ at /usr/include/c++/16/bits/shared_ptr.h:175:11,
> inlined from ‘const com::sun::star::uno::Reference<com::sun::star::sdbc::XRowSet>& rptui::OReportController::getRowSet()’ at engine/reportdesign/source/ui/report/ReportController.cxx:2983:5:
> /usr/include/c++/16/bits/stl_construct.h:88:25: error: array subscript ‘rptui::OGroupsSortingDialog[0]’ is partly outside array bounds of ‘unsigned char [24]’ [-Werror=array-bounds=]
> 88 | __location->~_Tp();
> | ~~~~~~~~~~~~~~~~^~
> In file included from /usr/include/c++/16/x86_64-redhat-linux/bits/c++allocator.h:33,
> from /usr/include/c++/16/bits/allocator.h:46,
> from /usr/include/c++/16/memory:67:
> In member function ‘constexpr _Tp* std::__new_allocator<_Tp>::allocate(size_type, const void*) [with _Tp = std::_Sp_counted_ptr_inplace<rptui::AnyConverter, std::allocator<void>, __gnu_cxx::_S_atomic>]’,
> inlined from ‘constexpr _Tp* std::allocator< <template-parameter-1-1> >::allocate(std::size_t) [with _Tp = std::_Sp_counted_ptr_inplace<rptui::AnyConverter, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at /usr/include/c++/16/bits/allocator.h:206:40,
> inlined from ‘static constexpr _Tp* std::allocator_traits<std::allocator<_Up> >::allocate(allocator_type&, size_type) [with _Tp = std::_Sp_counted_ptr_inplace<rptui::AnyConverter, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at /usr/include/c++/16/bits/alloc_traits.h:638:28,
> inlined from ‘std::__allocated_ptr<_Alloc> std::__allocate_guarded(_Alloc&) [with _Alloc = allocator<_Sp_counted_ptr_inplace<rptui::AnyConverter, allocator<void>, __gnu_cxx::_S_atomic> >]’ at /usr/include/c++/16/bits/allocated_ptr.h:103:69,
> inlined from ‘std::__shared_count<_Lp>::__shared_count(_Tp*&, std::_Sp_alloc_shared_tag<_Alloc>, _Args&& ...) [with _Tp = rptui::AnyConverter; _Alloc = std::allocator<void>; _Args = {}; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1034:9,
> inlined from ‘std::__shared_ptr<_Tp, _Lp>::__shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {}; _Tp = rptui::AnyConverter; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1812:14,
> inlined from ‘std::shared_ptr<_Tp>::shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {}; _Tp = rptui::AnyConverter]’ at /usr/include/c++/16/bits/shared_ptr.h:463:59,
> inlined from ‘std::shared_ptr<std::_NonArray<_Tp> > std::make_shared(_Args&& ...) [with _Tp = rptui::AnyConverter; _Args = {}]’ at /usr/include/c++/16/bits/shared_ptr.h:1066:39,
> inlined from ‘const com::sun::star::uno::Reference<com::sun::star::sdbc::XRowSet>& rptui::OReportController::getRowSet()’ at engine/reportdesign/source/ui/report/ReportController.cxx:2974:60:
> /usr/include/c++/16/bits/new_allocator.h:162:75: note: at offset 16 into object of size 24 allocated by ‘operator new’
> 162 | return static_cast<_Tp*>(_GLIBCXX_OPERATOR_NEW(__n * sizeof(_Tp)));
> | ^
> In file included from /usr/include/c++/16/bits/unordered_map.h:33,
> from /usr/include/c++/16/unordered_map:43,
> from /usr/include/c++/16/functional:80,
> from engine/include/rtl/ref.hxx:27,
> from engine/include/vcl/vclptr.hxx:26,
> from engine/sc/inc/document.hxx:25,
> from engine/sc/source/core/data/document10.cxx:11:
> In destructor ‘std::_Hashtable<_Key, _Value, _Alloc, _ExtractKey, _Equal, _Hash, _RangeHash, _Unused, _RehashPolicy, _Traits>::~_Hashtable() [with _Key = short int; _Value = std::pair<const short int, std::unordered_map<short int, sc::ColumnBlockPosition> >; _Alloc = std::allocator<std::pair<const short int, std::unordered_map<short int, sc::ColumnBlockPosition> > >; _ExtractKey = std::__detail::_Select1st; _Equal = std::equal_to<short int>; _Hash = std::hash<short int>; _RangeHash = std::__detail::_Mod_range_hashing; _Unused = std::__detail::_Default_ranged_hash; _RehashPolicy = std::__detail::_Prime_rehash_policy; _Traits = std::__detail::_Hashtable_traits<false, false, true>]’,
> inlined from ‘std::unordered_map<short int, std::unordered_map<short int, sc::ColumnBlockPosition> >::~unordered_map()’ at /usr/include/c++/16/bits/unordered_map.h:112:11,
> inlined from ‘sc::ColumnBlockPositionSet::~ColumnBlockPositionSet()’ at engine/sc/inc/mtvelements.hxx:179:7,
> inlined from ‘constexpr void std::destroy_at(_Tp*) [with _Tp = sc::ColumnBlockPositionSet]’ at /usr/include/c++/16/bits/stl_construct.h:88:18,
> inlined from ‘constexpr void std::_Destroy(_Tp*) [with _Tp = sc::ColumnBlockPositionSet]’ at /usr/include/c++/16/bits/stl_construct.h:164:22,
> inlined from ‘static constexpr void std::allocator_traits<std::allocator<void> >::destroy(allocator_type&, _Up*) [with _Up = sc::ColumnBlockPositionSet]’ at /usr/include/c++/16/bits/alloc_traits.h:859:17,
> inlined from ‘void std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::_M_dispose() [with _Tp = sc::ColumnBlockPositionSet; _Alloc = std::allocator<void>; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:682:35,
> inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:423:18,
> inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:392:5,
> inlined from ‘std::__shared_count<_Lp>::~__shared_count() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1136:21,
> inlined from ‘std::__shared_ptr<_Tp, _Lp>::~__shared_ptr() [with _Tp = sc::StartListeningContext; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1610:7,
> inlined from ‘std::shared_ptr<sc::StartListeningContext>::~shared_ptr()’ at /usr/include/c++/16/bits/shared_ptr.h:175:11,
> inlined from ‘{anonymous}::StartNeededListenersHandler::~StartNeededListenersHandler()’ at engine/sc/source/core/data/document10.cxx:552:7,
> inlined from ‘void ScDocument::StartNeededListeners()’ at engine/sc/source/core/data/document10.cxx:574:18:
> /usr/include/c++/16/bits/hashtable.h:1904:5: error: array subscript ‘std::_Hashtable<short int, std::pair<const short int, std::unordered_map<short int, sc::ColumnBlockPosition> >, std::allocator<std::pair<const short int, std::unordered_map<short int, sc::ColumnBlockPosition> > >, std::__detail::_Select1st, std::equal_to<short int>, std::hash<short int>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<false, false, true> >[0]’ is partly outside array bounds of ‘unsigned char [56]’ [-Werror=array-bounds=]
> 1904 | }
> | ^
> In file included from /usr/include/c++/16/x86_64-redhat-linux/bits/c++allocator.h:33,
> from /usr/include/c++/16/bits/allocator.h:46,
> from /usr/include/c++/16/memory:67,
> from engine/sc/source/core/data/document10.cxx:10:
> In member function ‘constexpr _Tp* std::__new_allocator<_Tp>::allocate(size_type, const void*) [with _Tp = std::_Sp_counted_ptr_inplace<sc::StartListeningContext, std::allocator<void>, __gnu_cxx::_S_atomic>]’,
> inlined from ‘constexpr _Tp* std::allocator< <template-parameter-1-1> >::allocate(std::size_t) [with _Tp = std::_Sp_counted_ptr_inplace<sc::StartListeningContext, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at /usr/include/c++/16/bits/allocator.h:206:40,
> inlined from ‘static constexpr _Tp* std::allocator_traits<std::allocator<_Up> >::allocate(allocator_type&, size_type) [with _Tp = std::_Sp_counted_ptr_inplace<sc::StartListeningContext, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at /usr/include/c++/16/bits/alloc_traits.h:638:28,
> inlined from ‘std::__allocated_ptr<_Alloc> std::__allocate_guarded(_Alloc&) [with _Alloc = allocator<_Sp_counted_ptr_inplace<sc::StartListeningContext, allocator<void>, __gnu_cxx::_S_atomic> >]’ at /usr/include/c++/16/bits/allocated_ptr.h:103:69,
> inlined from ‘std::__shared_count<_Lp>::__shared_count(_Tp*&, std::_Sp_alloc_shared_tag<_Alloc>, _Args&& ...) [with _Tp = sc::StartListeningContext; _Alloc = std::allocator<void>; _Args = {ScDocument&}; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1034:9,
> inlined from ‘std::__shared_ptr<_Tp, _Lp>::__shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {ScDocument&}; _Tp = sc::StartListeningContext; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1812:14,
> inlined from ‘std::shared_ptr<_Tp>::shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {ScDocument&}; _Tp = sc::StartListeningContext]’ at /usr/include/c++/16/bits/shared_ptr.h:463:59,
> inlined from ‘std::shared_ptr<std::_NonArray<_Tp> > std::make_shared(_Args&& ...) [with _Tp = sc::StartListeningContext; _Args = {ScDocument&}]’ at /usr/include/c++/16/bits/shared_ptr.h:1066:39,
> inlined from ‘{anonymous}::StartNeededListenersHandler::StartNeededListenersHandler(ScDocument&)’ at engine/sc/source/core/data/document10.cxx:556:64,
> inlined from ‘void ScDocument::StartNeededListeners()’ at engine/sc/source/core/data/document10.cxx:574:82:
> /usr/include/c++/16/bits/new_allocator.h:162:75: note: at offset 24 into object of size 56 allocated by ‘operator new’
> 162 | return static_cast<_Tp*>(_GLIBCXX_OPERATOR_NEW(__n * sizeof(_Tp)));
> | ^
> In file included from engine/sc/inc/column.hxx:28,
> from engine/sc/inc/table.hxx:25,
> from engine/sc/source/core/data/document10.cxx:14:
> In destructor ‘sc::ColumnBlockPositionSet::~ColumnBlockPositionSet()’,
> inlined from ‘constexpr void std::destroy_at(_Tp*) [with _Tp = sc::ColumnBlockPositionSet]’ at /usr/include/c++/16/bits/stl_construct.h:88:18,
> inlined from ‘constexpr void std::_Destroy(_Tp*) [with _Tp = sc::ColumnBlockPositionSet]’ at /usr/include/c++/16/bits/stl_construct.h:164:22,
> inlined from ‘static constexpr void std::allocator_traits<std::allocator<void> >::destroy(allocator_type&, _Up*) [with _Up = sc::ColumnBlockPositionSet]’ at /usr/include/c++/16/bits/alloc_traits.h:859:17,
> inlined from ‘void std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::_M_dispose() [with _Tp = sc::ColumnBlockPositionSet; _Alloc = std::allocator<void>; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:682:35,
> inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:423:18,
> inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:392:5,
> inlined from ‘std::__shared_count<_Lp>::~__shared_count() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1136:21,
> inlined from ‘std::__shared_ptr<_Tp, _Lp>::~__shared_ptr() [with _Tp = sc::StartListeningContext; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1610:7,
> inlined from ‘std::shared_ptr<sc::StartListeningContext>::~shared_ptr()’ at /usr/include/c++/16/bits/shared_ptr.h:175:11,
> inlined from ‘{anonymous}::StartNeededListenersHandler::~StartNeededListenersHandler()’ at engine/sc/source/core/data/document10.cxx:552:7,
> inlined from ‘void ScDocument::StartNeededListeners()’ at engine/sc/source/core/data/document10.cxx:574:18:
> engine/sc/inc/mtvelements.hxx:179:7: error: array subscript ‘sc::ColumnBlockPositionSet[0]’ is partly outside array bounds of ‘unsigned char [56]’ [-Werror=array-bounds=]
> 179 | class ColumnBlockPositionSet
> | ^~~~~~~~~~~~~~~~~~~~~~
> In member function ‘constexpr _Tp* std::__new_allocator<_Tp>::allocate(size_type, const void*) [with _Tp = std::_Sp_counted_ptr_inplace<sc::StartListeningContext, std::allocator<void>, __gnu_cxx::_S_atomic>]’,
> inlined from ‘constexpr _Tp* std::allocator< <template-parameter-1-1> >::allocate(std::size_t) [with _Tp = std::_Sp_counted_ptr_inplace<sc::StartListeningContext, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at /usr/include/c++/16/bits/allocator.h:206:40,
> inlined from ‘static constexpr _Tp* std::allocator_traits<std::allocator<_Up> >::allocate(allocator_type&, size_type) [with _Tp = std::_Sp_counted_ptr_inplace<sc::StartListeningContext, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at /usr/include/c++/16/bits/alloc_traits.h:638:28,
> inlined from ‘std::__allocated_ptr<_Alloc> std::__allocate_guarded(_Alloc&) [with _Alloc = allocator<_Sp_counted_ptr_inplace<sc::StartListeningContext, allocator<void>, __gnu_cxx::_S_atomic> >]’ at /usr/include/c++/16/bits/allocated_ptr.h:103:69,
> inlined from ‘std::__shared_count<_Lp>::__shared_count(_Tp*&, std::_Sp_alloc_shared_tag<_Alloc>, _Args&& ...) [with _Tp = sc::StartListeningContext; _Alloc = std::allocator<void>; _Args = {ScDocument&}; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1034:9,
> inlined from ‘std::__shared_ptr<_Tp, _Lp>::__shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {ScDocument&}; _Tp = sc::StartListeningContext; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1812:14,
> inlined from ‘std::shared_ptr<_Tp>::shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {ScDocument&}; _Tp = sc::StartListeningContext]’ at /usr/include/c++/16/bits/shared_ptr.h:463:59,
> inlined from ‘std::shared_ptr<std::_NonArray<_Tp> > std::make_shared(_Args&& ...) [with _Tp = sc::StartListeningContext; _Args = {ScDocument&}]’ at /usr/include/c++/16/bits/shared_ptr.h:1066:39,
> inlined from ‘{anonymous}::StartNeededListenersHandler::StartNeededListenersHandler(ScDocument&)’ at engine/sc/source/core/data/document10.cxx:556:64,
> inlined from ‘void ScDocument::StartNeededListeners()’ at engine/sc/source/core/data/document10.cxx:574:82:
> /usr/include/c++/16/bits/new_allocator.h:162:75: note: at offset 16 into object of size 56 allocated by ‘operator new’
> 162 | return static_cast<_Tp*>(_GLIBCXX_OPERATOR_NEW(__n * sizeof(_Tp)));
> | ^
> In destructor ‘std::_Hashtable<_Key, _Value, _Alloc, _ExtractKey, _Equal, _Hash, _RangeHash, _Unused, _RehashPolicy, _Traits>::~_Hashtable() [with _Key = short int; _Value = std::pair<const short int, std::unordered_map<short int, sc::ColumnBlockPosition> >; _Alloc = std::allocator<std::pair<const short int, std::unordered_map<short int, sc::ColumnBlockPosition> > >; _ExtractKey = std::__detail::_Select1st; _Equal = std::equal_to<short int>; _Hash = std::hash<short int>; _RangeHash = std::__detail::_Mod_range_hashing; _Unused = std::__detail::_Default_ranged_hash; _RehashPolicy = std::__detail::_Prime_rehash_policy; _Traits = std::__detail::_Hashtable_traits<false, false, true>]’,
> inlined from ‘std::unordered_map<short int, std::unordered_map<short int, sc::ColumnBlockPosition> >::~unordered_map()’ at /usr/include/c++/16/bits/unordered_map.h:112:11,
> inlined from ‘sc::ColumnBlockPositionSet::~ColumnBlockPositionSet()’ at engine/sc/inc/mtvelements.hxx:179:7,
> inlined from ‘constexpr void std::destroy_at(_Tp*) [with _Tp = sc::ColumnBlockPositionSet]’ at /usr/include/c++/16/bits/stl_construct.h:88:18,
> inlined from ‘constexpr void std::_Destroy(_Tp*) [with _Tp = sc::ColumnBlockPositionSet]’ at /usr/include/c++/16/bits/stl_construct.h:164:22,
> inlined from ‘static constexpr void std::allocator_traits<std::allocator<void> >::destroy(allocator_type&, _Up*) [with _Up = sc::ColumnBlockPositionSet]’ at /usr/include/c++/16/bits/alloc_traits.h:859:17,
> inlined from ‘void std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::_M_dispose() [with _Tp = sc::ColumnBlockPositionSet; _Alloc = std::allocator<void>; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:682:35,
> inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:423:18,
> inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:392:5,
> inlined from ‘std::__shared_count<_Lp>::~__shared_count() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1136:21,
> inlined from ‘std::__shared_ptr<_Tp, _Lp>::~__shared_ptr() [with _Tp = sc::StartListeningContext; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1610:7,
> inlined from ‘std::shared_ptr<sc::StartListeningContext>::~shared_ptr()’ at /usr/include/c++/16/bits/shared_ptr.h:175:11,
> inlined from ‘{anonymous}::StartNeededListenersHandler::~StartNeededListenersHandler()’ at engine/sc/source/core/data/document10.cxx:552:7,
> inlined from ‘void ScDocument::StartNeededListeners(const std::shared_ptr<const sc::ColumnSet>&)’ at engine/sc/source/core/data/document10.cxx:579:18:
> /usr/include/c++/16/bits/hashtable.h:1904:5: error: array subscript ‘std::_Hashtable<short int, std::pair<const short int, std::unordered_map<short int, sc::ColumnBlockPosition> >, std::allocator<std::pair<const short int, std::unordered_map<short int, sc::ColumnBlockPosition> > >, std::__detail::_Select1st, std::equal_to<short int>, std::hash<short int>, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<false, false, true> >[0]’ is partly outside array bounds of ‘unsigned char [56]’ [-Werror=array-bounds=]
> 1904 | }
> | ^
> In member function ‘constexpr _Tp* std::__new_allocator<_Tp>::allocate(size_type, const void*) [with _Tp = std::_Sp_counted_ptr_inplace<sc::StartListeningContext, std::allocator<void>, __gnu_cxx::_S_atomic>]’,
> inlined from ‘constexpr _Tp* std::allocator< <template-parameter-1-1> >::allocate(std::size_t) [with _Tp = std::_Sp_counted_ptr_inplace<sc::StartListeningContext, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at /usr/include/c++/16/bits/allocator.h:206:40,
> inlined from ‘static constexpr _Tp* std::allocator_traits<std::allocator<_Up> >::allocate(allocator_type&, size_type) [with _Tp = std::_Sp_counted_ptr_inplace<sc::StartListeningContext, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at /usr/include/c++/16/bits/alloc_traits.h:638:28,
> inlined from ‘std::__allocated_ptr<_Alloc> std::__allocate_guarded(_Alloc&) [with _Alloc = allocator<_Sp_counted_ptr_inplace<sc::StartListeningContext, allocator<void>, __gnu_cxx::_S_atomic> >]’ at /usr/include/c++/16/bits/allocated_ptr.h:103:69,
> inlined from ‘std::__shared_count<_Lp>::__shared_count(_Tp*&, std::_Sp_alloc_shared_tag<_Alloc>, _Args&& ...) [with _Tp = sc::StartListeningContext; _Alloc = std::allocator<void>; _Args = {ScDocument&}; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1034:9,
> inlined from ‘std::__shared_ptr<_Tp, _Lp>::__shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {ScDocument&}; _Tp = sc::StartListeningContext; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1812:14,
> inlined from ‘std::shared_ptr<_Tp>::shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {ScDocument&}; _Tp = sc::StartListeningContext]’ at /usr/include/c++/16/bits/shared_ptr.h:463:59,
> inlined from ‘std::shared_ptr<std::_NonArray<_Tp> > std::make_shared(_Args&& ...) [with _Tp = sc::StartListeningContext; _Args = {ScDocument&}]’ at /usr/include/c++/16/bits/shared_ptr.h:1066:39,
> inlined from ‘{anonymous}::StartNeededListenersHandler::StartNeededListenersHandler(ScDocument&, const std::shared_ptr<const sc::ColumnSet>&)’ at engine/sc/source/core/data/document10.cxx:558:9,
> inlined from ‘void ScDocument::StartNeededListeners(const std::shared_ptr<const sc::ColumnSet>&)’ at engine/sc/source/core/data/document10.cxx:579:92:
> /usr/include/c++/16/bits/new_allocator.h:162:75: note: at offset 24 into object of size 56 allocated by ‘operator new’
> 162 | return static_cast<_Tp*>(_GLIBCXX_OPERATOR_NEW(__n * sizeof(_Tp)));
> | ^
> In destructor ‘sc::ColumnBlockPositionSet::~ColumnBlockPositionSet()’,
> inlined from ‘constexpr void std::destroy_at(_Tp*) [with _Tp = sc::ColumnBlockPositionSet]’ at /usr/include/c++/16/bits/stl_construct.h:88:18,
> inlined from ‘constexpr void std::_Destroy(_Tp*) [with _Tp = sc::ColumnBlockPositionSet]’ at /usr/include/c++/16/bits/stl_construct.h:164:22,
> inlined from ‘static constexpr void std::allocator_traits<std::allocator<void> >::destroy(allocator_type&, _Up*) [with _Up = sc::ColumnBlockPositionSet]’ at /usr/include/c++/16/bits/alloc_traits.h:859:17,
> inlined from ‘void std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::_M_dispose() [with _Tp = sc::ColumnBlockPositionSet; _Alloc = std::allocator<void>; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:682:35,
> inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:423:18,
> inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:392:5,
> inlined from ‘std::__shared_count<_Lp>::~__shared_count() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1136:21,
> inlined from ‘std::__shared_ptr<_Tp, _Lp>::~__shared_ptr() [with _Tp = sc::StartListeningContext; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1610:7,
> inlined from ‘std::shared_ptr<sc::StartListeningContext>::~shared_ptr()’ at /usr/include/c++/16/bits/shared_ptr.h:175:11,
> inlined from ‘{anonymous}::StartNeededListenersHandler::~StartNeededListenersHandler()’ at engine/sc/source/core/data/document10.cxx:552:7,
> inlined from ‘void ScDocument::StartNeededListeners(const std::shared_ptr<const sc::ColumnSet>&)’ at engine/sc/source/core/data/document10.cxx:579:18:
> engine/sc/inc/mtvelements.hxx:179:7: error: array subscript ‘sc::ColumnBlockPositionSet[0]’ is partly outside array bounds of ‘unsigned char [56]’ [-Werror=array-bounds=]
> 179 | class ColumnBlockPositionSet
> | ^~~~~~~~~~~~~~~~~~~~~~
> In member function ‘constexpr _Tp* std::__new_allocator<_Tp>::allocate(size_type, const void*) [with _Tp = std::_Sp_counted_ptr_inplace<sc::StartListeningContext, std::allocator<void>, __gnu_cxx::_S_atomic>]’,
> inlined from ‘constexpr _Tp* std::allocator< <template-parameter-1-1> >::allocate(std::size_t) [with _Tp = std::_Sp_counted_ptr_inplace<sc::StartListeningContext, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at /usr/include/c++/16/bits/allocator.h:206:40,
> inlined from ‘static constexpr _Tp* std::allocator_traits<std::allocator<_Up> >::allocate(allocator_type&, size_type) [with _Tp = std::_Sp_counted_ptr_inplace<sc::StartListeningContext, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at /usr/include/c++/16/bits/alloc_traits.h:638:28,
> inlined from ‘std::__allocated_ptr<_Alloc> std::__allocate_guarded(_Alloc&) [with _Alloc = allocator<_Sp_counted_ptr_inplace<sc::StartListeningContext, allocator<void>, __gnu_cxx::_S_atomic> >]’ at /usr/include/c++/16/bits/allocated_ptr.h:103:69,
> inlined from ‘std::__shared_count<_Lp>::__shared_count(_Tp*&, std::_Sp_alloc_shared_tag<_Alloc>, _Args&& ...) [with _Tp = sc::StartListeningContext; _Alloc = std::allocator<void>; _Args = {ScDocument&}; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1034:9,
> inlined from ‘std::__shared_ptr<_Tp, _Lp>::__shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {ScDocument&}; _Tp = sc::StartListeningContext; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1812:14,
> inlined from ‘std::shared_ptr<_Tp>::shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {ScDocument&}; _Tp = sc::StartListeningContext]’ at /usr/include/c++/16/bits/shared_ptr.h:463:59,
> inlined from ‘std::shared_ptr<std::_NonArray<_Tp> > std::make_shared(_Args&& ...) [with _Tp = sc::StartListeningContext; _Args = {ScDocument&}]’ at /usr/include/c++/16/bits/shared_ptr.h:1066:39,
> inlined from ‘{anonymous}::StartNeededListenersHandler::StartNeededListenersHandler(ScDocument&, const std::shared_ptr<const sc::ColumnSet>&)’ at engine/sc/source/core/data/document10.cxx:558:9,
> inlined from ‘void ScDocument::StartNeededListeners(const std::shared_ptr<const sc::ColumnSet>&)’ at engine/sc/source/core/data/document10.cxx:579:92:
> /usr/include/c++/16/bits/new_allocator.h:162:75: note: at offset 16 into object of size 56 allocated by ‘operator new’
> 162 | return static_cast<_Tp*>(_GLIBCXX_OPERATOR_NEW(__n * sizeof(_Tp)));
> | ^
> In file included from engine/include/vcl/weld.hxx:13,
> from engine/include/sfx2/basedlgs.hxx:25,
> from engine/sw/source/uibase/inc/contentcontroldlg.hxx:21,
> from engine/sw/source/ui/misc/contentcontroldlg.cxx:20:
> In destructor ‘constexpr rtl::OUString::~OUString()’,
> inlined from ‘constexpr SwContentControlListItem::~SwContentControlListItem()’ at engine/sw/inc/formatcontentcontrol.hxx:90:20,
> inlined from ‘constexpr void std::destroy_at(_Tp*) [with _Tp = SwContentControlListItem]’ at /usr/include/c++/16/bits/stl_construct.h:88:18,
> inlined from ‘constexpr void std::_Destroy(_Tp*) [with _Tp = SwContentControlListItem]’ at /usr/include/c++/16/bits/stl_construct.h:164:22,
> inlined from ‘static constexpr void std::allocator_traits<std::allocator<void> >::destroy(allocator_type&, _Up*) [with _Up = SwContentControlListItem]’ at /usr/include/c++/16/bits/alloc_traits.h:859:17,
> inlined from ‘void std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::_M_dispose() [with _Tp = SwContentControlListItem; _Alloc = std::allocator<void>; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:682:35,
> inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:423:18,
> inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:392:5,
> inlined from ‘std::__shared_count<_Lp>::~__shared_count() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1136:21,
> inlined from ‘std::__shared_ptr<_Tp, _Lp>::~__shared_ptr() [with _Tp = SvxCharacterMap; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1610:7,
> inlined from ‘std::shared_ptr<SvxCharacterMap>::~shared_ptr()’ at /usr/include/c++/16/bits/shared_ptr.h:175:11,
> inlined from ‘void SwContentControlDlg::SelectCharHdl(weld::Button&)’ at engine/sw/source/ui/misc/contentcontroldlg.cxx:332:1:
> engine/include/rtl/ustring.hxx:540:32: error: array subscript 3 is outside array bounds of ‘void [24]’ [-Werror=array-bounds=]
> 540 | rtl_uString_release( pData );
> | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~
> In file included from /usr/include/c++/16/bits/shared_ptr.h:53,
> from /usr/include/c++/16/memory:82,
> from engine/include/sfx2/basedlgs.hxx:22:
> In constructor ‘std::__shared_count<_Lp>::__shared_count(_Ptr) [with _Ptr = SvxCharacterMap*; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’,
> inlined from ‘std::__shared_count<_Lp>::__shared_count(_Ptr, std::false_type) [with _Ptr = SvxCharacterMap*; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:992:22,
> inlined from ‘std::__shared_ptr<_Tp, _Lp>::__shared_ptr(_Yp*) [with _Yp = SvxCharacterMap; <template-parameter-2-2> = void; _Tp = SvxCharacterMap; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1555:17,
> inlined from ‘std::shared_ptr<_Tp>::shared_ptr(_Yp*) [with _Yp = SvxCharacterMap; <template-parameter-2-2> = void; _Tp = SvxCharacterMap]’ at /usr/include/c++/16/bits/shared_ptr.h:213:46,
> inlined from ‘void SwContentControlDlg::SelectCharHdl(weld::Button&)’ at engine/sw/source/ui/misc/contentcontroldlg.cxx:305:97:
> /usr/include/c++/16/bits/shared_ptr_base.h:981:23: note: at offset 24 into object of size 24 allocated by ‘operator new’
> 981 | _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> In destructor ‘constexpr rtl::OUString::~OUString()’,
> inlined from ‘constexpr SwContentControlListItem::~SwContentControlListItem()’ at engine/sw/inc/formatcontentcontrol.hxx:90:20,
> inlined from ‘constexpr void std::destroy_at(_Tp*) [with _Tp = SwContentControlListItem]’ at /usr/include/c++/16/bits/stl_construct.h:88:18,
> inlined from ‘constexpr void std::_Destroy(_Tp*) [with _Tp = SwContentControlListItem]’ at /usr/include/c++/16/bits/stl_construct.h:164:22,
> inlined from ‘static constexpr void std::allocator_traits<std::allocator<void> >::destroy(allocator_type&, _Up*) [with _Up = SwContentControlListItem]’ at /usr/include/c++/16/bits/alloc_traits.h:859:17,
> inlined from ‘void std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::_M_dispose() [with _Tp = SwContentControlListItem; _Alloc = std::allocator<void>; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:682:35,
> inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:423:18,
> inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:392:5,
> inlined from ‘std::__shared_count<_Lp>::~__shared_count() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1136:21,
> inlined from ‘std::__shared_ptr<_Tp, _Lp>::~__shared_ptr() [with _Tp = SvxCharacterMap; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1610:7,
> inlined from ‘std::shared_ptr<SvxCharacterMap>::~shared_ptr()’ at /usr/include/c++/16/bits/shared_ptr.h:175:11,
> inlined from ‘void SwContentControlDlg::SelectCharHdl(weld::Button&)’ at engine/sw/source/ui/misc/contentcontroldlg.cxx:332:1:
> engine/include/rtl/ustring.hxx:541:5: error: array subscript 3 is outside array bounds of ‘void [24]’ [-Werror=array-bounds=]
> 541 | }
> | ^
> In constructor ‘std::__shared_count<_Lp>::__shared_count(_Ptr) [with _Ptr = SvxCharacterMap*; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’,
> inlined from ‘std::__shared_count<_Lp>::__shared_count(_Ptr, std::false_type) [with _Ptr = SvxCharacterMap*; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:992:22,
> inlined from ‘std::__shared_ptr<_Tp, _Lp>::__shared_ptr(_Yp*) [with _Yp = SvxCharacterMap; <template-parameter-2-2> = void; _Tp = SvxCharacterMap; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1555:17,
> inlined from ‘std::shared_ptr<_Tp>::shared_ptr(_Yp*) [with _Yp = SvxCharacterMap; <template-parameter-2-2> = void; _Tp = SvxCharacterMap]’ at /usr/include/c++/16/bits/shared_ptr.h:213:46,
> inlined from ‘void SwContentControlDlg::SelectCharHdl(weld::Button&)’ at engine/sw/source/ui/misc/contentcontroldlg.cxx:305:97:
> /usr/include/c++/16/bits/shared_ptr_base.h:981:23: note: at offset 24 into object of size 24 allocated by ‘operator new’
> 981 | _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> In file included from engine/sw/inc/txatbase.hxx:32,
> from engine/sw/inc/textcontentcontrol.hxx:21,
> from engine/sw/source/ui/misc/contentcontroldlg.cxx:29:
> In destructor ‘constexpr SwContentControlListItem::~SwContentControlListItem()’,
> inlined from ‘constexpr void std::destroy_at(_Tp*) [with _Tp = SwContentControlListItem]’ at /usr/include/c++/16/bits/stl_construct.h:88:18,
> inlined from ‘constexpr void std::_Destroy(_Tp*) [with _Tp = SwContentControlListItem]’ at /usr/include/c++/16/bits/stl_construct.h:164:22,
> inlined from ‘static constexpr void std::allocator_traits<std::allocator<void> >::destroy(allocator_type&, _Up*) [with _Up = SwContentControlListItem]’ at /usr/include/c++/16/bits/alloc_traits.h:859:17,
> inlined from ‘void std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::_M_dispose() [with _Tp = SwContentControlListItem; _Alloc = std::allocator<void>; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:682:35,
> inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:423:18,
> inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:392:5,
> inlined from ‘std::__shared_count<_Lp>::~__shared_count() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1136:21,
> inlined from ‘std::__shared_ptr<_Tp, _Lp>::~__shared_ptr() [with _Tp = SvxCharacterMap; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1610:7,
> inlined from ‘std::shared_ptr<SvxCharacterMap>::~shared_ptr()’ at /usr/include/c++/16/bits/shared_ptr.h:175:11,
> inlined from ‘void SwContentControlDlg::SelectCharHdl(weld::Button&)’ at engine/sw/source/ui/misc/contentcontroldlg.cxx:332:1:
> engine/sw/inc/formatcontentcontrol.hxx:90:20: error: array subscript ‘SwContentControlListItem[1]’ is partly outside array bounds of ‘unsigned char [24]’ [-Werror=array-bounds=]
> 90 | class SW_DLLPUBLIC SwContentControlListItem
> | ^~~~~~~~~~~~~~~~~~~~~~~~
> In constructor ‘std::__shared_count<_Lp>::__shared_count(_Ptr) [with _Ptr = SvxCharacterMap*; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’,
> inlined from ‘std::__shared_count<_Lp>::__shared_count(_Ptr, std::false_type) [with _Ptr = SvxCharacterMap*; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:992:22,
> inlined from ‘std::__shared_ptr<_Tp, _Lp>::__shared_ptr(_Yp*) [with _Yp = SvxCharacterMap; <template-parameter-2-2> = void; _Tp = SvxCharacterMap; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1555:17,
> inlined from ‘std::shared_ptr<_Tp>::shared_ptr(_Yp*) [with _Yp = SvxCharacterMap; <template-parameter-2-2> = void; _Tp = SvxCharacterMap]’ at /usr/include/c++/16/bits/shared_ptr.h:213:46,
> inlined from ‘void SwContentControlDlg::SelectCharHdl(weld::Button&)’ at engine/sw/source/ui/misc/contentcontroldlg.cxx:305:97:
> /usr/include/c++/16/bits/shared_ptr_base.h:981:23: note: at offset 16 into object of size 24 allocated by ‘operator new’
> 981 | _M_pi = new _Sp_counted_ptr<_Ptr, _Lp>(__p);
> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Signed-off-by: Stephan Bergmann <stephan.bergmann@collabora.com>
Change-Id: I59db4d41d745ac2bab8b0712fb2145a333fe5f42
Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/1155
Tested-by: Jenkins CPCI <releng@collaboraoffice.com>
Reviewed-by: Michael Stahl <michael.stahl@collabora.com>
(cherry picked from commit 3e690ff02e2de8aeb052bf5a2d1f302134b907b1)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/207168
Tested-by: Xisco Fauli <xiscofauli@libreoffice.org>
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
|
||
|
|
e3c26324dd |
Silence some more bogus -Wrestrict
...that hit at least with GCC 17, > In file included from ~/gcc/inst/include/c++/17.0.0/memory:71, > from engine/include/sfx2/tabdlg.hxx:22, > from engine/chart2/source/controller/dialogs/tp_SeriesToAxis.hxx:21, > from engine/chart2/source/controller/dialogs/tp_SeriesToAxis.cxx:20: > In function ‘constexpr _ForwardIterator std::uninitialized_copy(_InputIterator, _InputIterator, _ForwardIterator) [with _InputIterator = __gnu_cxx::__normal_iterator<const int*, vector<int> >; _ForwardIterator = int*]’, > inlined from ‘constexpr _ForwardIterator std::__uninitialized_copy_a(_InputIterator, _Sentinel, _ForwardIterator, allocator<_Tp>&) [with _InputIterator = __gnu_cxx::__normal_iterator<const int*, vector<int> >; _Sentinel = __gnu_cxx::__normal_iterator<const int*, vector<int> >; _ForwardIterator = int*; _Tp = int]’ at ~/gcc/inst/include/c++/17.0.0/bits/stl_uninitialized.h:659:32, > inlined from ‘constexpr std::vector< <template-parameter-1-1>, <template-parameter-1-2> >::_Alloc_result std::vector< <template-parameter-1-1>, <template-parameter-1-2> >::_M_allocate_and_copy(size_type, _ForwardIterator, _ForwardIterator) [with _ForwardIterator = __gnu_cxx::__normal_iterator<const int*, std::vector<int> >; _Tp = int; _Alloc = std::allocator<int>]’ at ~/gcc/inst/include/c++/17.0.0/bits/stl_vector.h:1957:6, > inlined from ‘constexpr void std::vector< <template-parameter-1-1>, <template-parameter-1-2> >::_M_replace_with(size_type, _ForwardIterator, _ForwardIterator) [with _ForwardIterator = __gnu_cxx::__normal_iterator<const int*, std::vector<int> >; _Tp = int; _Alloc = std::allocator<int>]’ at ~/gcc/inst/include/c++/17.0.0/bits/stl_vector.h:1979:44, > inlined from ‘constexpr std::vector<_Tp, _Alloc>& std::vector< <template-parameter-1-1>, <template-parameter-1-2> >::operator=(const std::vector< <template-parameter-1-1>, <template-parameter-1-2> >&) [with _Tp = int; _Alloc = std::allocator<int>]’ at ~/gcc/inst/include/c++/17.0.0/bits/vector.tcc:236:21, > inlined from ‘virtual void chart::SchOptionTabPage::Reset(const SfxItemSet*)’ at engine/chart2/source/controller/dialogs/tp_SeriesToAxis.cxx:168:69: > ~/gcc/inst/include/c++/17.0.0/bits/stl_uninitialized.h:294:31: error: ‘void* __builtin_memcpy(void*, const void*, long unsigned int)’ accessing between 9223372032559808516 and 9223372036854775804 bytes at offsets 0 and 0 overlaps 9223372028264841225 bytes at offset 4294967291 [-Werror=restrict] > 294 | __builtin_memcpy(std::__niter_base(__result), > | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > 295 | std::__miter_base(std::__niter_base(__first)), > | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > 296 | __n * sizeof(_ValT)); > | ~~~~~~~~~~~~~~~~~~~~ and > In file included from ~/gcc/inst/include/c++/17.0.0/memory:71, > from engine/include/rtl/stringconcat.hxx:20, > from engine/include/rtl/string.hxx:44, > from engine/include/rtl/ustring.hxx:39, > from engine/include/com/sun/star/uno/Type.h:25, > from engine/include/com/sun/star/uno/Sequence.h:25, > from engine/include/com/sun/star/uno/Sequence.hxx:32, > from engine/include/filter/msfilter/mscodec.hxx:22, > from engine/filter/source/msfilter/mscodec.cxx:20: > In function ‘constexpr _ForwardIterator std::uninitialized_copy(_InputIterator, _InputIterator, _ForwardIterator) [with _InputIterator = __gnu_cxx::__normal_iterator<const unsigned char*, vector<unsigned char> >; _ForwardIterator = unsigned char*]’, > inlined from ‘constexpr _ForwardIterator std::__uninitialized_copy_a(_InputIterator, _Sentinel, _ForwardIterator, allocator<_Tp>&) [with _InputIterator = __gnu_cxx::__normal_iterator<const unsigned char*, vector<unsigned char> >; _Sentinel = __gnu_cxx::__normal_iterator<const unsigned char*, vector<unsigned char> >; _ForwardIterator = unsigned char*; _Tp = unsigned char]’ at ~/gcc/inst/include/c++/17.0.0/bits/stl_uninitialized.h:659:32, > inlined from ‘constexpr std::vector< <template-parameter-1-1>, <template-parameter-1-2> >::vector(const std::vector< <template-parameter-1-1>, <template-parameter-1-2> >&) [with _Tp = unsigned char; _Alloc = std::allocator<unsigned char>]’ at ~/gcc/inst/include/c++/17.0.0/bits/stl_vector.h:678:31, > inlined from ‘virtual bool msfilter::MSCodec_CryptoAPI::InitCipher(sal_uInt32)’ at engine/filter/source/msfilter/mscodec.cxx:471:51: > ~/gcc/inst/include/c++/17.0.0/bits/stl_uninitialized.h:294:31: error: ‘void* __builtin_memcpy(void*, const void*, long unsigned int)’ accessing 9223372032559808513 or more bytes at offsets 0 and 0 overlaps 9223372028264841219 bytes at offset 4294967294 [-Werror=restrict] > 294 | __builtin_memcpy(std::__niter_base(__result), > | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > 295 | std::__miter_base(std::__niter_base(__first)), > | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > 296 | __n * sizeof(_ValT)); > | ~~~~~~~~~~~~~~~~~~~~ Signed-off-by: Stephan Bergmann <stephan.bergmann@collabora.com> Change-Id: Ic7474db25c2c88c8796c44a110bdfecca0fa42fa Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/4852 Tested-by: Jenkins CPCI <releng@collaboraoffice.com> Reviewed-by: Michael Stahl <michael.stahl@collabora.com> (cherry picked from commit cf408bbc72fc2cd5d97ea767804f941770f3740c) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/207167 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org> |
||
|
|
d8cd81b6cc |
Remove some broken gb_CppunitTest_set_include
...which all mentioned the wrong desktop_dialogs_test, so demonstratedly were not missed by their respective CppunitTest_*.mk files, so can just go Signed-off-by: Stephan Bergmann <stephan.bergmann@collabora.com> Change-Id: I8bbff02a50654c214d88635a3dc91553534a78e9 Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/4969 Tested-by: Jenkins CPCI <releng@collaboraoffice.com> Reviewed-by: Noel Grandin <noel.grandin@collabora.com> (cherry picked from commit 99a2f9d3f14fa4c1247103a8dbafce439000c592) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/207110 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org> |
||
|
|
495918adb9 |
Fix heap-use-after-free in ScOutputData::FindChanged
The loop in ScOutputData::FindChanged reused the ScFormulaCell pointers cached in mpRowInfo. But the preceding EnsureFormulaCellResults call can contract an auto-resizing matrix formula, and can thus delete the matrix's cells. This apparently started to break in 8070124eb9f0f5a4c7ea26a0fe39366d2ff8d26a "sc: fix crash when a matrix formula contracts mid-iteration", making the CppunitTest_sc_uicalc2 it introduced fail with > ==558773==ERROR: AddressSanitizer: heap-use-after-free on address 0x7ca7f493fc48 at pc 0x7bc78ec4338a bp 0x7ffdce34e080 sp 0x7ffdce34e078 > READ of size 8 at 0x7ca7f493fc48 thread T0 > #0 in ScFormulaCell::IsRunning() const at engine/sc/inc/formulacell.hxx:363:48 > #1 in ScOutputData::FindChanged() at engine/sc/source/ui/view/output.cxx:1963:29 > #2 in ScGridWindow::UpdateFormulaRange(short, int, short, int) at engine/sc/source/ui/view/gridwin.cxx:5388:17 > #3 in ScGridWindow::UpdateFormulas(short, int, short, int) at engine/sc/source/ui/view/gridwin.cxx:5336:5 > #4 in ScTabView::UpdateFormulas(short, int, short, int) at engine/sc/source/ui/view/tabview3.cxx:2785:26 > #5 in ScTabViewShell::Notify(SfxBroadcaster&, SfxHint const&) at engine/sc/source/ui/view/tabvwsh5.cxx:242:17 > #6 in SfxBroadcaster::Broadcast(SfxHint const&) at engine/svl/source/notify/SfxBroadcaster.cxx:43:24 > #7 in ScDocShell::PostDataChanged() at engine/sc/source/ui/docshell/docsh3.cxx:95:5 > #8 in ScDocShell::SetDocumentModified() at engine/sc/source/ui/docshell/docsh.cxx:3265:9 > #9 in ScDocShellModificator::SetDocumentModified() at engine/sc/source/ui/docshell/docsh.cxx:3656:19 > #10 in (anonymous namespace)::performAutoFormatAndUpdate(std::basic_string_view<char16_t, std::char_traits<char16_t>>, ScMarkData const&, short, int, short, bool, bool, std::shared_ptr<ScDocShellModificator> const&, ScViewFunc&) at engine/sc/source/ui/view/viewfunc.cxx:478:19 > #11 in ScViewFunc::EnterData(short, int, short, rtl::OUString const&, EditTextObject const*, bool) at engine/sc/source/ui/view/viewfunc.cxx:817:9 > #12 in ScViewFunc::EnterDataToCurrentCell(rtl::OUString const&, EditTextObject const*, bool) at engine/sc/source/ui/view/viewfunc.cxx:665:5 > #13 in ScCellShell::Execute(SfxRequest&) at engine/sc/source/ui/view/cellsh3.cxx:290:40 > #14 in SfxStubScCellShellExecute(SfxShell*, SfxRequest&) at engine/workdir/SdiTarget/sc/sdi/scslots.hxx:7965:27 > #15 in SfxDispatcher::Call_Impl(SfxShell&, SfxSlot const&, SfxRequest&, bool) at engine/sfx2/source/control/dispatch.cxx:256:9 > #16 in SfxDispatcher::Execute_(SfxShell&, SfxSlot const&, SfxRequest&, SfxCallMode) at engine/sfx2/source/control/dispatch.cxx:755:9 > #17 in SfxBindings::Execute_Impl(SfxRequest&, SfxSlot const*, SfxShell*) at engine/sfx2/source/control/bindings.cxx:1054:22 > #18 in SfxBindings::Execute_Impl(unsigned short, SfxPoolItem const**, SfxCallMode) at engine/sfx2/source/control/bindings.cxx:961:5 > #19 in SfxBindings::Execute(unsigned short, SfxPoolItem const**, SfxCallMode) at engine/sfx2/source/control/bindings.cxx:884:12 > #20 in ScCellShell::Execute(SfxRequest&) at engine/sc/source/ui/view/cellsh3.cxx:381:39 > #21 in SfxStubScCellShellExecute(SfxShell*, SfxRequest&) at engine/workdir/SdiTarget/sc/sdi/scslots.hxx:7965:27 > #22 in SfxDispatcher::Call_Impl(SfxShell&, SfxSlot const&, SfxRequest&, bool) at engine/sfx2/source/control/dispatch.cxx:256:9 > #23 in SfxDispatcher::Execute_(SfxShell&, SfxSlot const&, SfxRequest&, SfxCallMode) at engine/sfx2/source/control/dispatch.cxx:755:9 > #24 in SfxBindings::Execute_Impl(SfxRequest&, SfxSlot const*, SfxShell*) at engine/sfx2/source/control/bindings.cxx:1054:22 > #25 in SfxBindings::Execute_Impl(unsigned short, SfxPoolItem const**, SfxCallMode) at engine/sfx2/source/control/bindings.cxx:961:5 > #26 in SfxBindings::Execute(unsigned short, SfxPoolItem const**, SfxCallMode) at engine/sfx2/source/control/bindings.cxx:884:12 > #27 in ScInputHandler::EnterHandler2(ScEnterMode, bool, rtl::OUString, rtl::OUString const&) at engine/sc/source/ui/app/inputhdl.cxx:3537:23 > #28 in ScInputHandler::EnterHandler(ScEnterMode, bool) at engine/sc/source/ui/app/inputhdl.cxx:3264:5 > #29 in ScModule::InputEnterHandler(ScEnterMode, bool) at engine/sc/source/ui/app/scmod.cxx:1473:19 > #30 in ScTabViewShell::TabKeyInput(KeyEvent const&) at engine/sc/source/ui/view/tabvwsh4.cxx:1469:33 > #31 in ScGridWindow::KeyInput(KeyEvent const&) at engine/sc/source/ui/view/gridwin.cxx:3945:26 > #32 in (anonymous namespace)::KitPostAsyncEvent(void*, void*) at engine/sfx2/source/view/kithelper.cxx:1298:35 > #33 in Link<void*, void>::Call(void*) const at engine/include/tools/link.hxx:105:45 > #34 in ImplHandleUserEvent(ImplSVEvent*) at engine/vcl/source/window/winproc.cxx:2311:30 > #35 in ImplWindowFrameProc(vcl::Window*, SalEvent, void const*) at engine/vcl/source/window/winproc.cxx:2868:13 > #36 in SalFrame::CallCallback(SalEvent, void const*) const at engine/vcl/inc/salframe.hxx:310:29 > #37 in SvpSalInstance::ProcessEvent(SalUserEventList::SalUserEvent) at engine/vcl/headless/svpinst.cxx:289:22 > #38 in non-virtual thunk to SvpSalInstance::ProcessEvent(SalUserEventList::SalUserEvent) at engine/vcl/headless/svpinst.cxx > #39 in SalUserEventList::DispatchUserEvents(bool)::$_0::operator()() const at engine/vcl/source/app/salusereventlist.cxx:119:58 > #40 in SalUserEventList::DispatchUserEvents(bool) at engine/vcl/source/app/salusereventlist.cxx:120:13 > #41 in SvpSalInstance::ImplYield(bool, bool) at engine/vcl/headless/svpinst.cxx:442:22 > #42 in SvpSalInstance::DoYield(bool, bool) at engine/vcl/headless/svpinst.cxx:519:21 > #43 in InnerYield(bool, bool) at engine/vcl/source/app/svapp.cxx:389:48 > #44 in Scheduler::ProcessEventsToIdle() at engine/vcl/source/app/svapp.cxx:449:12 > #45 in ScModelTestBase::insertStringToCell(rtl::OUString const&, std::basic_string_view<char16_t, std::char_traits<char16_t>>) at engine/sc/qa/unit/helper/qahelper.cxx:318:5 > #46 in testSpillMatrixContractionOnEdit::TestBody() at engine/sc/qa/unit/uicalc/uicalc2.cxx:2184:5 > > 0x7ca7f493fc48 is located 72 bytes inside of 160-byte region [0x7ca7f493fc00,0x7ca7f493fca0) > freed by thread T0 here: > #0 in operator delete(void*, unsigned long) at ~/github.com/llvm/llvm-project/compiler-rt/lib/asan/asan_new_delete.cpp:187:3 > #1 in std::default_delete<ScFormulaCell>::operator()(ScFormulaCell*) const at ~/gcc/inst/lib/gcc/x86_64-pc-linux-gnu/17.0.0/../../../../include/c++/17.0.0/bits/unique_ptr.h:92:2 > #2 in std::default_delete<ScFormulaCell> std::for_each<__gnu_debug::_Safe_iterator<__gnu_cxx::__normal_iterator<ScFormulaCell**, std::__cxx1998::vector<ScFormulaCell*, std::allocator<ScFormulaCell*>>>, std::__debug::vector<ScFormulaCell*, std::allocator<ScFormulaCell*>>, std::random_access_iterator_tag>, std::default_delete<ScFormulaCell>>(__gnu_debug::_Safe_iterator<__gnu_cxx::__normal_iterator<ScFormulaCell**, std::__cxx1998::vector<ScFormulaCell*, std::allocator<ScFormulaCell*>>>, std::__debug::vector<ScFormulaCell*, std::allocator<ScFormulaCell*>>, std::random_access_iterator_tag>, __gnu_debug::_Safe_iterator<__gnu_cxx::__normal_iterator<ScFormulaCell**, std::__cxx1998::vector<ScFormulaCell*, std::allocator<ScFormulaCell*>>>, std::__debug::vector<ScFormulaCell*, std::allocator<ScFormulaCell*>>, std::random_access_iterator_tag>, std::default_delete<ScFormulaCell>) at ~/gcc/inst/lib/gcc/x86_64-pc-linux-gnu/17.0.0/../../../../include/c++/17.0.0/bits/stl_algo.h:3775:2 > #3 in mdds::mtv::noncopyable_managed_element_block<54, ScFormulaCell, mdds::mtv::delayed_delete_vector>::overwrite_values(mdds::mtv::base_element_block&, unsigned long, unsigned long) at engine/workdir/UnpackedTarball/mdds/include/mdds/multi_type_vector/soa/../types.hpp:779:9 > #4 in void std::__invoke_impl<void, void (*&)(mdds::mtv::base_element_block&, unsigned long, unsigned long), mdds::mtv::base_element_block&, unsigned long, unsigned long>(std::__invoke_other, void (*&)(mdds::mtv::base_element_block&, unsigned long, unsigned long), mdds::mtv::base_element_block&, unsigned long&&, unsigned long&&) at ~/gcc/inst/lib/gcc/x86_64-pc-linux-gnu/17.0.0/../../../../include/c++/17.0.0/bits/invoke.h:63:14 > #5 in std::enable_if<is_invocable_r_v<void, void (*&)(mdds::mtv::base_element_block&, unsigned long, unsigned long), mdds::mtv::base_element_block&, unsigned long, unsigned long>, void>::type std::__invoke_r<void, void (*&)(mdds::mtv::base_element_block&, unsigned long, unsigned long), mdds::mtv::base_element_block&, unsigned long, unsigned long>(void (*&)(mdds::mtv::base_element_block&, unsigned long, unsigned long), mdds::mtv::base_element_block&, unsigned long&&, unsigned long&&) at ~/gcc/inst/lib/gcc/x86_64-pc-linux-gnu/17.0.0/../../../../include/c++/17.0.0/bits/invoke.h:113:2 > #6 in std::_Function_handler<void (mdds::mtv::base_element_block&, unsigned long, unsigned long), void (*)(mdds::mtv::base_element_block&, unsigned long, unsigned long)>::_M_invoke(std::_Any_data const&, mdds::mtv::base_element_block&, unsigned long&&, unsigned long&&) at ~/gcc/inst/lib/gcc/x86_64-pc-linux-gnu/17.0.0/../../../../include/c++/17.0.0/bits/std_function.h:295:9 > #7 in std::function<void (mdds::mtv::base_element_block&, unsigned long, unsigned long)>::operator()(mdds::mtv::base_element_block&, unsigned long, unsigned long) const at ~/gcc/inst/lib/gcc/x86_64-pc-linux-gnu/17.0.0/../../../../include/c++/17.0.0/bits/std_function.h:581:9 > #8 in mdds::mtv::element_block_funcs<mdds::mtv::default_element_block<10, double, mdds::mtv::delayed_delete_vector>, mdds::mtv::default_element_block<52, svl::SharedString, mdds::mtv::delayed_delete_vector>, mdds::mtv::noncopyable_managed_element_block<53, EditTextObject, mdds::mtv::delayed_delete_vector>, mdds::mtv::noncopyable_managed_element_block<54, ScFormulaCell, mdds::mtv::delayed_delete_vector>>::overwrite_values(mdds::mtv::base_element_block&, unsigned long, unsigned long) at engine/workdir/UnpackedTarball/mdds/include/mdds/multi_type_vector/soa/.././block_funcs.hpp:209:9 > #9 in mdds::mtv::soa::multi_type_vector<sc::CellStoreTraits>::set_empty_in_single_block(unsigned long, unsigned long, unsigned long, bool) at engine/workdir/UnpackedTarball/mdds/include/mdds/multi_type_vector/soa/main_def.inl:1976:13 > #10 in mdds::mtv::soa::multi_type_vector<sc::CellStoreTraits>::set_empty_impl(unsigned long, unsigned long, unsigned long, bool) at engine/workdir/UnpackedTarball/mdds/include/mdds/multi_type_vector/soa/main_def.inl:1898:18 > #11 in mdds::mtv::soa::multi_type_vector<sc::CellStoreTraits>::set_empty(mdds::mtv::soa::detail::iterator_base<mdds::mtv::soa::multi_type_vector<sc::CellStoreTraits>::iterator_trait> const&, unsigned long, unsigned long) at engine/workdir/UnpackedTarball/mdds/include/mdds/multi_type_vector/soa/main_def.inl:1142:12 > #12 in (anonymous namespace)::EmptyCells::operator()(sc::RowSpan const&) at engine/sc/source/core/data/column3.cxx:1066:34 > #13 in (anonymous namespace)::EmptyCells std::for_each<std::reverse_iterator<__gnu_debug::_Safe_iterator<__gnu_cxx::__normal_iterator<sc::RowSpan*, std::__cxx1998::vector<sc::RowSpan, std::allocator<sc::RowSpan>>>, std::__debug::vector<sc::RowSpan, std::allocator<sc::RowSpan>>, std::random_access_iterator_tag>>, (anonymous namespace)::EmptyCells>(std::reverse_iterator<__gnu_debug::_Safe_iterator<__gnu_cxx::__normal_iterator<sc::RowSpan*, std::__cxx1998::vector<sc::RowSpan, std::allocator<sc::RowSpan>>>, std::__debug::vector<sc::RowSpan, std::allocator<sc::RowSpan>>, std::random_access_iterator_tag>>, std::reverse_iterator<__gnu_debug::_Safe_iterator<__gnu_cxx::__normal_iterator<sc::RowSpan*, std::__cxx1998::vector<sc::RowSpan, std::allocator<sc::RowSpan>>>, std::__debug::vector<sc::RowSpan, std::allocator<sc::RowSpan>>, std::random_access_iterator_tag>>, (anonymous namespace)::EmptyCells) at ~/gcc/inst/lib/gcc/x86_64-pc-linux-gnu/17.0.0/../../../../include/c++/17.0.0/bits/stl_algo.h:3775:2 > #14 in ScColumn::DeleteCells(sc::ColumnBlockPosition&, int, int, InsertDeleteFlags) at engine/sc/source/core/data/column3.cxx:1096:5 > #15 in ScColumn::DeleteArea(int, int, InsertDeleteFlags, bool, sc::ColumnSpanSet*) at engine/sc/source/core/data/column3.cxx:1120:19 > #16 in ScTable::DeleteArea(short, int, short, int, InsertDeleteFlags, bool, sc::ColumnSpanSet*) at engine/sc/source/core/data/table2.cxx:433:25 > #17 in ScDocument::DeleteAreaTab(short, int, short, int, short, InsertDeleteFlags) at engine/sc/source/core/data/document.cxx:2064:17 > #18 in ScDocument::ResizeMatrixFormula(ScAddress const&, short, int) at engine/sc/source/core/data/documen4.cxx:517:17 > #19 in ScDocument::ProcessPendingMatrixResizes() at engine/sc/source/core/data/documen4.cxx:623:9 > #20 in sc::MatrixResizeGuard::~MatrixResizeGuard() at engine/sc/inc/MatrixResizeGuard.hxx:39:19 > #21 in ScColumn::EnsureFormulaCellResults(int, int, bool) at engine/sc/source/core/data/column4.cxx:2012:1 > #22 in ScTable::EnsureFormulaCellResults(short, int, short, int, bool) at engine/sc/source/core/data/table7.cxx:449:32 > #23 in ScDocument::EnsureFormulaCellResults(ScRange const&, bool) at engine/sc/source/core/data/document10.cxx:1037:27 > #24 in ScOutputData::FindChanged() at engine/sc/source/ui/view/output.cxx:1950:20 > #25 in ScGridWindow::UpdateFormulaRange(short, int, short, int) at engine/sc/source/ui/view/gridwin.cxx:5388:17 Signed-off-by: Stephan Bergmann <stephan.bergmann@collabora.com> Change-Id: I0e32afb07a49f149294e2bf20cb10194ae84fd81 Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/4135 Reviewed-by: Noel Grandin <noel.grandin@collabora.com> Tested-by: Jenkins CPCI <releng@collaboraoffice.com> (cherry picked from commit 780c73802eb8ace937d7b0d5be8a33ba710d2f55) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/206646 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org> |
||
|
|
6bc9e31108 |
external/coinmp: Various UBSan issues
...as seen during CppunitTest_sc_solverobj, > CglPreProcess.cpp:6432:21: runtime error: null pointer passed as argument 2, which is declared to never be null > /usr/include/string.h:48:28: note: nonnull attribute specified here > #0 in CglPreProcess::addCutGenerator(CglCutGenerator*) at <null> (engine/instdir/program/libCgl.so.1 +0x2e858a) > #1 in CbcMain1(int, char const**, CbcModel&, int (*)(CbcModel*, int), CbcSolverUsefulData&) at <null> (engine/instdir/program/libCbcSolver.so.3 +0x1dd308) > #2 in CbcSolveProblem(void*, PROBLEMINFO*, OPTIONINFO*, int) at <null> (engine/instdir/program/libCoinMP.so.1 +0x2c880) > #3 in CbcOptimizeProblem at <null> (engine/instdir/program/libCoinMP.so.1 +0x2fdeb) > #4 in (anonymous namespace)::CoinMPSolver::solve() at engine/sc/source/solver/CoinMPSolver.cxx:325:23 > #5 in ScSolverSettings::solve() at engine/sc/source/ui/unoobj/solveruno.cxx:902:14 > #6 in sc_apitest::ScSolverSettingsObj::testXSolverSettings() at engine/sc/qa/extras/scsolverobj.cxx:121:19 and > CbcModel.cpp:11504:39: runtime error: null pointer passed as argument 2, which is declared to never be null > /usr/include/string.h:48:28: note: nonnull attribute specified here > #0 in CbcModel::findIntegers(bool, int) at <null> (engine/instdir/program/libCbc.so.3 +0x2e0857) > #1 in CbcMain1(int, char const**, CbcModel&, int (*)(CbcModel*, int), CbcSolverUsefulData&) at <null> (engine/instdir/program/libCbcSolver.so.3 +0x1dd7f3) > #2 in CbcSolveProblem(void*, PROBLEMINFO*, OPTIONINFO*, int) at <null> (engine/instdir/program/libCoinMP.so.1 +0x2c880) > #3 in CbcOptimizeProblem at <null> (engine/instdir/program/libCoinMP.so.1 +0x2fdeb) > #4 in (anonymous namespace)::CoinMPSolver::solve() at engine/sc/source/solver/CoinMPSolver.cxx:325:23 > #5 in ScSolverSettings::solve() at engine/sc/source/ui/unoobj/solveruno.cxx:902:14 > #6 in sc_apitest::ScSolverSettingsObj::testXSolverSettings() at engine/sc/qa/extras/scsolverobj.cxx:121:19 and > CglPreProcess.cpp:1721:36: runtime error: 1.79769e+308 is outside the range of representable values of type 'int' > #0 in CglPreProcess::preProcessNonDefault(OsiSolverInterface&, int, int, int) at <null> (engine/instdir/program/libCgl.so.1 +0x2f71a6) > #1 in CbcMain1(int, char const**, CbcModel&, int (*)(CbcModel*, int), CbcSolverUsefulData&) at <null> (engine/instdir/program/libCbcSolver.so.3 +0x1e4777) > #2 in CbcSolveProblem(void*, PROBLEMINFO*, OPTIONINFO*, int) at <null> (engine/instdir/program/libCoinMP.so.1 +0x2c880) > #3 in CbcOptimizeProblem at <null> (engine/instdir/program/libCoinMP.so.1 +0x2fdeb) > #4 in (anonymous namespace)::CoinMPSolver::solve() at engine/sc/source/solver/CoinMPSolver.cxx:325:23 > #5 in ScSolverSettings::solve() at engine/sc/source/ui/unoobj/solveruno.cxx:902:14 > #6 in sc_apitest::ScSolverSettingsObj::testXSolverSettings() at engine/sc/qa/extras/scsolverobj.cxx:121:19 and > CglPreProcess.cpp:1722:36: runtime error: -1.79769e+308 is outside the range of representable values of type 'int' > #0 in CglPreProcess::preProcessNonDefault(OsiSolverInterface&, int, int, int) at <null> (engine/instdir/program/libCgl.so.1 +0x2f71d1) > #1 in CbcMain1(int, char const**, CbcModel&, int (*)(CbcModel*, int), CbcSolverUsefulData&) at <null> (engine/instdir/program/libCbcSolver.so.3 +0x1e4777) > #2 in CbcSolveProblem(void*, PROBLEMINFO*, OPTIONINFO*, int) at <null> (engine/instdir/program/libCoinMP.so.1 +0x2c880) > #3 in CbcOptimizeProblem at <null> (engine/instdir/program/libCoinMP.so.1 +0x2fdeb) > #4 in (anonymous namespace)::CoinMPSolver::solve() at engine/sc/source/solver/CoinMPSolver.cxx:325:23 > #5 in ScSolverSettings::solve() at engine/sc/source/ui/unoobj/solveruno.cxx:902:14 > #6 in sc_apitest::ScSolverSettingsObj::testXSolverSettings() at engine/sc/qa/extras/scsolverobj.cxx:121:19 and > CbcModel.cpp:7134:24: runtime error: null pointer passed as argument 2, which is declared to never be null > /usr/include/string.h:48:28: note: nonnull attribute specified here > #0 in CbcModel::addHeuristic(CbcHeuristic*, char const*, int) at <null> (engine/instdir/program/libCbc.so.3 +0x3e315b) > #1 in doHeuristics(CbcModel*, int, CbcOrClpParam*, int, int, int) at <null> (engine/instdir/program/libCbcSolver.so.3 +0x2ac48e) > #2 in CbcMain1(int, char const**, CbcModel&, int (*)(CbcModel*, int), CbcSolverUsefulData&) at <null> (engine/instdir/program/libCbcSolver.so.3 +0x1d8334) > #3 in CbcSolveProblem(void*, PROBLEMINFO*, OPTIONINFO*, int) at <null> (engine/instdir/program/libCoinMP.so.1 +0x2c880) > #4 in CbcOptimizeProblem at <null> (engine/instdir/program/libCoinMP.so.1 +0x2fdeb) > #5 in (anonymous namespace)::CoinMPSolver::solve() at engine/sc/source/solver/CoinMPSolver.cxx:325:23 > #6 in ScSolverSettings::solve() at engine/sc/source/ui/unoobj/solveruno.cxx:902:14 > #7 in sc_apitest::ScSolverSettingsObj::testXSolverSettings() at engine/sc/qa/extras/scsolverobj.cxx:121:19 and > CbcModel.cpp:7110:24: runtime error: null pointer passed as argument 2, which is declared to never be null > /usr/include/string.h:48:28: note: nonnull attribute specified here > #0 in CbcModel::addCutGenerator(CglCutGenerator*, int, char const*, bool, bool, bool, int, int, int) at <null> (engine/instdir/program/libCbc.so.3 +0x349035) > #1 in CbcMain1(int, char const**, CbcModel&, int (*)(CbcModel*, int), CbcSolverUsefulData&) at <null> (engine/instdir/program/libCbcSolver.so.3 +0x1d8efb) > #2 in CbcSolveProblem(void*, PROBLEMINFO*, OPTIONINFO*, int) at <null> (engine/instdir/program/libCoinMP.so.1 +0x2c880) > #3 in CbcOptimizeProblem at <null> (engine/instdir/program/libCoinMP.so.1 +0x2fdeb) > #4 in (anonymous namespace)::CoinMPSolver::solve() at engine/sc/source/solver/CoinMPSolver.cxx:325:23 > #5 in ScSolverSettings::solve() at engine/sc/source/ui/unoobj/solveruno.cxx:902:14 > #6 in sc_apitest::ScSolverSettingsObj::testXSolverSettings() at engine/sc/qa/extras/scsolverobj.cxx:121:19 and > CbcModel.cpp:7119:30: runtime error: null pointer passed as argument 2, which is declared to never be null > /usr/include/string.h:48:28: note: nonnull attribute specified here > #0 in CbcModel::addCutGenerator(CglCutGenerator*, int, char const*, bool, bool, bool, int, int, int) at <null> (engine/instdir/program/libCbc.so.3 +0x34921e) > #1 in CbcMain1(int, char const**, CbcModel&, int (*)(CbcModel*, int), CbcSolverUsefulData&) at <null> (engine/instdir/program/libCbcSolver.so.3 +0x1d8efb) > #2 in CbcSolveProblem(void*, PROBLEMINFO*, OPTIONINFO*, int) at <null> (engine/instdir/program/libCoinMP.so.1 +0x2c880) > #3 in CbcOptimizeProblem at <null> (engine/instdir/program/libCoinMP.so.1 +0x2fdeb) > #4 in (anonymous namespace)::CoinMPSolver::solve() at engine/sc/source/solver/CoinMPSolver.cxx:325:23 > #5 in ScSolverSettings::solve() at engine/sc/source/ui/unoobj/solveruno.cxx:902:14 > #6 in sc_apitest::ScSolverSettingsObj::testXSolverSettings() at engine/sc/qa/extras/scsolverobj.cxx:121:19 and > CglKnapsackCover.cpp:3908:36: runtime error: -1.79769e+308 is outside the range of representable values of type 'int' > #0 in CglKnapsackCover::createCliques(OsiSolverInterface&, int, int, bool) at <null> (engine/instdir/program/libCgl.so.1 +0x1af0ab) > #1 in CbcCutGenerator::CbcCutGenerator(CbcModel*, CglCutGenerator*, int, char const*, bool, bool, bool, int, int, int, int) at <null> (engine/instdir/program/libCbc.so.3 +0x7fb17) > #2 in CbcModel::addCutGenerator(CglCutGenerator*, int, char const*, bool, bool, bool, int, int, int) at <null> (engine/instdir/program/libCbc.so.3 +0x348ace) > #3 in CbcMain1(int, char const**, CbcModel&, int (*)(CbcModel*, int), CbcSolverUsefulData&) at <null> (engine/instdir/program/libCbcSolver.so.3 +0x1d9c2d) > #4 in CbcSolveProblem(void*, PROBLEMINFO*, OPTIONINFO*, int) at <null> (engine/instdir/program/libCoinMP.so.1 +0x2c880) > #5 in CbcOptimizeProblem at <null> (engine/instdir/program/libCoinMP.so.1 +0x2fdeb) > #6 in (anonymous namespace)::CoinMPSolver::solve() at engine/sc/source/solver/CoinMPSolver.cxx:325:23 > #7 in ScSolverSettings::solve() at engine/sc/source/ui/unoobj/solveruno.cxx:902:14 > #8 in sc_apitest::ScSolverSettingsObj::testXSolverSettings() at engine/sc/qa/extras/scsolverobj.cxx:121:19 and > CbcModel.cpp:9355:93: runtime error: division by zero > #0 in CbcModel::solveWithCuts(OsiCuts&, int, CbcNode*) at <null> (engine/instdir/program/libCbc.so.3 +0x371e89) > #1 in CbcModel::branchAndBound(int) at <null> (engine/instdir/program/libCbc.so.3 +0x33f172) > #2 in CbcHeuristic::smallBranchAndBound(OsiSolverInterface*, int, double*, double&, double, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>) const at <null> (engine/instdir/program/libCbc.so.3 +0x10643e) > #3 in CbcHeuristicFPump::solution(double&, double*) at <null> (engine/instdir/program/libCbc.so.3 +0x1a25ed) > #4 in CbcModel::doHeuristicsAtRoot(int) at <null> (engine/instdir/program/libCbc.so.3 +0x34fd61) > #5 in CbcModel::branchAndBound(int) at <null> (engine/instdir/program/libCbc.so.3 +0x306fec) > #6 in CbcMain1(int, char const**, CbcModel&, int (*)(CbcModel*, int), CbcSolverUsefulData&) at <null> (engine/instdir/program/libCbcSolver.so.3 +0x215c37) > #7 in CbcSolveProblem(void*, PROBLEMINFO*, OPTIONINFO*, int) at <null> (engine/instdir/program/libCoinMP.so.1 +0x2c880) > #8 in CbcOptimizeProblem at <null> (engine/instdir/program/libCoinMP.so.1 +0x2fdeb) > #9 in (anonymous namespace)::CoinMPSolver::solve() at engine/sc/source/solver/CoinMPSolver.cxx:325:23 > #10 in ScSolverSettings::solve() at engine/sc/source/ui/unoobj/solveruno.cxx:902:14 > #11 in sc_apitest::ScSolverSettingsObj::testXSolverSettings() at engine/sc/qa/extras/scsolverobj.cxx:121:19 and > CbcModel.cpp:9332:49: runtime error: division by zero > #0 in CbcModel::solveWithCuts(OsiCuts&, int, CbcNode*) at <null> (engine/instdir/program/libCbc.so.3 +0x3760c7) > #1 in CbcModel::branchAndBound(int) at <null> (engine/instdir/program/libCbc.so.3 +0x33f172) > #2 in CbcHeuristic::smallBranchAndBound(OsiSolverInterface*, int, double*, double&, double, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>) const at <null> (engine/instdir/program/libCbc.so.3 +0x10643e) > #3 in CbcHeuristicFPump::solution(double&, double*) at <null> (engine/instdir/program/libCbc.so.3 +0x1a25ed) > #4 in CbcModel::doHeuristicsAtRoot(int) at <null> (engine/instdir/program/libCbc.so.3 +0x34fd61) > #5 in CbcModel::branchAndBound(int) at <null> (engine/instdir/program/libCbc.so.3 +0x306fec) > #6 in CbcMain1(int, char const**, CbcModel&, int (*)(CbcModel*, int), CbcSolverUsefulData&) at <null> (engine/instdir/program/libCbcSolver.so.3 +0x215c37) > #7 in CbcSolveProblem(void*, PROBLEMINFO*, OPTIONINFO*, int) at <null> (engine/instdir/program/libCoinMP.so.1 +0x2c880) > #8 in CbcOptimizeProblem at <null> (engine/instdir/program/libCoinMP.so.1 +0x2fdeb) > #9 in (anonymous namespace)::CoinMPSolver::solve() at engine/sc/source/solver/CoinMPSolver.cxx:325:23 > #10 in ScSolverSettings::solve() at engine/sc/source/ui/unoobj/solveruno.cxx:902:14 > #11 in sc_apitest::ScSolverSettingsObj::testXSolverSettings() at engine/sc/qa/extras/scsolverobj.cxx:121:19 and > ClpSimplex.cpp:2560:34: runtime error: applying non-zero offset 120 to null pointer > #0 in ClpSimplex::gutsOfCopy(ClpSimplex const&) at <null> (engine/instdir/program/libClp.so.1 +0x6ab776) > #1 in ClpSimplex::ClpSimplex(ClpSimplex const&, int) at <null> (engine/instdir/program/libClp.so.1 +0x6a912b) > #2 in ClpPresolve::gutsOfPresolvedModel(ClpSimplex*, double, bool, int, bool, bool, char const*, char const*) at <null> (engine/instdir/program/libClp.so.1 +0x59c16c) > #3 in OsiClpSolverInterface::initialSolve() at <null> (engine/instdir/program/libOsiClp.so.1 +0xa53f) > #4 in CglPreProcess::postProcess(OsiSolverInterface&, bool) at <null> (engine/instdir/program/libCgl.so.1 +0x3600f1) > #5 in CbcHeuristic::smallBranchAndBound(OsiSolverInterface*, int, double*, double&, double, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>) const at <null> (engine/instdir/program/libCbc.so.3 +0x107ac1) > #6 in CbcHeuristicFPump::solution(double&, double*) at <null> (engine/instdir/program/libCbc.so.3 +0x1a25ed) > #7 in CbcModel::doHeuristicsAtRoot(int) at <null> (engine/instdir/program/libCbc.so.3 +0x34fd61) > #8 in CbcModel::branchAndBound(int) at <null> (engine/instdir/program/libCbc.so.3 +0x306fec) > #9 in CbcMain1(int, char const**, CbcModel&, int (*)(CbcModel*, int), CbcSolverUsefulData&) at <null> (engine/instdir/program/libCbcSolver.so.3 +0x215c37) > #10 in CbcSolveProblem(void*, PROBLEMINFO*, OPTIONINFO*, int) at <null> (engine/instdir/program/libCoinMP.so.1 +0x2c880) > #11 in CbcOptimizeProblem at <null> (engine/instdir/program/libCoinMP.so.1 +0x2fdeb) > #12 in (anonymous namespace)::CoinMPSolver::solve() at engine/sc/source/solver/CoinMPSolver.cxx:325:23 > #13 in ScSolverSettings::solve() at engine/sc/source/ui/unoobj/solveruno.cxx:902:14 > #14 in sc_apitest::ScSolverSettingsObj::testXSolverSettings() at engine/sc/qa/extras/scsolverobj.cxx:121:19 and > ClpSimplex.cpp:2563:34: runtime error: applying non-zero offset 120 to null pointer > #0 in ClpSimplex::gutsOfCopy(ClpSimplex const&) at <null> (engine/instdir/program/libClp.so.1 +0x6ab771) > #1 in ClpSimplex::ClpSimplex(ClpSimplex const&, int) at <null> (engine/instdir/program/libClp.so.1 +0x6a912b) > #2 in ClpPresolve::gutsOfPresolvedModel(ClpSimplex*, double, bool, int, bool, bool, char const*, char const*) at <null> (engine/instdir/program/libClp.so.1 +0x59c16c) > #3 in OsiClpSolverInterface::initialSolve() at <null> (engine/instdir/program/libOsiClp.so.1 +0xa53f) > #4 in CglPreProcess::postProcess(OsiSolverInterface&, bool) at <null> (engine/instdir/program/libCgl.so.1 +0x3600f1) > #5 in CbcHeuristic::smallBranchAndBound(OsiSolverInterface*, int, double*, double&, double, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>) const at <null> (engine/instdir/program/libCbc.so.3 +0x107ac1) > #6 in CbcHeuristicFPump::solution(double&, double*) at <null> (engine/instdir/program/libCbc.so.3 +0x1a25ed) > #7 in CbcModel::doHeuristicsAtRoot(int) at <null> (engine/instdir/program/libCbc.so.3 +0x34fd61) > #8 in CbcModel::branchAndBound(int) at <null> (engine/instdir/program/libCbc.so.3 +0x306fec) > #9 in CbcMain1(int, char const**, CbcModel&, int (*)(CbcModel*, int), CbcSolverUsefulData&) at <null> (engine/instdir/program/libCbcSolver.so.3 +0x215c37) > #10 in CbcSolveProblem(void*, PROBLEMINFO*, OPTIONINFO*, int) at <null> (engine/instdir/program/libCoinMP.so.1 +0x2c880) > #11 in CbcOptimizeProblem at <null> (engine/instdir/program/libCoinMP.so.1 +0x2fdeb) > #12 in (anonymous namespace)::CoinMPSolver::solve() at engine/sc/source/solver/CoinMPSolver.cxx:325:23 > #13 in ScSolverSettings::solve() at engine/sc/source/ui/unoobj/solveruno.cxx:902:14 > #14 in sc_apitest::ScSolverSettingsObj::testXSolverSettings() at engine/sc/qa/extras/scsolverobj.cxx:121:19 and > ClpSimplex.cpp:2567:37: runtime error: applying non-zero offset 120 to null pointer > #0 in ClpSimplex::gutsOfCopy(ClpSimplex const&) at <null> (engine/instdir/program/libClp.so.1 +0x6ab751) > #1 in ClpSimplex::ClpSimplex(ClpSimplex const&, int) at <null> (engine/instdir/program/libClp.so.1 +0x6a912b) > #2 in ClpPresolve::gutsOfPresolvedModel(ClpSimplex*, double, bool, int, bool, bool, char const*, char const*) at <null> (engine/instdir/program/libClp.so.1 +0x59c16c) > #3 in OsiClpSolverInterface::initialSolve() at <null> (engine/instdir/program/libOsiClp.so.1 +0xa53f) > #4 in CglPreProcess::postProcess(OsiSolverInterface&, bool) at <null> (engine/instdir/program/libCgl.so.1 +0x3600f1) > #5 in CbcHeuristic::smallBranchAndBound(OsiSolverInterface*, int, double*, double&, double, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>) const at <null> (engine/instdir/program/libCbc.so.3 +0x107ac1) > #6 in CbcHeuristicFPump::solution(double&, double*) at <null> (engine/instdir/program/libCbc.so.3 +0x1a25ed) > #7 in CbcModel::doHeuristicsAtRoot(int) at <null> (engine/instdir/program/libCbc.so.3 +0x34fd61) > #8 in CbcModel::branchAndBound(int) at <null> (engine/instdir/program/libCbc.so.3 +0x306fec) > #9 in CbcMain1(int, char const**, CbcModel&, int (*)(CbcModel*, int), CbcSolverUsefulData&) at <null> (engine/instdir/program/libCbcSolver.so.3 +0x215c37) > #10 in CbcSolveProblem(void*, PROBLEMINFO*, OPTIONINFO*, int) at <null> (engine/instdir/program/libCoinMP.so.1 +0x2c880) > #11 in CbcOptimizeProblem at <null> (engine/instdir/program/libCoinMP.so.1 +0x2fdeb) > #12 in (anonymous namespace)::CoinMPSolver::solve() at engine/sc/source/solver/CoinMPSolver.cxx:325:23 > #13 in ScSolverSettings::solve() at engine/sc/source/ui/unoobj/solveruno.cxx:902:14 > #14 in sc_apitest::ScSolverSettingsObj::testXSolverSettings() at engine/sc/qa/extras/scsolverobj.cxx:121:19 and > CglCliqueHelper.cpp:296:53: runtime error: division by zero > #0 in CglClique::createFractionalGraph() at <null> (engine/instdir/program/libCgl.so.1 +0x81b36) > #1 in CglClique::generateCuts(OsiSolverInterface const&, OsiCuts&, CglTreeInfo) at <null> (engine/instdir/program/libCgl.so.1 +0x60a26) > #2 in CglFakeClique::generateCuts(OsiSolverInterface const&, OsiCuts&, CglTreeInfo) at <null> (engine/instdir/program/libCgl.so.1 +0x72e73) > #3 in CbcCutGenerator::generateCuts(OsiCuts&, int, OsiSolverInterface*, CbcNode*) at <null> (engine/instdir/program/libCbc.so.3 +0x8281c) > #4 in CbcModel::serialCuts(OsiCuts&, CbcNode*, OsiCuts&, int) at <null> (engine/instdir/program/libCbc.so.3 +0x3f37a6) > #5 in CbcModel::solveWithCuts(OsiCuts&, int, CbcNode*) at <null> (engine/instdir/program/libCbc.so.3 +0x35d618) > #6 in CbcModel::branchAndBound(int) at <null> (engine/instdir/program/libCbc.so.3 +0x33f172) > #7 in CbcMain1(int, char const**, CbcModel&, int (*)(CbcModel*, int), CbcSolverUsefulData&) at <null> (engine/instdir/program/libCbcSolver.so.3 +0x215c37) > #8 in CbcSolveProblem(void*, PROBLEMINFO*, OPTIONINFO*, int) at <null> (engine/instdir/program/libCoinMP.so.1 +0x2c880) > #9 in CbcOptimizeProblem at <null> (engine/instdir/program/libCoinMP.so.1 +0x2fdeb) > #10 in (anonymous namespace)::CoinMPSolver::solve() at engine/sc/source/solver/CoinMPSolver.cxx:325:23 > #11 in ScSolverSettings::solve() at engine/sc/source/ui/unoobj/solveruno.cxx:902:14 > #12 in sc_apitest::ScSolverSettingsObj::testXSolverSettings() at engine/sc/qa/extras/scsolverobj.cxx:121:19 and > CglTwomir.cpp:1782:14: runtime error: division by zero > #0 in DGG_add2stepToList(DGG_constraint_t*, char*, double*, double*, DGG_list_t*, DGG_data_t*, DGG_constraint_t*) at <null> (engine/instdir/program/libCgl.so.1 +0x5c63ed) > #1 in DGG_generateCutsFromBase(DGG_constraint_t*, DGG_list_t*, DGG_data_t*, void const*) at <null> (engine/instdir/program/libCgl.so.1 +0x5c227e) > #2 in DGG_generateTabRowCuts(DGG_list_t*, DGG_data_t*, void const*) at <null> (engine/instdir/program/libCgl.so.1 +0x5aa163) > #3 in CglTwomir::generateCuts(OsiSolverInterface const&, OsiCuts&, CglTreeInfo) at <null> (engine/instdir/program/libCgl.so.1 +0x59c4bd) > #4 in CbcCutGenerator::generateCuts(OsiCuts&, int, OsiSolverInterface*, CbcNode*) at <null> (engine/instdir/program/libCbc.so.3 +0x8281c) > #5 in CbcModel::serialCuts(OsiCuts&, CbcNode*, OsiCuts&, int) at <null> (engine/instdir/program/libCbc.so.3 +0x3f3896) > #6 in CbcModel::solveWithCuts(OsiCuts&, int, CbcNode*) at <null> (engine/instdir/program/libCbc.so.3 +0x35d61b) > #7 in CbcModel::branchAndBound(int) at <null> (engine/instdir/program/libCbc.so.3 +0x33f172) > #8 in CbcMain1(int, char const**, CbcModel&, int (*)(CbcModel*, int), CbcSolverUsefulData&) at <null> (engine/instdir/program/libCbcSolver.so.3 +0x215c37) > #9 in CbcSolveProblem(void*, PROBLEMINFO*, OPTIONINFO*, int) at <null> (engine/instdir/program/libCoinMP.so.1 +0x2c880) > #10 in CbcOptimizeProblem at <null> (engine/instdir/program/libCoinMP.so.1 +0x2fdeb) > #11 in (anonymous namespace)::CoinMPSolver::solve() at engine/sc/source/solver/CoinMPSolver.cxx:325:23 > #12 in ScSolverSettings::solve() at engine/sc/source/ui/unoobj/solveruno.cxx:902:14 > #13 in sc_apitest::ScSolverSettingsObj::testXSolverSettings() at engine/sc/qa/extras/scsolverobj.cxx:121:19 and > CglGomory.cpp:1317:30: runtime error: 3.84447e+09 is outside the range of representable values of type 'int' > #0 in CglGomory::generateCuts(OsiRowCutDebugger const*, OsiCuts&, CoinPackedMatrix const&, CoinPackedMatrix const&, double const*, double const*, double const*, double const*, double const*, char const*, CoinWarmStartBasis const*, CglTreeInfo) at <null> (engine/instdir/program/libCgl.so.1 +0x142933) > #1 in CglGomory::generateCuts(OsiSolverInterface const&, OsiCuts&, CglTreeInfo) at <null> (engine/instdir/program/libCgl.so.1 +0x1342e8) > #2 in CbcCutGenerator::generateCuts(OsiCuts&, int, OsiSolverInterface*, CbcNode*) at <null> (engine/instdir/program/libCbc.so.3 +0x8281c) > #3 in CbcModel::serialCuts(OsiCuts&, CbcNode*, OsiCuts&, int) at <null> (engine/instdir/program/libCbc.so.3 +0x3f3896) > #4 in CbcModel::solveWithCuts(OsiCuts&, int, CbcNode*) at <null> (engine/instdir/program/libCbc.so.3 +0x35d61b) > #5 in CbcModel::branchAndBound(int) at <null> (engine/instdir/program/libCbc.so.3 +0x33f172) > #6 in CbcMain1(int, char const**, CbcModel&, int (*)(CbcModel*, int), CbcSolverUsefulData&) at <null> (engine/instdir/program/libCbcSolver.so.3 +0x215c37) > #7 in CbcSolveProblem(void*, PROBLEMINFO*, OPTIONINFO*, int) at <null> (engine/instdir/program/libCoinMP.so.1 +0x2c880) > #8 in CbcOptimizeProblem at <null> (engine/instdir/program/libCoinMP.so.1 +0x2fdeb) > #9 in (anonymous namespace)::CoinMPSolver::solve() at engine/sc/source/solver/CoinMPSolver.cxx:325:23 > #10 in ScSolverSettings::solve() at engine/sc/source/ui/unoobj/solveruno.cxx:902:14 > #11 in sc_apitest::ScSolverSettingsObj::testXSolverSettings() at engine/sc/qa/extras/scsolverobj.cxx:121:19 Signed-off-by: Stephan Bergmann <stephan.bergmann@collabora.com> Change-Id: I8baaad0d3214da27cc85f76e267d4783dfae81e5 Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/4150 Tested-by: Jenkins CPCI <releng@collaboraoffice.com> Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com> (cherry picked from commit 85b26ba51a219795938c82288e38518d7f9aec5e) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/206638 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org> |
||
|
|
b09ba6bfcf |
Disable the Toolkit XDataTransferProviderAccess unoapi test without DnD
At least for one of my builds, JunitTest_toolkit_unoapi_2's toolkit.Toolkit fails its XDataTransferProviderAccess check at getDragSource(), which returns null: > [toolkit.Toolkit::com::sun::star::awt::XDataTransferProviderAccess::getDragSource()] is testcode: [getDragSource()] - COMPLETED.FAILED getDragSource has no XDragSource to return without a drag-and-drop capable VCL backend: when the unoapi soffice runs the svp plugin without --headless, SalInstance::CreateDragSource skips its GenericDragSource stub (gated on headless/unittest/uitest) and the svp backend's ImplCreateDragSource returns null. (The corresponding getDropTarget only passes because Window::GetDropTarget always returns a non-null DNDListenerContainer wrapper.) Signed-off-by: Stephan Bergmann <stephan.bergmann@collabora.com> Change-Id: I2c76b27e22e99612d8030598f338a78ca7c55ec3 Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/4187 Reviewed-by: Noel Grandin <noel.grandin@collabora.com> Tested-by: Jenkins CPCI <releng@collaboraoffice.com> (cherry picked from commit c35ff1648f319723710a9143fbeb9ecf1a7fec70) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/206645 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org> |
||
|
|
3b7ee6670b |
Skip zero-area children in the getAccessibleAtPoint test
JunitTest_svtools_unoapi's svtools.AccessibleTabBar failed its XAccessibleComponent check: > LOG> Checking child with bounds (0,35),(754,0): 40,(): > LOG> StateType containsPoint SHOWING: true > LOG> finding the point which lies on the component > LOG> Child found at point (377,35) - OK > LOG> The children found is not the same > LOG> Expected: > LOG> Found: > LOG> (xAccCh==null: false; expIndex: 3; gotIndex: 0) > LOG> ... FAILED The tested object is the first PANEL of a Calc window, which has an empty SfxInfoBarContainerWindow child: a shown, zero-height accessible at (0,35),(754,0) overlapping the document panel below it. The test picks each child's centre and expects getAccessibleAtPoint there to return that child, but a zero-area child contains no point, so the probe at (377,35) returns the overlapping document panel (index 0) instead of the container (index 3). Signed-off-by: Stephan Bergmann <stephan.bergmann@collabora.com> Change-Id: I3f9b6378c036e26b4ec4c30ee65bc7cd0dba6ac2 Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/4177 Reviewed-by: Michael Stahl <michael.stahl@collabora.com> Tested-by: Jenkins CPCI <releng@collaboraoffice.com> (cherry picked from commit 9a1c9dc5c46632a858a74930f3432c0f6d76027b) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/206432 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org> |
||
|
|
9cd7ef2e7e |
external/nss: Fix out-of-bounds read
Ever since
|
||
|
|
fc806ad566 |
UBSan apparently needs ScDrawView RTTI now
...in CppunitTest_sc_sheetview_test Change-Id: I840d4b76dd67683084bd27bd328b3c264c0ae972 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/203047 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Michael Stahl <michael.stahl@collabora.com> (cherry picked from commit 2ee4aea9ccd34011abd6ee04bf01fe8f140e317b) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/205646 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org> |
||
|
|
5f76dc0194 |
Avoid premature downcast
With
|
||
|
|
811769f009 |
Consistently use __EMSCRIPTEN__ instead of EMSCRIPTEN macro
...as emsdk 5.0.3 deprecated the predefined EMSCRIPTEN macro (see <https://github.com/emscripten-core/emscripten/commit/506052bd8b4e23ded7f2351c62ca3b24d40c8cf3> "Warn about usage of deprecated EMSCRIPTEN macro. NFC (#26381)"), causing failures like > In file included from static/source/unoembindhelpers/PrimaryBindings.cxx:29: > In file included from include/sfx2/viewsh.hxx:35: > In file included from include/editeng/outliner.hxx:32: > In file included from include/tools/color.hxx:26: > include/osl/endian.h:66:15: error: macro 'EMSCRIPTEN' has been marked as deprecated: use __EMSCRIPTEN__ instead [-Werror,-Wdeprecated-pragma] > 66 | #elif defined EMSCRIPTEN > | ^ > /home/sberg/emsdk/5.0.4/emsdk/emscripten/main/cache/sysroot/include/emscripten/emscripten.h:35:66: note: macro marked 'deprecated' here > 35 | #pragma clang deprecated(EMSCRIPTEN, "use __EMSCRIPTEN__ instead") > | ^ To avoid confusion, also suppress the -D$(OS) in solenv/gbuild/platform/unxgcc.mk that would unnecessarily keep defining EMSCRIPTEN. Change-Id: Ic1f187cf1c6417cd95d4092e9cea01a665bd1b2f Reviewed-on: https://gerrit.collaboraoffice.com/c/core/+/34 Reviewed-by: Michael Stahl <michael.stahl@collabora.com> Tested-by: Jenkins CPCI <releng@collaboraoffice.com> (cherry picked from commit 50291c2ed83bdb49bb827a4a12905d94b8c42035) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/205167 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de> |
||
|
|
f403d56b9a |
jsuno: Return script's last expression value (as JSON)
Signed-off-by: Stephan Bergmann <stephan.bergmann@collabora.com> Change-Id: I009d60d36a1279b42d12fa4e3b0369aeab4af51e Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/2078 Tested-by: Jenkins CPCI <releng@collaboraoffice.com> Reviewed-by: Michael Stahl <michael.stahl@collabora.com> (cherry picked from commit daf47e0b734a0985fe5051ac1ce62c5fbed82802) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/205119 Tested-by: Jenkins Reviewed-by: Neil Roberts <nroberts@libreoffice.org> |
||
|
|
368792e83c |
jsuno: Throw css.script.provider.ScriptExceptionRaisedException on JS errors
Signed-off-by: Stephan Bergmann <stephan.bergmann@collabora.com> Change-Id: Ia5df077d78b1650e28bf73716a10fdbd024f6e8a Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/2077 Tested-by: Jenkins CPCI <releng@collaboraoffice.com> Reviewed-by: Michael Stahl <michael.stahl@collabora.com> (cherry picked from commit a4feac2f06bf3d1a6ed55a94dd5e05d01fc0f7c4) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/205118 Reviewed-by: Neil Roberts <nroberts@libreoffice.org> Tested-by: Jenkins |
||
|
|
bedeae9485 |
jsuno: flush std::cout after each console.log line
...to better accommodate to scenarios where the engine's stdout is piped (e.g., under online's `make run | tee`) Signed-off-by: Stephan Bergmann <stephan.bergmann@collabora.com> Change-Id: I991b206746723f206c84052c3440cd95b42fb9de Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/1832 Tested-by: Jenkins CPCI <releng@collaboraoffice.com> Reviewed-by: Michael Stahl <michael.stahl@collabora.com> (cherry picked from commit 695993c5dfb3f8126d9cc2cd89daa9e921f160a1) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/205117 Tested-by: Jenkins Reviewed-by: Neil Roberts <nroberts@libreoffice.org> |
||
|
|
faeda637f6 |
Add JS generator support for css.container.XEnumerationAccess
...similar to <https://github.com/allotropia/zetajs/commit/ea7bfb5ac1ede0aa3ed92bb14e55ddaadcd23d22> "Add JS generator support for css.container.XEnumerationAccess" Signed-off-by: Stephan Bergmann <stephan.bergmann@collabora.com> Change-Id: I793045d534e3b2a62de24c44689797ec24d3d555 Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/1612 Reviewed-by: Michael Stahl <michael.stahl@collabora.com> Tested-by: Jenkins CPCI <releng@collaboraoffice.com> (cherry picked from commit ef35e615ea97b0cd6526b0935a7da5d57cd3a535) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/205116 Reviewed-by: Neil Roberts <nroberts@libreoffice.org> Tested-by: Jenkins |
||
|
|
da6eea908e |
Fix heap-use-after-free
...as uncovered by 448426998cc561414ec250d0dc7f0a72ea10c757 "lsan:fix leak of VbaEventsHelperBase instances" in UITest_calc_tests9, > ==3008693==ERROR: AddressSanitizer: heap-use-after-free on address 0x7c90789fc488 at pc 0x7b70220491ba bp 0x7ffc8e6e67a0 sp 0x7ffc8e6e6798 > READ of size 8 at 0x7c90789fc488 thread T0 > #0 in osl::Mutex::release() at include/osl/mutex.hxx:77:37 > #1 in osl::Guard<osl::Mutex>::~Guard() at include/osl/mutex.hxx:146:17 > #2 in ScVbaEventListener::processWindowResizeEvent(void*) at sc/source/ui/vba/vbaeventshelper.cxx:515:1 > #3 in ScVbaEventListener::LinkStubprocessWindowResizeEvent(void*, void*) at sc/source/ui/vba/vbaeventshelper.cxx:478:32 > #4 in Link<void*, void>::Call(void*) const at include/tools/link.hxx:105:45 > #5 in ImplHandleUserEvent(ImplSVEvent*) at vcl/source/window/winproc.cxx:2311:30 > #6 in ImplWindowFrameProc(vcl::Window*, SalEvent, void const*) at vcl/source/window/winproc.cxx:2868:13 > #7 in SalFrame::CallCallback(SalEvent, void const*) const at vcl/inc/salframe.hxx:310:29 > #8 in SvpSalInstance::ProcessEvent(SalUserEventList::SalUserEvent) at vcl/headless/svpinst.cxx:289:22 > #9 in non-virtual thunk to SvpSalInstance::ProcessEvent(SalUserEventList::SalUserEvent) at vcl/headless/svpinst.cxx > #10 in SalUserEventList::DispatchUserEvents(bool)::$_0::operator()() const at vcl/source/app/salusereventlist.cxx:119:58 > #11 in SalUserEventList::DispatchUserEvents(bool) at vcl/source/app/salusereventlist.cxx:120:13 > #12 in SvpSalInstance::ImplYield(bool, bool) at vcl/headless/svpinst.cxx:442:22 > #13 in SvpSalInstance::DoYield(bool, bool) at vcl/headless/svpinst.cxx:519:21 > #14 in InnerYield(bool, bool) at vcl/source/app/svapp.cxx:389:48 > #15 in Application::Yield() at vcl/source/app/svapp.cxx:502:5 > #16 in Application::Execute() at vcl/source/app/svapp.cxx:364:13 > #17 in desktop::Desktop::Main() at desktop/source/app/app.cxx:1681:13 > > 0x7c90789fc488 is located 72 bytes inside of 264-byte region [0x7c90789fc440,0x7c90789fc548) > freed by thread T0 here: > #0 in free at ~/github.com/llvm/llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:51:3 > #1 in rtl_freeMemory at sal/rtl/alloc_global.cxx:43:5 > #2 in cppu::OWeakObject::operator delete(void*) at include/cppuhelper/weak.hxx:88:11 > #3 in ScVbaEventListener::~ScVbaEventListener() at sc/source/ui/vba/vbaeventshelper.cxx:120:7 > #4 in cppu::OWeakObject::release() at cppuhelper/source/weak.cxx:230:9 > #5 in cppu::WeakImplHelper<com::sun::star::awt::XTopWindowListener, com::sun::star::awt::XWindowListener, com::sun::star::frame::XBorderResizeListener, com::sun::star::util::XChangesListener>::release() at include/cppuhelper/implbase.hxx:115:66 > #6 in ScVbaEventListener::processWindowResizeEvent(void*) at sc/source/ui/vba/vbaeventshelper.cxx:514:5 Signed-off-by: Stephan Bergmann <stephan.bergmann@collabora.com> Change-Id: I150e2b0da80aa816c3c4b9650ee92d0604e14790 (cherry-picked from commit I150e2b0da80aa816c3c4b9650ee92d0604e14790) Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/2310 Tested-by: Jenkins CPCI <releng@collaboraoffice.com> Reviewed-by: Noel Grandin <noel.grandin@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/205024 Tested-by: Jenkins Reviewed-by: Julien Nabet <serval2412@yahoo.fr> |
||
|
|
f072c00d6f |
Fix numeric_limits::min() used as max initial value
Since
|
||
|
|
ccc9e61ba4 |
external/redland: Fix stack-buffer-overflow on key dereference
...as seen once during CppunitTest_sw_odfexport4, > ==866789==ERROR: AddressSanitizer: stack-buffer-overflow on address 0x7b809fb6b840 at pc 0x7f80a848e8fe bp 0x7ffe1b257020 sp 0x7ffe1b2567d0 > READ of size 141 at 0x7b809fb6b840 thread T0 > #0 in MemcmpInterceptorCommon(void*, int (*)(void const*, void const*, unsigned long), void const*, void const*, unsigned long) at ~/github.com/llvm/llvm-project/compiler-rt/lib/asan/../sanitizer_common/sanitizer_common_interceptors.inc:849:7 > #1 in memcmp at ~/github.com/llvm/llvm-project/compiler-rt/lib/asan/../sanitizer_common/sanitizer_common_interceptors.inc:881:10 > #2 in librdf_hash_memory_delete_key_value at engine/workdir/UnpackedTarball/redland/src/rdf_hash_memory.c:913:41 > #3 in librdf_hash_delete at engine/workdir/UnpackedTarball/redland/src/rdf_hash.c:965:10 > #4 in librdf_storage_hashes_add_remove_statement at engine/workdir/UnpackedTarball/redland/src/rdf_storage_hashes.c:713:14 > #5 in librdf_storage_hashes_context_remove_statement at engine/workdir/UnpackedTarball/redland/src/rdf_storage_hashes.c:1537:6 > #6 in librdf_storage_context_remove_statement at engine/workdir/UnpackedTarball/redland/src/rdf_storage.c:1595:10 > #7 in librdf_model_storage_context_remove_statement at engine/workdir/UnpackedTarball/redland/src/rdf_model_storage.c:470:10 > #8 in librdf_model_context_remove_statement at engine/workdir/UnpackedTarball/redland/src/rdf_model.c:1338:10 > #9 in (anonymous namespace)::librdf_Repository::removeStatementsGraph_NoLock(com::sun::star::uno::Reference<com::sun::star::rdf::XResource> const&, com::sun::star::uno::Reference<com::sun::star::rdf::XURI> const&, com::sun::star::uno::Reference<com::sun::star::rdf::XNode> const&, com::sun::star::uno::Reference<com::sun::star::rdf::XURI> const&) at engine/unoxml/source/rdf/librdf_repository.cxx:1935:13 > #10 in (anonymous namespace)::librdf_NamedGraph::removeStatements(com::sun::star::uno::Reference<com::sun::star::rdf::XResource> const&, com::sun::star::uno::Reference<com::sun::star::rdf::XURI> const&, com::sun::star::uno::Reference<com::sun::star::rdf::XNode> const&) at engine/unoxml/source/rdf/librdf_repository.cxx:821:11 > #11 in SwRDFHelper::clearStatements(rtl::Reference<SwXTextDocument> const&, rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::rdf::XResource> const&) at engine/sw/source/core/doc/rdfhelper.cxx:164:21 > #12 in SwTextNode::DestroyAttr(SwTextAttr*) at engine/sw/source/core/txtnode/thints.cxx:1294:17 > #13 in SwTextNode::EraseText(SwContentIndex const&, int, SwInsertFlags) at engine/sw/source/core/txtnode/ndtxt.cxx:2920:13 > #14 in SwTextNode::EraseText(SwPosition const&, int, SwInsertFlags) at engine/sw/source/core/txtnode/ndtxt.cxx:2848:5 > #15 in SwUndoDelete::SaveContent(SwPosition const*, SwPosition const*, SwTextNode*, SwTextNode*) at engine/sw/source/core/undo/undel.cxx:476:21 > #16 in SwUndoDelete::SwUndoDelete(SwPaM&, SwDeleteFlags, bool, bool) at engine/sw/source/core/undo/undel.cxx:264:22 > #17 in std::__detail::_MakeUniq<SwUndoDelete>::__single_object std::make_unique<SwUndoDelete, SwPaM&, SwDeleteFlags const&>(SwPaM&, SwDeleteFlags const&) at ~/gcc/inst/lib/gcc/x86_64-pc-linux-gnu/17.0.0/../../../../include/c++/17.0.0/bits/unique_ptr.h:1086:34 > #18 in sw::DocumentContentOperationsManager::DeleteRangeImplImpl(SwPaM&, SwDeleteFlags) at engine/sw/source/core/doc/DocumentContentOperationsManager.cxx:4600:54 > #19 in sw::DocumentContentOperationsManager::DeleteRangeImpl(SwPaM&, SwDeleteFlags) at engine/sw/source/core/doc/DocumentContentOperationsManager.cxx:4526:26 > #20 in sw::DocumentContentOperationsManager::DeleteAndJoinImpl(SwPaM&, SwDeleteFlags) at engine/sw/source/core/doc/DocumentContentOperationsManager.cxx:4497:26 > #21 in (anonymous namespace)::lcl_DoWithBreaks(sw::DocumentContentOperationsManager&, SwPaM&, SwDeleteFlags, bool (sw::DocumentContentOperationsManager::*)(SwPaM&, SwDeleteFlags)) at engine/sw/source/core/doc/DocumentContentOperationsManager.cxx:688:20 > #22 in sw::DocumentContentOperationsManager::DeleteAndJoin(SwPaM&, SwDeleteFlags) at engine/sw/source/core/doc/DocumentContentOperationsManager.cxx:2395:22 > #23 in SwXMeta::dispose() at engine/sw/source/core/unocore/unorefmk.cxx:868:50 > #24 in SwXMetaField::dispose() at engine/sw/source/core/unocore/unorefmk.cxx:1241:21 > #25 in SwXText::removeTextContent(com::sun::star::uno::Reference<com::sun::star::text::XTextContent> const&) at engine/sw/source/core/unocore/unotext.cxx:745:15 > #26 in (anonymous namespace)::lcl_RemoveParagraphMetadataField(com::sun::star::uno::Reference<com::sun::star::text::XTextField> const&) at engine/sw/source/core/edit/edfcol.cxx:539:28 > #27 in lcl_ApplyParagraphClassification(SwDoc*, rtl::Reference<SwXTextDocument> const&, rtl::Reference<SwXParagraph> const&, com::sun::star::uno::Reference<com::sun::star::rdf::XResource> const&, std::__debug::vector<svx::ClassificationResult, std::allocator<svx::ClassificationResult>>) at engine/sw/source/core/edit/edfcol.cxx:1182:9 > #28 in SwEditShell::RestoreMetadataFieldsAndValidateParagraphSignatures() at engine/sw/source/core/edit/edfcol.cxx:2010:13 > #29 in SwEditShell::SwEditShell(SwDoc&, vcl::Window*, SwViewOption const*) at engine/sw/source/core/edit/edws.cxx:58:5 > #30 in SwFEShell::SwFEShell(SwDoc&, vcl::Window*, SwViewOption const*) at engine/sw/source/core/frmedt/fews.cxx:688:7 > #31 in SwWrtShell::SwWrtShell(SwDoc&, vcl::Window*, SwView&, SwViewOption const*) at engine/sw/source/uibase/wrtsh/wrtsh1.cxx:2141:7 > #32 in SwView::SwView(SfxViewFrame&, SfxViewShell*) at engine/sw/source/uibase/uiview/view.cxx:924:31 > #33 in SwView::CreateInstance(SfxViewFrame&, SfxViewShell*) at engine/sw/source/uibase/uiview/view0.cxx:82:28 > #34 in SfxViewFactory::CreateInstance(SfxViewFrame&, SfxViewShell*) at engine/sfx2/source/view/viewfac.cxx:26:12 > #35 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&) at engine/sfx2/source/doc/sfxbasemodel.cxx:4346:46 > #36 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&) at engine/sfx2/source/doc/sfxbasemodel.cxx > #37 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&) at engine/sfx2/source/view/frmload.cxx:586:60 > #38 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&) at engine/sfx2/source/view/frmload.cxx:813:13 > #39 in framework::LoadEnv::impl_loadContent() at engine/framework/source/loadenv/loadenv.cxx:1172:37 > #40 in framework::LoadEnv::start() at engine/framework/source/loadenv/loadenv.cxx:408:20 > #41 in framework::LoadEnv::startLoading(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&, rtl::OUString const&, int, LoadEnvFeatures) at engine/framework/source/loadenv/loadenv.cxx:304:5 > #42 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&) at engine/framework/source/loadenv/loadenv.cxx:168:14 > #43 in framework::Desktop::loadComponentFromURL(rtl::OUString const&, rtl::OUString const&, int, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) at engine/framework/source/services/desktop.cxx:594:16 > #44 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&) at engine/framework/source/services/desktop.cxx > #45 in unotest::MacrosTest::loadFromDesktop(rtl::OUString const&, rtl::OUString const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) at engine/unotest/source/cpp/macros_test.cxx:74:62 > #46 in UnoApiTest::loadWithParams(rtl::OUString const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) at engine/test/source/unoapi_test.cxx:323:19 > #47 in UnoApiTest::loadFromURL(rtl::OUString const&, char const*) at engine/test/source/unoapi_test.cxx:305:5 > #48 in SwModelTestBase::loadURL(rtl::OUString const&, char const*) at engine/sw/qa/unit/swmodeltestbase.cxx:382:5 > #49 in SwModelTestBase::saveAndReload(TestFilter, char const*) at engine/sw/qa/unit/swmodeltestbase.cxx:393:5 > #50 in SwModelTestBase::executeLoadVerifyReloadVerify(char const*, TestFilter) at engine/sw/qa/unit/swmodeltestbase.cxx:69:5 > #51 in (anonymous namespace)::testTdf160877::Load_Verify_Reload_Verify() at engine/sw/qa/extras/odfexport/odfexport4.cxx:1199:1 > > Address 0x7b809fb6b840 is located in stack of thread T0 at offset 64 in frame > #0 in librdf_storage_hashes_add_remove_statement at engine/workdir/UnpackedTarball/redland/src/rdf_storage_hashes.c:632 > > This frame has 2 object(s): > [32, 64) 'hd_key' (line 648) > [96, 128) 'hd_value' (line 648) <== Memory access at offset 64 partially underflows this variable Signed-off-by: Stephan Bergmann <stephan.bergmann@collabora.com> Change-Id: I5ad3b66055440fdfdef93c33b766435b87da53ca Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/1896 Tested-by: Jenkins CPCI <releng@collaboraoffice.com> Reviewed-by: Michael Stahl <michael.stahl@collabora.com> (cherry picked from commit b0c56121dbc8c31ded8ae8bdd8a288a69b5c2f26) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/204797 Tested-by: Jenkins Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org> |
||
|
|
6b31c63ec7 |
QuickJS-based JS UNO support
Somewhat loosely based on <https://github.com/allotropia/zetajs>. Main part that is still missing from this WIP commit is implementing UNO objects in JS. (And there are a number of TODOs throughout, mostly regarding error handling.) === Comments from Neil Roberts: This patch was cherry-picked from 1cd8ad398b38763cb3578f1305a28e7774163714 in Collabora’s repo. The following changes were made in order to get it to pass the CI: * The unit test has been modified to continue using embindtest instead of testuno. * The name of the external library is quickjs instead of qjs because a different patch is used to add the external QuickJS package. * The asserts on argc that were captured in the lambda function have been moved outside of the lambda function in order to avoid having an unused capture on release builds. The argc parameter has then been marked as [[maybe_unused]]. * The constructors for JSClassDef have been changed to consistently use { } brace initialisers because otherwise it fails to build on macOS. === Change-Id: I8810e43fe5f3e4b1a53a654070fe87e95f51231a Reviewed-on: https://gerrit.collaboraoffice.com/c/core/+/190 Tested-by: Jenkins CPCI <releng@collaboraoffice.com> Reviewed-by: Michael Stahl <michael.stahl@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/203963 Tested-by: Jenkins Reviewed-by: Neil Roberts <nroberts@libreoffice.org> |
||
|
|
06722ab080 |
-Werror,-Wundef (Emscripten)
Change-Id: I214ab5ad19173372849bf43a11a66f3c0b052238 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/202930 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <stephan.bergmann@collabora.com> |
||
|
|
abb0783c0a |
ScTokenArray needs to be a complete type here
...after 865521aee1b989afd2c994bbbdc6a5e319940d92 "tdf#166791 sc: handle copy/paste when selection overlaps array formulas", > In file included from sc/source/ui/docshell/arealink.cxx:20: > In file included from include/sfx2/fcontnr.hxx:25: > In file included from include/rtl/ustring.hxx:45: > In file included from include/rtl/string.hxx:51: > In file included from include/rtl/stringconcat.hxx:22: > In file included from /usr/lib/gcc/x86_64-redhat-linux/16/../../../../include/c++/16/memory:80: > /usr/lib/gcc/x86_64-redhat-linux/16/../../../../include/c++/16/bits/unique_ptr.h:90:16: error: invalid application of 'sizeof' to an incomplete type 'ScTokenArray' > 90 | static_assert(sizeof(_Tp)>0, > | ^~~~~~~~~~~ > /usr/lib/gcc/x86_64-redhat-linux/16/../../../../include/c++/16/bits/unique_ptr.h:398:4: note: in instantiation of member function 'std::default_delete<ScTokenArray>::operator()' requested here > 398 | get_deleter()(std::move(__ptr)); > | ^ > sc/source/ui/inc/undoblk.hxx:759:84: note: in instantiation of member function 'std::unique_ptr<ScTokenArray>::~unique_ptr' requested here > 759 | std::unique_ptr<ScTokenArray> pTokenArray = nullptr ); > | ^ > sc/inc/rangenam.hxx:33:7: note: forward declaration of 'ScTokenArray' > 33 | class ScTokenArray; > | ^ Change-Id: I40f7b71c913f3cd3bd17cf943e57e2401c29fb23 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/202690 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <stephan.bergmann@collabora.com> |
||
|
|
843122769d |
XMLPropertyState must be a complete type here
...contrary to what
|
||
|
|
c6302b4eda |
Support Clang -shared-libsan
...instead of using the default -static-libsan, where dynamic libraries must be built without -z defs and where all executables must link against the static libsan. Dropping the latter requirement means that we no longer need the static sal hack in Library_jpipe. But instead, at runtime, when a process loads any library that links against the dynamic libsan, then that dynamic libsan must be loaded first into the process. For executables that are themselves linked against the dynamic libsan, that is already the case. For scenarios where we invoke a Java executable, we now use LD_PRELOAD to fulfil that requirement. (And for invocation of Python executables, this commit assumes a --enable-python=fully-internal configuration, so that executable will be itself linked against the dynamic libsan.) Dropping the requirement to build without -z defs revealed that using -fsanitize=vptr often requires RTTI symbols from libraries that are not usually linked against. Such cases are now handled by conditionally including those libraries in gb_*_use_libraries calls. (This could be restricted even further to only be done under -shared-libsan, but it arguably doesn't hurt to also do it under the default -static-libsan.) The expectation is that -shared-libsan will explicitly be passed into the configuration along with any other -fsanitize... arguments via --with-extra-cc-flags and --with-extra-cxx-flags. This commit does not yet remove the code that is only needed for the (default) -static-libsan caes, but that code could eventually be cleaned up, once all (Clang) builds using sanitizers use -shared-libsan. (GCC already defaults to a shared model. Instead of a combined -shared-libsan, it has individual -shared-libasan etc., though. This commit does not intend to make any changes to any potential GCC sanitizer builds; my assumption is that we do not have any such, and that they wouldn't work out of the box, neither before nor after this change.) Change-Id: I932e4b75c299c158211e122adf33d7988892a87e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/200935 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <stephan.bergmann@collabora.com> |
||
|
|
b475873cd0 |
Stop using gb_CppunitTest_use_library_objects in CppunitTest_oox_tokenmap
...by simply making the two used functions OOX_DLLPUBLIC.
This solves an issue for mergelibs builds, where
|
||
|
|
921f41924f |
external/libnumbertext: Silence -Werror,-Wdeprecated-declarations
...when building against emsdk 5.0.2,
> In file included from Numbertext.cxx:6:
> In file included from ~/emsdk/5.0.2/emsdk/emscripten/main/cache/sysroot/include/c++/v1/locale:203:
> ~/emsdk/5.0.2/emsdk/emscripten/main/cache/sysroot/include/c++/v1/__locale_dir/wstring_convert.h:179:1: error: 'wstring_convert<std::codecvt_utf8<wchar_t>>' is deprecated [-Werror,-Wdeprecated-declarations]
> 179 | wstring_convert<_Codecvt, _Elem, _WideAlloc, _ByteAlloc>::to_bytes(const _Elem* __frm, const _Elem* __frm_end) {
> | ^
> ~/emsdk/5.0.2/emsdk/emscripten/main/cache/sysroot/include/c++/v1/__locale_dir/wstring_convert.h:83:12: note: in instantiation of member function 'std::wstring_convert<std::codecvt_utf8<wchar_t>>::to_bytes' requested here
> 83 | return to_bytes(__wstr.data(), __wstr.data() + __wstr.size());
> | ^
> Numbertext.cxx:160:22: note: in instantiation of member function 'std::wstring_convert<std::codecvt_utf8<wchar_t>>::to_bytes' requested here
> 160 | return converter.to_bytes( s );
> | ^
> ~/emsdk/5.0.2/emsdk/emscripten/main/cache/sysroot/include/c++/v1/__locale_dir/wstring_convert.h:34:7: note: 'wstring_convert<std::codecvt_utf8<wchar_t>>' has been explicitly marked deprecated here
> 34 | class _LIBCPP_DEPRECATED_IN_CXX17 wstring_convert {
> | ^
> ~/emsdk/5.0.2/emsdk/emscripten/main/cache/sysroot/include/c++/v1/__config:740:41: note: expanded from macro '_LIBCPP_DEPRECATED_IN_CXX17'
> 740 | # define _LIBCPP_DEPRECATED_IN_CXX17 _LIBCPP_DEPRECATED
> | ^
> ~/emsdk/5.0.2/emsdk/emscripten/main/cache/sysroot/include/c++/v1/__config:713:49: note: expanded from macro '_LIBCPP_DEPRECATED'
> 713 | # define _LIBCPP_DEPRECATED __attribute__((__deprecated__))
> | ^
So following up on
|
||
|
|
af82f165ca |
Avoid unspecified behavior when checking for "pointer in range"
...which can easily cause wrong behavior. (Maybe we can eventually replace the use of Boost here with Standard C++, if something like <https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2024/p3234r1.html> "Utility to check if a pointer is in a given range" ever gets in.) Change-Id: I9122efdd3272613b27c33a0d7dbc04ad2d6e39e4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/200454 Reviewed-by: Stephan Bergmann <stephan.bergmann@collabora.com> Tested-by: Jenkins |
||
|
|
cdf292b4db |
Don't direct veraPDF stderr into output file
This redirection was introduced in
|
||
|
|
9b4077998d |
Add test
...for 0468b71c3f284ad6f7826aee79b8adb1998fc018 "fix asan heap-use-after-free" Change-Id: I4045a2a3635d628d7f681406bd6a8b9f26fa23d3 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/200351 Reviewed-by: Stephan Bergmann <stephan.bergmann@collabora.com> Tested-by: Jenkins |
||
|
|
b327527847 |
More verbose test failure output
...to hopefully find out why <https://ci.libreoffice.org/job/lo_ubsan/3822/> started to fail JunitTest_toolkit_unoapi_1 with > checking: [toolkit.AccessibleMenuSeparator::com::sun::star::accessibility::XAccessibleContext] is iface: [com.sun.star.accessibility.XAccessibleContext] testcode: [ifc.accessibility._XAccessibleContext] [...] > LOG> Execute: getAccessibleIndexInParent() > LOG> starting required method: getAccessibleParent() > LOG> Expected: com.sun.star.comp.toolkit.AccessibleMenuSeparator > LOG> Getting: com.sun.star.comp.toolkit.AccessibleMenuSeparator > Method getAccessibleIndexInParent() finished with state FAILED > LOG> getAccessibleIndexInParent(): COMPLETED.FAILED Change-Id: Ie426b0d9f05859ce159bd733d68ff1db77f34350 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/200384 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <stephan.bergmann@collabora.com> |
||
|
|
89ae3faf6e |
Revert "Fix heap-use-after-free"
This reverts commit
|
||
|
|
a14686cb54 |
SfxPoolItem must be a complete type here
...contrary to what
|
||
|
|
4f4a06ed1a |
Filter more -fsanitize arguments out of COMPILER_PLUGINS_CXX
...so that e.g. -fsanitize-address-globals-dead-stripping doesn't lead to build failures like > [CXX] compilerplugins/clang/automem.cxx > clang++: error: argument unused during compilation: '-fsanitize-address-globals-dead-stripping' [-Werror,-Wunused-command-line-argument] Change-Id: I97524edd64d7dd764cb5d8a8a3b5d28fff6d3fd9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/200140 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <stephan.bergmann@collabora.com> |
||
|
|
8a23084213 |
UBSan apparently needs ScScenariosObj etc. RTTI now
...presumably since
|
||
|
|
6dfc360158 |
Missing include (USHRT_MAX)
Change-Id: I088c23f4011919ef3a572872622230c3dc2f870a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/200037 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <stephan.bergmann@collabora.com> |
||
|
|
5fd256977b |
SvXMLImportPropertyMapper appears to be required to be a complete type here
...contrary to what
|
||
|
|
8f6d4fb1a4 |
external/harfbuzz: Fix emscripten build
...after
|
||
|
|
7bac6ec0a2 |
Adapt to change in emsdk 5.0.1 version.h
(<https://github.com/emscripten-core/emscripten/commit/4cce5e9a4a245713df7fc5bf4ad1e6d7463cbf4b> "Use uppercase for version macros (#26180)"Adapt to change in emsdk 5.0.1 version.h (<https://github.com/emscripten-core/emscripten/commit/4cce5e9a4a245713df7fc5bf4ad1e6d7463cbf4b> "Use uppercase for version macros (#26180)") Change-Id: I4cdf2447213ae82763f1cb1a19e84600c6267908 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/199995 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <stephan.bergmann@collabora.com> |
||
|
|
160aaa3e9c |
Even more CppunitTests need the ASan hack now
...from
|
||
|
|
15995c4d46 |
Fix heap-use-after-free
...as seen during CppunitTest_sd_tiledrendering2, > ==1656617==ERROR: AddressSanitizer: heap-use-after-free on address 0x531000155fe7 at pc 0x55e2bd9ad71d bp 0x7ffde61a2210 sp 0x7ffde61a19d0 > READ of size 177 at 0x531000155fe7 thread T0 > #0 0x55e2bd9ad71c in __asan_memcpy /home/tdf/lode/packages/llvm-llvmorg-18.1.8.src/compiler-rt/lib/asan/asan_interceptors_memintrinsics.cpp:63:3 > #1 0x7f9c90d91bb2 in SvMemoryStream::PutData(void const*, unsigned long) /tools/source/stream/stream.cxx:1578:5 > #2 0x7f9c90d6e77f in SvStream::WriteBytes(void const*, unsigned long) /tools/source/stream/stream.cxx:1195:26 > #3 0x7f9c83b80030 in vcl::filter::PDFDocument::WriteCatalogObject(int, vcl::filter::PDFReferenceElement*&) /vcl/source/filter/ipdf/pdfdocument.cxx:577:27 > > 0x531000155fe7 is located 6119 bytes inside of 65180-byte region [0x531000154800,0x53100016469c) > freed by thread T0 here: > #0 0x55e2bd9faf30 in operator delete[](void*) /home/tdf/lode/packages/llvm-llvmorg-18.1.8.src/compiler-rt/lib/asan/asan_new_delete.cpp:146:3 > #1 0x7f9c90d8f873 in SvMemoryStream::FreeMemory() /tools/source/stream/stream.cxx:1694:9 > #2 0x7f9c90d92f0f in SvMemoryStream::ReAllocateMemory(long) /tools/source/stream/stream.cxx:1671:9 > #3 0x7f9c90d91703 in SvMemoryStream::PutData(void const*, unsigned long) /tools/source/stream/stream.cxx:1569:22 > #4 0x7f9c90d6e77f in SvStream::WriteBytes(void const*, unsigned long) /tools/source/stream/stream.cxx:1195:26 > #5 0x7f9c83b80030 in vcl::filter::PDFDocument::WriteCatalogObject(int, vcl::filter::PDFReferenceElement*&) /vcl/source/filter/ipdf/pdfdocument.cxx:577:27 (<https://ci.libreoffice.org//job/lo_ubsan/3829/>) Change-Id: I38abb9870ffcce3aaf198543e130898817d8fe3e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/199944 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <stephan.bergmann@collabora.com> |
||
|
|
76836e39ca |
Avoid heap-buffer-overflow internally in md4c
...as seen during CppunitTest_sw_filter_md, > ==1418747==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x7b9a07967527 at pc 0x560f1d4a7b22 bp 0x7ffdd9a75f10 sp 0x7ffdd9a756d0 > READ of size 24 at 0x7b9a07967527 thread T0 > #0 in strcspn at ~/github.com/llvm/llvm-project/compiler-rt/lib/asan/../sanitizer_common/sanitizer_common_interceptors.inc:806:5 > #1 in md_analyze_line at workdir/UnpackedTarball/md4c/src/md4c.c:6230:26 > #2 in md_process_doc at workdir/UnpackedTarball/md4c/src/md4c.c:6404:18 > #3 in md_parse at workdir/UnpackedTarball/md4c/src/md4c.c:6483:11 > #4 in SwMarkdownParser::CallParser() at sw/source/filter/md/swmd.cxx:955:18 > #5 in MarkdownReader::Read(SwDoc&, rtl::OUString const&, SwPaM&, rtl::OUString const&) at sw/source/filter/md/swmd.cxx:838:19 > #6 in SwReader::Read(Reader const&) at sw/source/filter/basflt/shellio.cxx:209:26 > #7 in SwDocShell::ConvertFrom(SfxMedium&) at sw/source/uibase/app/docsh.cxx:230:29 > #8 in SfxObjectShell::DoLoad(SfxMedium*) at sfx2/source/doc/objstor.cxx:786:27 > #9 in SfxBaseModel::load(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) at sfx2/source/doc/sfxbasemodel.cxx:1982:36 > #10 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&) at sfx2/source/view/frmload.cxx:774:28 > #11 in framework::LoadEnv::impl_loadContent() at framework/source/loadenv/loadenv.cxx:1180:37 > #12 in framework::LoadEnv::start() at framework/source/loadenv/loadenv.cxx:416:20 > #13 in framework::LoadEnv::startLoading(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&, rtl::OUString const&, int, LoadEnvFeatures) at framework/source/loadenv/loadenv.cxx:312:5 > #14 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&) at framework/source/loadenv/loadenv.cxx:168:14 > #15 in framework::Desktop::loadComponentFromURL(rtl::OUString const&, rtl::OUString const&, int, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) at framework/source/services/desktop.cxx:594:16 > #16 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&) at framework/source/services/desktop.cxx > #17 in unotest::MacrosTest::loadFromDesktop(rtl::OUString const&, rtl::OUString const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) at unotest/source/cpp/macros_test.cxx:75:62 > #18 in UnoApiTest::loadFromURL(rtl::OUString const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&, char const*) at test/source/unoapi_test.cxx:271:19 > #19 in SwModelTestBase::loadURL(rtl::OUString const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&, char const*) at sw/qa/unit/swmodeltestbase.cxx:382:5 > #20 in SwModelTestBase::createSwDoc(char const*, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&, char const*) at sw/qa/unit/swmodeltestbase.cxx:423:9 > #21 in testBlockQuoteMdImport::TestBody() at sw/qa/filter/md/md.cxx:418:5 > > 0x7b9a07967527 is located 0 bytes after 23-byte region [0x7b9a07967510,0x7b9a07967527) > allocated by thread T0 here: > #0 in operator new[](unsigned long) at ~/github.com/llvm/llvm-project/compiler-rt/lib/asan/asan_new_delete.cpp:111:37 > #1 in SwMarkdownParser::CallParser() at sw/source/filter/md/swmd.cxx:924:26 > #2 in MarkdownReader::Read(SwDoc&, rtl::OUString const&, SwPaM&, rtl::OUString const&) at sw/source/filter/md/swmd.cxx:838:19 > #3 in SwReader::Read(Reader const&) at sw/source/filter/basflt/shellio.cxx:209:26 > #4 in SwDocShell::ConvertFrom(SfxMedium&) at sw/source/uibase/app/docsh.cxx:230:29 > #5 in SfxObjectShell::DoLoad(SfxMedium*) at sfx2/source/doc/objstor.cxx:786:27 > #6 in SfxBaseModel::load(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) at sfx2/source/doc/sfxbasemodel.cxx:1982:36 > #7 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&) at sfx2/source/view/frmload.cxx:774:28 > #8 in framework::LoadEnv::impl_loadContent() at framework/source/loadenv/loadenv.cxx:1180:37 > #9 in framework::LoadEnv::start() at framework/source/loadenv/loadenv.cxx:416:20 > #10 in framework::LoadEnv::startLoading(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&, rtl::OUString const&, int, LoadEnvFeatures) at framework/source/loadenv/loadenv.cxx:312:5 > #11 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&) at framework/source/loadenv/loadenv.cxx:168:14 > #12 in framework::Desktop::loadComponentFromURL(rtl::OUString const&, rtl::OUString const&, int, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) at framework/source/services/desktop.cxx:594:16 > #13 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&) at framework/source/services/desktop.cxx > #14 in unotest::MacrosTest::loadFromDesktop(rtl::OUString const&, rtl::OUString const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) at unotest/source/cpp/macros_test.cxx:75:62 > #15 in UnoApiTest::loadFromURL(rtl::OUString const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&, char const*) at test/source/unoapi_test.cxx:271:19 > #16 in SwModelTestBase::loadURL(rtl::OUString const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&, char const*) at sw/qa/unit/swmodeltestbase.cxx:382:5 > #17 in SwModelTestBase::createSwDoc(char const*, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&, char const*) at sw/qa/unit/swmodeltestbase.cxx:423:9 > #18 in testBlockQuoteMdImport::TestBody() at sw/qa/filter/md/md.cxx:418:5 Change-Id: I16c38a59a5c27d83906ec765c5382b2d2bf375e4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/199515 Reviewed-by: Stephan Bergmann <stephan.bergmann@collabora.com> Tested-by: Jenkins |
||
|
|
b6767f9aed |
Make external/firebird/sanitizer-rtti.patch apply again
Change-Id: Iea2240ebf02949f1d8ed0c50bca51d8cfdd25ea0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/199133 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <stephan.bergmann@collabora.com> |
||
|
|
2d9f4c0ba6 |
UBSan apparently needs ScFilterDescriptorBase RTTI now
...presumably since
|
||
|
|
19aac4ff39 |
missing includes
Change-Id: I5bc8b92caf4c55939dcdc4591f2c0e7b372ddad0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/198814 Reviewed-by: Stephan Bergmann <stephan.bergmann@collabora.com> Tested-by: Jenkins |
||
|
|
d5bdccccfd |
Even more CppunitTests need the ASan hack now
...from
|
||
|
|
9a110a047a |
Fix UBSan invalid-bool-load
...after
|
||
|
|
15ba366202 |
SvxAutoFormatDataField apparently needs a virtual dtor now
...given that with
|
||
|
|
5832a9db70 |
external/hsqldb: Adapt to java.applet gone from Java 26
...with a minimally invasive attempt of no longer building any affected functionality (and which was hopefully completely optional and not used by us) Change-Id: I087753e9ad0276150c90aa65c550213a9d1ec44b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/198679 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <stephan.bergmann@collabora.com> |
||
|
|
537057a44d |
external/beanshell: Adapt to java.applet gone from Java 26
...with a minimally invasive attempt of no longer building any affected functionality (and which was hopefully completely optional and not used by us) Change-Id: I32aef78f7257ffb558704a60e69878baee777537 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/198678 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <stephan.bergmann@collabora.com> |
||
|
|
05ba63c6fc |
Remove the Java OfficeBean example from the SDK
...now that java.applet (which it built upon) has been removed from Java 26 Change-Id: Idae7d231c2bfd249a1cdfa036e5eeacb71bd3050 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/198677 Reviewed-by: Stephan Bergmann <stephan.bergmann@collabora.com> Tested-by: Jenkins |
||
|
|
52ab468f2e |
Remove stray leading "h"
...that had been added apparently in error by
|
||
|
|
96cc64e29c |
Fix a loplugin:bufferadd false positive
(which would hit some yet-to-be-committed code) Change-Id: I101ae4f7d00ece9d48c96764114668484b0fdd5f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/198660 Reviewed-by: Stephan Bergmann <stephan.bergmann@collabora.com> Tested-by: Jenkins |
||
|
|
394cd5db81 |
Use some more ""_ustr literals
(in places that were otherwise hit by a libstdc++ 16 trunk issue involving std::source_location that is discussed at <https://gcc.gnu.org/pipermail/libstdc++/2026-February/065220.html> "Re: [PATCH 6/9 v4] libstdc++, contracts: Add base P2900R14 contracts support.") Change-Id: Iaedf3e44a5f2290e194286fa035ceed8fd40da45 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/198627 Reviewed-by: Stephan Bergmann <stephan.bergmann@collabora.com> Tested-by: Jenkins |
||
|
|
41bf66d08b |
Even more CppunitTests need the ASan hack now
...from
|
||
|
|
e8cd1878f6 |
Lets see if an empty sanitize-ubsan-excludelist is enough these days
...after
|
||
|
|
0c54c3f77a |
Point appears to be required to be a complete type here
...contrary to what
|
||
|
|
ea8780df8c |
-Werror,-Wunused-variable
...after
|
||
|
|
aee7b9b8e0 |
Avoid float-cast-overflow
...by completely getting rid of the code exhibiting UB and the helpless workaround from |
||
|
|
2c99f58b27 |
cppu_detail_getUnoType for PropertyValue should arguably be declared here
...contrary to what
|
||
|
|
ad040f7a8f |
NotebookBarAddonsItem appears to be required to be a complete type here
...contrary to what
|
||
|
|
bec1cfb664 |
Even more CppunitTests need the ASan hack now
...from
|
||
|
|
f6dc303ef5 |
missing include (for USHRT_MAX)
Change-Id: I1f923f34368f06d0d3cfda037b2a607fd364882d Reviewed-on: https://gerrit.libreoffice.org/c/core/+/198113 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <stephan.bergmann@collabora.com> |
||
|
|
53e932da93 |
-Werror,-Wunused-variable
...after
|
||
|
|
28951381c6 |
No more need for ReservedId::isInLokIncludeFile special casing
...after
|
||
|
|
84beb59bb7 |
Silence spurious -Werror=array-bounds=
seen at least with recent GCC 16 trunk,
> In file included from ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr.h:53,
> from ~/gcc/inst/include/c++/16.0.1/memory:82,
> from include/unotools/syslocale.hxx:25,
> from include/unotools/resmgr.hxx:24,
> from xmlsecurity/inc/resourcemanager.hxx:22,
> from xmlsecurity/source/component/documentdigitalsignatures.cxx:20:
> In destructor ‘std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::~_Sp_counted_ptr_inplace() [with _Tp = DigitalSignaturesDialog; _Alloc = std::allocator<void>; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’,
> inlined from ‘std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::~_Sp_counted_ptr_inplace() [with _Tp = DigitalSignaturesDialog; _Alloc = std::allocator<void>; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:670:45,
> inlined from ‘void std::_Sp_counted_base<_Lp>::_M_destroy() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:143:9,
> inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:424:18,
> inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:392:5,
> inlined from ‘std::__shared_count<_Lp>::~__shared_count() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1129:21,
> inlined from ‘std::__shared_ptr<_Tp, _Lp>::~__shared_ptr() [with _Tp = CertificateChooser; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1603:7,
> inlined from ‘std::shared_ptr<CertificateChooser>::~shared_ptr()’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr.h:175:11,
> inlined from ‘com::sun::star::uno::Sequence<com::sun::star::uno::Reference<com::sun::star::security::XCertificate> > {anonymous}::DocumentDigitalSignatures::chooseCertificatesImpl.constprop(SfxViewShell*, std::__debug::map<rtl::OUString, rtl::OUString>&, CertificateChooserUserAction, com::sun::star::security::CertificateKind)’ at xmlsecurity/source/component/documentdigitalsignatures.cxx:674:1:
> ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:670:45: error: array subscript ‘std::_Sp_counted_ptr_inplace<DigitalSignaturesDialog, std::allocator<void>, __gnu_cxx::_S_atomic>[0]’ is partly outside array bounds of ‘unsigned char [384]’ [-Werror=array-bounds=]
> 670 | ~_Sp_counted_ptr_inplace() noexcept { }
> | ^
> In file included from ~/gcc/inst/include/c++/16.0.1/x86_64-pc-linux-gnu/bits/c++allocator.h:33,
> from ~/gcc/inst/include/c++/16.0.1/bits/allocator.h:46,
> from ~/gcc/inst/include/c++/16.0.1/memory:67:
> In member function ‘_Tp* std::__new_allocator<_Tp>::allocate(size_type, const void*) [with _Tp = std::_Sp_counted_ptr_inplace<CertificateChooser, std::allocator<void>, __gnu_cxx::_S_atomic>]’,
> inlined from ‘constexpr _Tp* std::allocator< <template-parameter-1-1> >::allocate(std::size_t) [with _Tp = std::_Sp_counted_ptr_inplace<CertificateChooser, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at ~/gcc/inst/include/c++/16.0.1/bits/allocator.h:203:40,
> inlined from ‘static constexpr _Tp* std::allocator_traits<std::allocator<_Up> >::allocate(allocator_type&, size_type) [with _Tp = std::_Sp_counted_ptr_inplace<CertificateChooser, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at ~/gcc/inst/include/c++/16.0.1/bits/alloc_traits.h:614:28,
> inlined from ‘std::__allocated_ptr<_Alloc> std::__allocate_guarded(_Alloc&) [with _Alloc = allocator<_Sp_counted_ptr_inplace<CertificateChooser, allocator<void>, __gnu_cxx::_S_atomic> >]’ at ~/gcc/inst/include/c++/16.0.1/bits/allocated_ptr.h:103:69,
> inlined from ‘std::__shared_count<_Lp>::__shared_count(_Tp*&, std::_Sp_alloc_shared_tag<_Alloc>, _Args&& ...) [with _Tp = CertificateChooser; _Alloc = std::allocator<void>; _Args = {weld::Window*&, SfxViewShell*&, std::__debug::vector<com::sun::star::uno::Reference<com::sun::star::xml::crypto::XXMLSecurityContext>, std::allocator<com::sun::star::uno::Reference<com::sun::star::xml::crypto::XXMLSecurityContext> > >, CertificateChooserUserAction&}; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1027:9,
> inlined from ‘std::__shared_ptr<_Tp, _Lp>::__shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {weld::Window*&, SfxViewShell*&, std::__debug::vector<com::sun::star::uno::Reference<com::sun::star::xml::crypto::XXMLSecurityContext>, std::allocator<com::sun::star::uno::Reference<com::sun::star::xml::crypto::XXMLSecurityContext> > >, CertificateChooserUserAction&}; _Tp = CertificateChooser; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1805:14,
> inlined from ‘std::shared_ptr<_Tp>::shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {weld::Window*&, SfxViewShell*&, std::__debug::vector<com::sun::star::uno::Reference<com::sun::star::xml::crypto::XXMLSecurityContext>, std::allocator<com::sun::star::uno::Reference<com::sun::star::xml::crypto::XXMLSecurityContext> > >, CertificateChooserUserAction&}; _Tp = CertificateChooser]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr.h:463:59,
> inlined from ‘std::shared_ptr<std::_NonArray<_Tp> > std::make_shared(_Args&& ...) [with _Tp = CertificateChooser; _Args = {weld::Window*&, SfxViewShell*&, __debug::vector<com::sun::star::uno::Reference<com::sun::star::xml::crypto::XXMLSecurityContext>, allocator<com::sun::star::uno::Reference<com::sun::star::xml::crypto::XXMLSecurityContext> > >, CertificateChooserUserAction&}]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr.h:1066:39,
> inlined from ‘static std::shared_ptr<CertificateChooser> CertificateChooser::getInstance(weld::Window*, SfxViewShell*, std::__debug::vector<com::sun::star::uno::Reference<com::sun::star::xml::crypto::XXMLSecurityContext> >&&, CertificateChooserUserAction)’ at xmlsecurity/inc/certificatechooser.hxx:111:113,
> inlined from ‘com::sun::star::uno::Sequence<com::sun::star::uno::Reference<com::sun::star::security::XCertificate> > {anonymous}::DocumentDigitalSignatures::chooseCertificatesImpl.constprop(SfxViewShell*, std::__debug::map<rtl::OUString, rtl::OUString>&, CertificateChooserUserAction, com::sun::star::security::CertificateKind)’ at xmlsecurity/source/component/documentdigitalsignatures.cxx:664:171:
> ~/gcc/inst/include/c++/16.0.1/bits/new_allocator.h:151:73: note: object of size 384 allocated by ‘operator new’
> 151 | return static_cast<_Tp*>(_GLIBCXX_OPERATOR_NEW(__n * sizeof(_Tp)));
> | ^
> In destructor ‘std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::~_Sp_counted_ptr_inplace() [with _Tp = DigitalSignaturesDialog; _Alloc = std::allocator<void>; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’,
> inlined from ‘void std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::_M_destroy() [with _Tp = DigitalSignaturesDialog; _Alloc = std::allocator<void>; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:684:32,
> inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:424:18,
> inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:392:5,
> inlined from ‘std::__shared_count<_Lp>::~__shared_count() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1129:21,
> inlined from ‘std::__shared_ptr<_Tp, _Lp>::~__shared_ptr() [with _Tp = CertificateChooser; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1603:7,
> inlined from ‘std::shared_ptr<CertificateChooser>::~shared_ptr()’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr.h:175:11,
> inlined from ‘com::sun::star::uno::Sequence<com::sun::star::uno::Reference<com::sun::star::security::XCertificate> > {anonymous}::DocumentDigitalSignatures::chooseCertificatesImpl.constprop(SfxViewShell*, std::__debug::map<rtl::OUString, rtl::OUString>&, CertificateChooserUserAction, com::sun::star::security::CertificateKind)’ at xmlsecurity/source/component/documentdigitalsignatures.cxx:674:1:
> ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:670:45: error: array subscript ‘std::_Sp_counted_ptr_inplace<DigitalSignaturesDialog, std::allocator<void>, __gnu_cxx::_S_atomic>[0]’ is partly outside array bounds of ‘unsigned char [384]’ [-Werror=array-bounds=]
> 670 | ~_Sp_counted_ptr_inplace() noexcept { }
> | ^
> In member function ‘_Tp* std::__new_allocator<_Tp>::allocate(size_type, const void*) [with _Tp = std::_Sp_counted_ptr_inplace<CertificateChooser, std::allocator<void>, __gnu_cxx::_S_atomic>]’,
> inlined from ‘constexpr _Tp* std::allocator< <template-parameter-1-1> >::allocate(std::size_t) [with _Tp = std::_Sp_counted_ptr_inplace<CertificateChooser, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at ~/gcc/inst/include/c++/16.0.1/bits/allocator.h:203:40,
> inlined from ‘static constexpr _Tp* std::allocator_traits<std::allocator<_Up> >::allocate(allocator_type&, size_type) [with _Tp = std::_Sp_counted_ptr_inplace<CertificateChooser, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at ~/gcc/inst/include/c++/16.0.1/bits/alloc_traits.h:614:28,
> inlined from ‘std::__allocated_ptr<_Alloc> std::__allocate_guarded(_Alloc&) [with _Alloc = allocator<_Sp_counted_ptr_inplace<CertificateChooser, allocator<void>, __gnu_cxx::_S_atomic> >]’ at ~/gcc/inst/include/c++/16.0.1/bits/allocated_ptr.h:103:69,
> inlined from ‘std::__shared_count<_Lp>::__shared_count(_Tp*&, std::_Sp_alloc_shared_tag<_Alloc>, _Args&& ...) [with _Tp = CertificateChooser; _Alloc = std::allocator<void>; _Args = {weld::Window*&, SfxViewShell*&, std::__debug::vector<com::sun::star::uno::Reference<com::sun::star::xml::crypto::XXMLSecurityContext>, std::allocator<com::sun::star::uno::Reference<com::sun::star::xml::crypto::XXMLSecurityContext> > >, CertificateChooserUserAction&}; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1027:9,
> inlined from ‘std::__shared_ptr<_Tp, _Lp>::__shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {weld::Window*&, SfxViewShell*&, std::__debug::vector<com::sun::star::uno::Reference<com::sun::star::xml::crypto::XXMLSecurityContext>, std::allocator<com::sun::star::uno::Reference<com::sun::star::xml::crypto::XXMLSecurityContext> > >, CertificateChooserUserAction&}; _Tp = CertificateChooser; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1805:14,
> inlined from ‘std::shared_ptr<_Tp>::shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {weld::Window*&, SfxViewShell*&, std::__debug::vector<com::sun::star::uno::Reference<com::sun::star::xml::crypto::XXMLSecurityContext>, std::allocator<com::sun::star::uno::Reference<com::sun::star::xml::crypto::XXMLSecurityContext> > >, CertificateChooserUserAction&}; _Tp = CertificateChooser]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr.h:463:59,
> inlined from ‘std::shared_ptr<std::_NonArray<_Tp> > std::make_shared(_Args&& ...) [with _Tp = CertificateChooser; _Args = {weld::Window*&, SfxViewShell*&, __debug::vector<com::sun::star::uno::Reference<com::sun::star::xml::crypto::XXMLSecurityContext>, allocator<com::sun::star::uno::Reference<com::sun::star::xml::crypto::XXMLSecurityContext> > >, CertificateChooserUserAction&}]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr.h:1066:39,
> inlined from ‘static std::shared_ptr<CertificateChooser> CertificateChooser::getInstance(weld::Window*, SfxViewShell*, std::__debug::vector<com::sun::star::uno::Reference<com::sun::star::xml::crypto::XXMLSecurityContext> >&&, CertificateChooserUserAction)’ at xmlsecurity/inc/certificatechooser.hxx:111:113,
> inlined from ‘com::sun::star::uno::Sequence<com::sun::star::uno::Reference<com::sun::star::security::XCertificate> > {anonymous}::DocumentDigitalSignatures::chooseCertificatesImpl.constprop(SfxViewShell*, std::__debug::map<rtl::OUString, rtl::OUString>&, CertificateChooserUserAction, com::sun::star::security::CertificateKind)’ at xmlsecurity/source/component/documentdigitalsignatures.cxx:664:171:
> ~/gcc/inst/include/c++/16.0.1/bits/new_allocator.h:151:73: note: object of size 384 allocated by ‘operator new’
> 151 | return static_cast<_Tp*>(_GLIBCXX_OPERATOR_NEW(__n * sizeof(_Tp)));
> | ^
Change-Id: I19ffa8f6d2b7a7c87fe3fbece2eb5e6dc147aa04
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/197838
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <stephan.bergmann@collabora.com>
|
||
|
|
0bdb342a33 |
Silence spurious -Werror=array-bounds=
seen at least with recent GCC 16 trunk,
> In file included from ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr.h:53,
> from ~/gcc/inst/include/c++/16.0.1/memory:82,
> from sc/source/filter/inc/workbookhelper.hxx:22,
> from sc/source/filter/inc/PivotTableFormat.hxx:12,
> from sc/source/filter/oox/PivotTableFormat.cxx:10:
> In destructor ‘std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::~_Sp_counted_ptr_inplace() [with _Tp = ScPatternAttr; _Alloc = std::allocator<void>; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’,
> inlined from ‘std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::~_Sp_counted_ptr_inplace() [with _Tp = ScPatternAttr; _Alloc = std::allocator<void>; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:670:45,
> inlined from ‘void std::_Sp_counted_base<_Lp>::_M_destroy() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:143:9,
> inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:424:18,
> inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:392:5,
> inlined from ‘std::__shared_count<_Lp>::~__shared_count() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1129:21,
> inlined from ‘std::__shared_ptr<_Tp, _Lp>::~__shared_ptr() [with _Tp = oox::xls::PivotTableReference; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1603:7,
> inlined from ‘std::shared_ptr<oox::xls::PivotTableReference>::~shared_ptr()’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr.h:175:11,
> inlined from ‘oox::xls::PivotTableReference& oox::xls::PivotTableFormat::createReference()’ at sc/source/filter/oox/PivotTableFormat.cxx:128:1:
> ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:670:45: error: array subscript ‘std::_Sp_counted_ptr_inplace<ScPatternAttr, std::allocator<void>, __gnu_cxx::_S_atomic>[0]’ is partly outside array bounds of ‘unsigned char [120]’ [-Werror=array-bounds=]
> 670 | ~_Sp_counted_ptr_inplace() noexcept { }
> | ^
> In file included from ~/gcc/inst/include/c++/16.0.1/x86_64-pc-linux-gnu/bits/c++allocator.h:33,
> from ~/gcc/inst/include/c++/16.0.1/bits/allocator.h:46,
> from ~/gcc/inst/include/c++/16.0.1/memory:67:
> In member function ‘_Tp* std::__new_allocator<_Tp>::allocate(size_type, const void*) [with _Tp = std::_Sp_counted_ptr_inplace<oox::xls::PivotTableReference, std::allocator<void>, __gnu_cxx::_S_atomic>]’,
> inlined from ‘constexpr _Tp* std::allocator< <template-parameter-1-1> >::allocate(std::size_t) [with _Tp = std::_Sp_counted_ptr_inplace<oox::xls::PivotTableReference, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at ~/gcc/inst/include/c++/16.0.1/bits/allocator.h:203:40,
> inlined from ‘static constexpr _Tp* std::allocator_traits<std::allocator<_Up> >::allocate(allocator_type&, size_type) [with _Tp = std::_Sp_counted_ptr_inplace<oox::xls::PivotTableReference, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at ~/gcc/inst/include/c++/16.0.1/bits/alloc_traits.h:614:28,
> inlined from ‘std::__allocated_ptr<_Alloc> std::__allocate_guarded(_Alloc&) [with _Alloc = allocator<_Sp_counted_ptr_inplace<oox::xls::PivotTableReference, allocator<void>, __gnu_cxx::_S_atomic> >]’ at ~/gcc/inst/include/c++/16.0.1/bits/allocated_ptr.h:103:69,
> inlined from ‘std::__shared_count<_Lp>::__shared_count(_Tp*&, std::_Sp_alloc_shared_tag<_Alloc>, _Args&& ...) [with _Tp = oox::xls::PivotTableReference; _Alloc = std::allocator<void>; _Args = {oox::xls::PivotTableFormat&}; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1027:9,
> inlined from ‘std::__shared_ptr<_Tp, _Lp>::__shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {oox::xls::PivotTableFormat&}; _Tp = oox::xls::PivotTableReference; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1805:14,
> inlined from ‘std::shared_ptr<_Tp>::shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {oox::xls::PivotTableFormat&}; _Tp = oox::xls::PivotTableReference]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr.h:463:59,
> inlined from ‘std::shared_ptr<std::_NonArray<_Tp> > std::make_shared(_Args&& ...) [with _Tp = oox::xls::PivotTableReference; _Args = {oox::xls::PivotTableFormat&}]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr.h:1066:39,
> inlined from ‘oox::xls::PivotTableReference& oox::xls::PivotTableFormat::createReference()’ at sc/source/filter/oox/PivotTableFormat.cxx:125:66:
> ~/gcc/inst/include/c++/16.0.1/bits/new_allocator.h:151:73: note: object of size 120 allocated by ‘operator new’
> 151 | return static_cast<_Tp*>(_GLIBCXX_OPERATOR_NEW(__n * sizeof(_Tp)));
> | ^
> In destructor ‘std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::~_Sp_counted_ptr_inplace() [with _Tp = ScPatternAttr; _Alloc = std::allocator<void>; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’,
> inlined from ‘void std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::_M_destroy() [with _Tp = ScPatternAttr; _Alloc = std::allocator<void>; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:684:32,
> inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:424:18,
> inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:392:5,
> inlined from ‘std::__shared_count<_Lp>::~__shared_count() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1129:21,
> inlined from ‘std::__shared_ptr<_Tp, _Lp>::~__shared_ptr() [with _Tp = oox::xls::PivotTableReference; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1603:7,
> inlined from ‘std::shared_ptr<oox::xls::PivotTableReference>::~shared_ptr()’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr.h:175:11,
> inlined from ‘oox::xls::PivotTableReference& oox::xls::PivotTableFormat::createReference()’ at sc/source/filter/oox/PivotTableFormat.cxx:128:1:
> ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:670:45: error: array subscript ‘std::_Sp_counted_ptr_inplace<ScPatternAttr, std::allocator<void>, __gnu_cxx::_S_atomic>[0]’ is partly outside array bounds of ‘unsigned char [120]’ [-Werror=array-bounds=]
> 670 | ~_Sp_counted_ptr_inplace() noexcept { }
> | ^
> In member function ‘_Tp* std::__new_allocator<_Tp>::allocate(size_type, const void*) [with _Tp = std::_Sp_counted_ptr_inplace<oox::xls::PivotTableReference, std::allocator<void>, __gnu_cxx::_S_atomic>]’,
> inlined from ‘constexpr _Tp* std::allocator< <template-parameter-1-1> >::allocate(std::size_t) [with _Tp = std::_Sp_counted_ptr_inplace<oox::xls::PivotTableReference, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at ~/gcc/inst/include/c++/16.0.1/bits/allocator.h:203:40,
> inlined from ‘static constexpr _Tp* std::allocator_traits<std::allocator<_Up> >::allocate(allocator_type&, size_type) [with _Tp = std::_Sp_counted_ptr_inplace<oox::xls::PivotTableReference, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at ~/gcc/inst/include/c++/16.0.1/bits/alloc_traits.h:614:28,
> inlined from ‘std::__allocated_ptr<_Alloc> std::__allocate_guarded(_Alloc&) [with _Alloc = allocator<_Sp_counted_ptr_inplace<oox::xls::PivotTableReference, allocator<void>, __gnu_cxx::_S_atomic> >]’ at ~/gcc/inst/include/c++/16.0.1/bits/allocated_ptr.h:103:69,
> inlined from ‘std::__shared_count<_Lp>::__shared_count(_Tp*&, std::_Sp_alloc_shared_tag<_Alloc>, _Args&& ...) [with _Tp = oox::xls::PivotTableReference; _Alloc = std::allocator<void>; _Args = {oox::xls::PivotTableFormat&}; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1027:9,
> inlined from ‘std::__shared_ptr<_Tp, _Lp>::__shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {oox::xls::PivotTableFormat&}; _Tp = oox::xls::PivotTableReference; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1805:14,
> inlined from ‘std::shared_ptr<_Tp>::shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {oox::xls::PivotTableFormat&}; _Tp = oox::xls::PivotTableReference]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr.h:463:59,
> inlined from ‘std::shared_ptr<std::_NonArray<_Tp> > std::make_shared(_Args&& ...) [with _Tp = oox::xls::PivotTableReference; _Args = {oox::xls::PivotTableFormat&}]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr.h:1066:39,
> inlined from ‘oox::xls::PivotTableReference& oox::xls::PivotTableFormat::createReference()’ at sc/source/filter/oox/PivotTableFormat.cxx:125:66:
> ~/gcc/inst/include/c++/16.0.1/bits/new_allocator.h:151:73: note: object of size 120 allocated by ‘operator new’
> 151 | return static_cast<_Tp*>(_GLIBCXX_OPERATOR_NEW(__n * sizeof(_Tp)));
> | ^
Change-Id: Idfa85dda898dbcd3f5ff86a5b28c0ac3c84c4169
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/197836
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <stephan.bergmann@collabora.com>
|
||
|
|
aa228e60a5 |
Silence spurious -Werror=maybe-uninitialized
seen at least with recent GCC 16 trunk,
> In file included from unoxml/source/dom/document.hxx:29,
> from unoxml/source/dom/document.cxx:22:
> In constructor ‘cppu::ImplInheritanceHelper<BaseClass, Ifc>::ImplInheritanceHelper(Arg&& ...) [with Arg = {DOM::CDocument&, osl::Mutex&, const com::sun::star::xml::dom::NodeType&, _xmlNode*}; BaseClass = DOM::CNode; Ifc = {com::sun::star::xml::dom::XDocument, com::sun::star::xml::dom::events::XDocumentEvent, com::sun::star::io::XActiveDataControl, com::sun::star::io::XActiveDataSource, com::sun::star::xml::sax::XSAXSerializable, com::sun::star::xml::sax::XFastSAXSerializable}]’,
> inlined from ‘DOM::CDocument::CDocument(xmlDocPtr)’ at unoxml/source/dom/document.cxx:92:58:
> include/cppuhelper/implbase.hxx:152:44: error: ‘<unknown>’ may be used uninitialized [-Werror=maybe-uninitialized]
> 152 | BaseClass(std::forward<Arg>(arg)...)
> | ^
> In file included from unoxml/source/dom/document.hxx:50:
> unoxml/inc/node.hxx: In constructor ‘DOM::CDocument::CDocument(xmlDocPtr)’:
> unoxml/inc/node.hxx:110:9: note: by argument 2 of type ‘const DOM::CDocument&’ to ‘DOM::CNode::CNode(const DOM::CDocument&, const osl::Mutex&, const com::sun::star::xml::dom::NodeType&, xmlNode* const&)’ declared here
> 110 | CNode(CDocument const& rDocument, ::osl::Mutex const& rMutex,
> | ^~~~~
> In constructor ‘cppu::ImplInheritanceHelper<BaseClass, Ifc>::ImplInheritanceHelper(Arg&& ...) [with Arg = {DOM::CDocument&, osl::Mutex&, const com::sun::star::xml::dom::NodeType&, _xmlNode*}; BaseClass = DOM::CNode; Ifc = {com::sun::star::xml::dom::XDocument, com::sun::star::xml::dom::events::XDocumentEvent, com::sun::star::io::XActiveDataControl, com::sun::star::io::XActiveDataSource, com::sun::star::xml::sax::XSAXSerializable, com::sun::star::xml::sax::XFastSAXSerializable}]’,
> inlined from ‘DOM::CDocument::CDocument(xmlDocPtr)’ at unoxml/source/dom/document.cxx:92:58:
> include/cppuhelper/implbase.hxx:152:44: error: ‘<unknown>’ may be used uninitialized [-Werror=maybe-uninitialized]
> 152 | BaseClass(std::forward<Arg>(arg)...)
> | ^
> unoxml/inc/node.hxx: In constructor ‘DOM::CDocument::CDocument(xmlDocPtr)’:
> unoxml/inc/node.hxx:110:9: note: by argument 3 of type ‘const osl::Mutex&’ to ‘DOM::CNode::CNode(const DOM::CDocument&, const osl::Mutex&, const com::sun::star::xml::dom::NodeType&, xmlNode* const&)’ declared here
> 110 | CNode(CDocument const& rDocument, ::osl::Mutex const& rMutex,
> | ^~~~~
Change-Id: I9b422727d47b148faf9e7a62ce8220116e32479c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/197843
Reviewed-by: Stephan Bergmann <stephan.bergmann@collabora.com>
Tested-by: Jenkins
|
||
|
|
980612bf2d |
Silence spurious -Werror=array-bounds=
seen at least with recent GCC 16 trunk,
> In file included from ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr.h:53,
> from ~/gcc/inst/include/c++/16.0.1/memory:82,
> from include/rtl/stringconcat.hxx:22,
> from include/rtl/string.hxx:51,
> from include/rtl/ustring.hxx:45,
> from include/com/sun/star/uno/Any.h:30,
> from workdir/UnoApiHeadersTarget/udkapi/normal/com/sun/star/uno/XInterface.hdl:6,
> from workdir/UnoApiHeadersTarget/udkapi/normal/com/sun/star/beans/XPropertySet.hdl:9,
> from workdir/UnoApiHeadersTarget/udkapi/normal/com/sun/star/beans/XPropertySet.hpp:6,
> from sw/source/uibase/wrtsh/wrtsh1.cxx:20:
> In destructor ‘std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::~_Sp_counted_ptr_inplace() [with _Tp = SwContentControl; _Alloc = std::allocator<void>; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’,
> inlined from ‘std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::~_Sp_counted_ptr_inplace() [with _Tp = SwContentControl; _Alloc = std::allocator<void>; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:670:45,
> inlined from ‘void std::_Sp_counted_base<_Lp>::_M_destroy() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:143:9,
> inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:424:18,
> inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:392:5,
> inlined from ‘std::__shared_count<_Lp>::~__shared_count() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1129:21,
> inlined from ‘std::__shared_ptr<_Tp, _Lp>::~__shared_ptr() [with _Tp = weld::MessageDialogController; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1603:7,
> inlined from ‘std::shared_ptr<weld::MessageDialogController>::~shared_ptr()’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr.h:175:11,
> inlined from ‘virtual void SwWrtShell::InfoReadOnlyDialog(bool) const’ at sw/source/uibase/wrtsh/wrtsh1.cxx:2834:5:
> ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:670:45: error: array subscript ‘std::_Sp_counted_ptr_inplace<SwContentControl, std::allocator<void>, __gnu_cxx::_S_atomic>[0]’ is partly outside array bounds of ‘unsigned char [80]’ [-Werror=array-bounds=]
> 670 | ~_Sp_counted_ptr_inplace() noexcept { }
> | ^
> In file included from ~/gcc/inst/include/c++/16.0.1/x86_64-pc-linux-gnu/bits/c++allocator.h:33,
> from ~/gcc/inst/include/c++/16.0.1/bits/allocator.h:46,
> from ~/gcc/inst/include/c++/16.0.1/string:46,
> from ~/gcc/inst/include/c++/16.0.1/bits/locale_classes.h:43,
> from ~/gcc/inst/include/c++/16.0.1/bits/ios_base.h:43,
> from ~/gcc/inst/include/c++/16.0.1/ios:46,
> from ~/gcc/inst/include/c++/16.0.1/bits/ostream.h:43,
> from ~/gcc/inst/include/c++/16.0.1/ostream:42,
> from include/rtl/ustring.hxx:34:
> In member function ‘_Tp* std::__new_allocator<_Tp>::allocate(size_type, const void*) [with _Tp = std::_Sp_counted_ptr_inplace<weld::MessageDialogController, std::allocator<void>, __gnu_cxx::_S_atomic>]’,
> inlined from ‘constexpr _Tp* std::allocator< <template-parameter-1-1> >::allocate(std::size_t) [with _Tp = std::_Sp_counted_ptr_inplace<weld::MessageDialogController, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at ~/gcc/inst/include/c++/16.0.1/bits/allocator.h:203:40,
> inlined from ‘static constexpr _Tp* std::allocator_traits<std::allocator<_CharT> >::allocate(allocator_type&, size_type) [with _Tp = std::_Sp_counted_ptr_inplace<weld::MessageDialogController, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at ~/gcc/inst/include/c++/16.0.1/bits/alloc_traits.h:614:28,
> inlined from ‘std::__allocated_ptr<_Alloc> std::__allocate_guarded(_Alloc&) [with _Alloc = allocator<_Sp_counted_ptr_inplace<weld::MessageDialogController, allocator<void>, __gnu_cxx::_S_atomic> >]’ at ~/gcc/inst/include/c++/16.0.1/bits/allocated_ptr.h:103:69,
> inlined from ‘std::__shared_count<_Lp>::__shared_count(_Tp*&, std::_Sp_alloc_shared_tag<_Alloc>, _Args&& ...) [with _Tp = weld::MessageDialogController; _Alloc = std::allocator<void>; _Args = {weld::Window*, const char (&)[41], const char (&)[19]}; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1027:9,
> inlined from ‘std::__shared_ptr<_Tp, _Lp>::__shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {weld::Window*, const char (&)[41], const char (&)[19]}; _Tp = weld::MessageDialogController; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1805:14,
> inlined from ‘std::shared_ptr<_Tp>::shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {weld::Window*, const char (&)[41], const char (&)[19]}; _Tp = weld::MessageDialogController]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr.h:463:59,
> inlined from ‘std::shared_ptr<std::_NonArray<_Tp> > std::make_shared(_Args&& ...) [with _Tp = weld::MessageDialogController; _Args = {weld::Window*, const char (&)[41], const char (&)[19]}]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr.h:1066:39,
> inlined from ‘virtual void SwWrtShell::InfoReadOnlyDialog(bool) const’ at sw/source/uibase/wrtsh/wrtsh1.cxx:2826:111:
> ~/gcc/inst/include/c++/16.0.1/bits/new_allocator.h:151:73: note: object of size 80 allocated by ‘operator new’
> 151 | return static_cast<_Tp*>(_GLIBCXX_OPERATOR_NEW(__n * sizeof(_Tp)));
> | ^
> In destructor ‘std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::~_Sp_counted_ptr_inplace() [with _Tp = SwContentControl; _Alloc = std::allocator<void>; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’,
> inlined from ‘void std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::_M_destroy() [with _Tp = SwContentControl; _Alloc = std::allocator<void>; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:684:32,
> inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:424:18,
> inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:392:5,
> inlined from ‘std::__shared_count<_Lp>::~__shared_count() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1129:21,
> inlined from ‘std::__shared_ptr<_Tp, _Lp>::~__shared_ptr() [with _Tp = weld::MessageDialogController; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1603:7,
> inlined from ‘std::shared_ptr<weld::MessageDialogController>::~shared_ptr()’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr.h:175:11,
> inlined from ‘virtual void SwWrtShell::InfoReadOnlyDialog(bool) const’ at sw/source/uibase/wrtsh/wrtsh1.cxx:2834:5:
> ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:670:45: error: array subscript ‘std::_Sp_counted_ptr_inplace<SwContentControl, std::allocator<void>, __gnu_cxx::_S_atomic>[0]’ is partly outside array bounds of ‘unsigned char [80]’ [-Werror=array-bounds=]
> 670 | ~_Sp_counted_ptr_inplace() noexcept { }
> | ^
> In member function ‘_Tp* std::__new_allocator<_Tp>::allocate(size_type, const void*) [with _Tp = std::_Sp_counted_ptr_inplace<weld::MessageDialogController, std::allocator<void>, __gnu_cxx::_S_atomic>]’,
> inlined from ‘constexpr _Tp* std::allocator< <template-parameter-1-1> >::allocate(std::size_t) [with _Tp = std::_Sp_counted_ptr_inplace<weld::MessageDialogController, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at ~/gcc/inst/include/c++/16.0.1/bits/allocator.h:203:40,
> inlined from ‘static constexpr _Tp* std::allocator_traits<std::allocator<_CharT> >::allocate(allocator_type&, size_type) [with _Tp = std::_Sp_counted_ptr_inplace<weld::MessageDialogController, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at ~/gcc/inst/include/c++/16.0.1/bits/alloc_traits.h:614:28,
> inlined from ‘std::__allocated_ptr<_Alloc> std::__allocate_guarded(_Alloc&) [with _Alloc = allocator<_Sp_counted_ptr_inplace<weld::MessageDialogController, allocator<void>, __gnu_cxx::_S_atomic> >]’ at ~/gcc/inst/include/c++/16.0.1/bits/allocated_ptr.h:103:69,
> inlined from ‘std::__shared_count<_Lp>::__shared_count(_Tp*&, std::_Sp_alloc_shared_tag<_Alloc>, _Args&& ...) [with _Tp = weld::MessageDialogController; _Alloc = std::allocator<void>; _Args = {weld::Window*, const char (&)[41], const char (&)[19]}; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1027:9,
> inlined from ‘std::__shared_ptr<_Tp, _Lp>::__shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {weld::Window*, const char (&)[41], const char (&)[19]}; _Tp = weld::MessageDialogController; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1805:14,
> inlined from ‘std::shared_ptr<_Tp>::shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {weld::Window*, const char (&)[41], const char (&)[19]}; _Tp = weld::MessageDialogController]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr.h:463:59,
> inlined from ‘std::shared_ptr<std::_NonArray<_Tp> > std::make_shared(_Args&& ...) [with _Tp = weld::MessageDialogController; _Args = {weld::Window*, const char (&)[41], const char (&)[19]}]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr.h:1066:39,
> inlined from ‘virtual void SwWrtShell::InfoReadOnlyDialog(bool) const’ at sw/source/uibase/wrtsh/wrtsh1.cxx:2826:111:
> ~/gcc/inst/include/c++/16.0.1/bits/new_allocator.h:151:73: note: object of size 80 allocated by ‘operator new’
> 151 | return static_cast<_Tp*>(_GLIBCXX_OPERATOR_NEW(__n * sizeof(_Tp)));
> | ^
Change-Id: I54717f79621f31061a424fb27204e574b5c7dde1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/197841
Reviewed-by: Stephan Bergmann <stephan.bergmann@collabora.com>
Tested-by: Jenkins
|
||
|
|
e3ea377f2d |
Make a virtual function non-inline
...which helps avoid some supposedly spurious -Werror=free-nonheap-object seen
at least with recent GCC 16 trunk,
> In destructor ‘virtual SvLockBytes::~SvLockBytes()’,
> inlined from ‘void SvRefBase::ReleaseRef()’ at include/tools/ref.hxx:160:36,
> inlined from ‘tools::SvRef<T>::~SvRef() [with T = writerfilter::rtftok::RTFTokenizer]’ at include/tools/ref.hxx:56:46,
> inlined from ‘writerfilter::rtftok::RTFLookahead::~RTFLookahead()’ at sw/source/writerfilter/rtftok/rtflookahead.cxx:37:1:
> include/tools/stream.hxx:115:48: error: ‘void operator delete(void*, std::size_t)’ called on pointer ‘((tools::SvRef<writerfilter::rtftok::RTFTokenizer>*)this)[1].tools::SvRef<writerfilter::rtftok::RTFTokenizer>::pObj’ with nonzero offset 56 [-Werror=free-nonheap-object]
> 115 | virtual ~SvLockBytes() override { close(); }
> | ^
etc.
Change-Id: I26a599f0e3258e6bf6a4d6e63e559b41029862db
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/197842
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <stephan.bergmann@collabora.com>
|
||
|
|
ae36c06e56 |
Silence spurious -Werror=array-bounds=
seen at least with recent GCC 16 trunk,
> In file included from ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr.h:53,
> from ~/gcc/inst/include/c++/16.0.1/memory:82,
> from include/rtl/stringconcat.hxx:22,
> from include/rtl/string.hxx:51,
> from include/rtl/ustring.hxx:45,
> from workdir/UnoApiHeadersTarget/udkapi/normal/com/sun/star/uno/Exception.hdl:9,
> from workdir/UnoApiHeadersTarget/udkapi/normal/com/sun/star/uno/RuntimeException.hdl:6,
> from workdir/UnoApiHeadersTarget/udkapi/normal/com/sun/star/uno/RuntimeException.hpp:6,
> from include/com/sun/star/uno/Reference.hxx:32,
> from slideshow/source/inc/shape.hxx:23,
> from slideshow/source/inc/box2dtools.hxx:12,
> from slideshow/source/engine/box2dtools.cxx:10:
> In destructor ‘std::__shared_count<_Lp>::~__shared_count() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’,
> inlined from ‘std::__shared_ptr<_Tp, _Lp>::~__shared_ptr() [with _Tp = b2Body; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1603:7,
> inlined from ‘std::shared_ptr<b2Body>::~shared_ptr()’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr.h:175:11,
> inlined from ‘box2d::utils::box2DBody::~box2DBody()’ at slideshow/source/inc/box2dtools.hxx:333:7,
> inlined from ‘constexpr void std::destroy_at(_Tp*) [with _Tp = box2d::utils::box2DBody]’ at ~/gcc/inst/include/c++/16.0.1/bits/stl_construct.h:88:18,
> inlined from ‘constexpr void std::_Destroy(_Tp*) [with _Tp = box2d::utils::box2DBody]’ at ~/gcc/inst/include/c++/16.0.1/bits/stl_construct.h:164:22,
> inlined from ‘static constexpr void std::allocator_traits<std::allocator<void> >::destroy(allocator_type&, _Up*) [with _Up = box2d::utils::box2DBody]’ at ~/gcc/inst/include/c++/16.0.1/bits/alloc_traits.h:819:17,
> inlined from ‘void std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::_M_dispose() [with _Tp = box2d::utils::box2DBody; _Alloc = std::allocator<void>; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:675:35,
> inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:423:18,
> inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:392:5,
> inlined from ‘std::__shared_count<_Lp>::~__shared_count() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1129:21,
> inlined from ‘std::__shared_ptr<_Tp, _Lp>::~__shared_ptr() [with _Tp = b2Body; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1603:7,
> inlined from ‘std::shared_ptr<b2Body>::~shared_ptr()’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr.h:175:11,
> inlined from ‘box2d::utils::Box2DBodySharedPtr box2d::utils::box2DWorld::createStaticBody(const slideshow::internal::ShapeSharedPtr&)’ at slideshow/source/engine/box2dtools.cxx:731:1:
> ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1128:13: error: array subscript 3 is outside array bounds of ‘std::_Sp_counted_deleter<b2Body*, box2d::utils::box2DWorld::createStaticBody(const slideshow::internal::ShapeSharedPtr&)::<lambda(b2Body*)>, std::allocator<void>, __gnu_cxx::_S_atomic> [1]’ [-Werror=array-bounds=]
> 1128 | if (_M_pi != nullptr)
> | ^~~~~
> In file included from ~/gcc/inst/include/c++/16.0.1/x86_64-pc-linux-gnu/bits/c++allocator.h:33,
> from ~/gcc/inst/include/c++/16.0.1/bits/allocator.h:46,
> from ~/gcc/inst/include/c++/16.0.1/string:46,
> from ~/gcc/inst/include/c++/16.0.1/bits/locale_classes.h:43,
> from ~/gcc/inst/include/c++/16.0.1/bits/ios_base.h:43,
> from ~/gcc/inst/include/c++/16.0.1/ios:46,
> from ~/gcc/inst/include/c++/16.0.1/bits/ostream.h:43,
> from ~/gcc/inst/include/c++/16.0.1/ostream:42,
> from include/com/sun/star/uno/Reference.hxx:29:
> In member function ‘_Tp* std::__new_allocator<_Tp>::allocate(size_type, const void*) [with _Tp = std::_Sp_counted_deleter<b2Body*, box2d::utils::box2DWorld::createStaticBody(const slideshow::internal::ShapeSharedPtr&)::<lambda(b2Body*)>, std::allocator<void>, __gnu_cxx::_S_atomic>]’,
> inlined from ‘constexpr _Tp* std::allocator< <template-parameter-1-1> >::allocate(std::size_t) [with _Tp = std::_Sp_counted_deleter<b2Body*, box2d::utils::box2DWorld::createStaticBody(const slideshow::internal::ShapeSharedPtr&)::<lambda(b2Body*)>, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at ~/gcc/inst/include/c++/16.0.1/bits/allocator.h:203:40,
> inlined from ‘static constexpr _Tp* std::allocator_traits<std::allocator<_CharT> >::allocate(allocator_type&, size_type) [with _Tp = std::_Sp_counted_deleter<b2Body*, box2d::utils::box2DWorld::createStaticBody(const slideshow::internal::ShapeSharedPtr&)::<lambda(b2Body*)>, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at ~/gcc/inst/include/c++/16.0.1/bits/alloc_traits.h:614:28,
> inlined from ‘std::__allocated_ptr<_Alloc> std::__allocate_guarded(_Alloc&) [with _Alloc = allocator<_Sp_counted_deleter<b2Body*, box2d::utils::box2DWorld::createStaticBody(const slideshow::internal::ShapeSharedPtr&)::<lambda(b2Body*)>, allocator<void>, __gnu_cxx::_S_atomic> >]’ at ~/gcc/inst/include/c++/16.0.1/bits/allocated_ptr.h:103:69,
> inlined from ‘std::__shared_count<_Lp>::__shared_count(_Ptr, _Deleter, _Alloc) [with _Ptr = b2Body*; _Deleter = box2d::utils::box2DWorld::createStaticBody(const slideshow::internal::ShapeSharedPtr&)::<lambda(b2Body*)>; _Alloc = std::allocator<void>; <template-parameter-2-4> = void; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1007:13,
> inlined from ‘std::__shared_count<_Lp>::__shared_count(_Ptr, _Deleter) [with _Ptr = b2Body*; _Deleter = box2d::utils::box2DWorld::createStaticBody(const slideshow::internal::ShapeSharedPtr&)::<lambda(b2Body*)>; <template-parameter-2-3> = void; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:996:57,
> inlined from ‘std::__shared_ptr<_Tp, _Lp>::__shared_ptr(_Yp*, _Deleter) [with _Yp = b2Body; _Deleter = box2d::utils::box2DWorld::createStaticBody(const slideshow::internal::ShapeSharedPtr&)::<lambda(b2Body*)>; <template-parameter-2-3> = void; _Tp = b2Body; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1557:17,
> inlined from ‘std::shared_ptr<_Tp>::shared_ptr(_Yp*, _Deleter) [with _Yp = b2Body; _Deleter = box2d::utils::box2DWorld::createStaticBody(const slideshow::internal::ShapeSharedPtr&)::<lambda(b2Body*)>; <template-parameter-2-3> = void; _Tp = b2Body]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr.h:231:48,
> inlined from ‘box2d::utils::Box2DBodySharedPtr box2d::utils::box2DWorld::createStaticBody(const slideshow::internal::ShapeSharedPtr&)’ at slideshow/source/engine/box2dtools.cxx:669:6:
> ~/gcc/inst/include/c++/16.0.1/bits/new_allocator.h:151:73: note: at offset 24 into object of size 24 allocated by ‘operator new’
> 151 | return static_cast<_Tp*>(_GLIBCXX_OPERATOR_NEW(__n * sizeof(_Tp)));
> | ^
> In destructor ‘box2d::utils::box2DBody::~box2DBody()’,
> inlined from ‘constexpr void std::destroy_at(_Tp*) [with _Tp = box2d::utils::box2DBody]’ at ~/gcc/inst/include/c++/16.0.1/bits/stl_construct.h:88:18,
> inlined from ‘constexpr void std::_Destroy(_Tp*) [with _Tp = box2d::utils::box2DBody]’ at ~/gcc/inst/include/c++/16.0.1/bits/stl_construct.h:164:22,
> inlined from ‘static constexpr void std::allocator_traits<std::allocator<void> >::destroy(allocator_type&, _Up*) [with _Up = box2d::utils::box2DBody]’ at ~/gcc/inst/include/c++/16.0.1/bits/alloc_traits.h:819:17,
> inlined from ‘void std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::_M_dispose() [with _Tp = box2d::utils::box2DBody; _Alloc = std::allocator<void>; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:675:35,
> inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:423:18,
> inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:392:5,
> inlined from ‘std::__shared_count<_Lp>::~__shared_count() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1129:21,
> inlined from ‘std::__shared_ptr<_Tp, _Lp>::~__shared_ptr() [with _Tp = b2Body; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1603:7,
> inlined from ‘std::shared_ptr<b2Body>::~shared_ptr()’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr.h:175:11,
> inlined from ‘box2d::utils::Box2DBodySharedPtr box2d::utils::box2DWorld::createStaticBody(const slideshow::internal::ShapeSharedPtr&)’ at slideshow/source/engine/box2dtools.cxx:731:1:
> slideshow/source/inc/box2dtools.hxx:333:7: error: array subscript ‘box2d::utils::box2DBody[0]’ is partly outside array bounds of ‘unsigned char [24]’ [-Werror=array-bounds=]
> 333 | class box2DBody
> | ^~~~~~~~~
> In member function ‘_Tp* std::__new_allocator<_Tp>::allocate(size_type, const void*) [with _Tp = std::_Sp_counted_deleter<b2Body*, box2d::utils::box2DWorld::createStaticBody(const slideshow::internal::ShapeSharedPtr&)::<lambda(b2Body*)>, std::allocator<void>, __gnu_cxx::_S_atomic>]’,
> inlined from ‘constexpr _Tp* std::allocator< <template-parameter-1-1> >::allocate(std::size_t) [with _Tp = std::_Sp_counted_deleter<b2Body*, box2d::utils::box2DWorld::createStaticBody(const slideshow::internal::ShapeSharedPtr&)::<lambda(b2Body*)>, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at ~/gcc/inst/include/c++/16.0.1/bits/allocator.h:203:40,
> inlined from ‘static constexpr _Tp* std::allocator_traits<std::allocator<_CharT> >::allocate(allocator_type&, size_type) [with _Tp = std::_Sp_counted_deleter<b2Body*, box2d::utils::box2DWorld::createStaticBody(const slideshow::internal::ShapeSharedPtr&)::<lambda(b2Body*)>, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at ~/gcc/inst/include/c++/16.0.1/bits/alloc_traits.h:614:28,
> inlined from ‘std::__allocated_ptr<_Alloc> std::__allocate_guarded(_Alloc&) [with _Alloc = allocator<_Sp_counted_deleter<b2Body*, box2d::utils::box2DWorld::createStaticBody(const slideshow::internal::ShapeSharedPtr&)::<lambda(b2Body*)>, allocator<void>, __gnu_cxx::_S_atomic> >]’ at ~/gcc/inst/include/c++/16.0.1/bits/allocated_ptr.h:103:69,
> inlined from ‘std::__shared_count<_Lp>::__shared_count(_Ptr, _Deleter, _Alloc) [with _Ptr = b2Body*; _Deleter = box2d::utils::box2DWorld::createStaticBody(const slideshow::internal::ShapeSharedPtr&)::<lambda(b2Body*)>; _Alloc = std::allocator<void>; <template-parameter-2-4> = void; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1007:13,
> inlined from ‘std::__shared_count<_Lp>::__shared_count(_Ptr, _Deleter) [with _Ptr = b2Body*; _Deleter = box2d::utils::box2DWorld::createStaticBody(const slideshow::internal::ShapeSharedPtr&)::<lambda(b2Body*)>; <template-parameter-2-3> = void; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:996:57,
> inlined from ‘std::__shared_ptr<_Tp, _Lp>::__shared_ptr(_Yp*, _Deleter) [with _Yp = b2Body; _Deleter = box2d::utils::box2DWorld::createStaticBody(const slideshow::internal::ShapeSharedPtr&)::<lambda(b2Body*)>; <template-parameter-2-3> = void; _Tp = b2Body; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1557:17,
> inlined from ‘std::shared_ptr<_Tp>::shared_ptr(_Yp*, _Deleter) [with _Yp = b2Body; _Deleter = box2d::utils::box2DWorld::createStaticBody(const slideshow::internal::ShapeSharedPtr&)::<lambda(b2Body*)>; <template-parameter-2-3> = void; _Tp = b2Body]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr.h:231:48,
> inlined from ‘box2d::utils::Box2DBodySharedPtr box2d::utils::box2DWorld::createStaticBody(const slideshow::internal::ShapeSharedPtr&)’ at slideshow/source/engine/box2dtools.cxx:669:6:
> ~/gcc/inst/include/c++/16.0.1/bits/new_allocator.h:151:73: note: at offset 16 into object of size 24 allocated by ‘operator new’
> 151 | return static_cast<_Tp*>(_GLIBCXX_OPERATOR_NEW(__n * sizeof(_Tp)));
> | ^
> In destructor ‘std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::~_Sp_counted_ptr_inplace() [with _Tp = box2d::utils::box2DBody; _Alloc = std::allocator<void>; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’,
> inlined from ‘std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::~_Sp_counted_ptr_inplace() [with _Tp = box2d::utils::box2DBody; _Alloc = std::allocator<void>; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:670:45,
> inlined from ‘void std::_Sp_counted_base<_Lp>::_M_destroy() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:143:9,
> inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:424:18,
> inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:392:5,
> inlined from ‘std::__shared_count<_Lp>::~__shared_count() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1129:21,
> inlined from ‘std::__shared_ptr<_Tp, _Lp>::~__shared_ptr() [with _Tp = b2Body; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1603:7,
> inlined from ‘std::shared_ptr<b2Body>::~shared_ptr()’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr.h:175:11,
> inlined from ‘box2d::utils::Box2DBodySharedPtr box2d::utils::box2DWorld::createStaticBody(const slideshow::internal::ShapeSharedPtr&)’ at slideshow/source/engine/box2dtools.cxx:731:1:
> ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:670:45: error: array subscript ‘std::_Sp_counted_ptr_inplace<box2d::utils::box2DBody, std::allocator<void>, __gnu_cxx::_S_atomic>[0]’ is partly outside array bounds of ‘unsigned char [24]’ [-Werror=array-bounds=]
> 670 | ~_Sp_counted_ptr_inplace() noexcept { }
> | ^
> In member function ‘_Tp* std::__new_allocator<_Tp>::allocate(size_type, const void*) [with _Tp = std::_Sp_counted_deleter<b2Body*, box2d::utils::box2DWorld::createStaticBody(const slideshow::internal::ShapeSharedPtr&)::<lambda(b2Body*)>, std::allocator<void>, __gnu_cxx::_S_atomic>]’,
> inlined from ‘constexpr _Tp* std::allocator< <template-parameter-1-1> >::allocate(std::size_t) [with _Tp = std::_Sp_counted_deleter<b2Body*, box2d::utils::box2DWorld::createStaticBody(const slideshow::internal::ShapeSharedPtr&)::<lambda(b2Body*)>, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at ~/gcc/inst/include/c++/16.0.1/bits/allocator.h:203:40,
> inlined from ‘static constexpr _Tp* std::allocator_traits<std::allocator<_CharT> >::allocate(allocator_type&, size_type) [with _Tp = std::_Sp_counted_deleter<b2Body*, box2d::utils::box2DWorld::createStaticBody(const slideshow::internal::ShapeSharedPtr&)::<lambda(b2Body*)>, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at ~/gcc/inst/include/c++/16.0.1/bits/alloc_traits.h:614:28,
> inlined from ‘std::__allocated_ptr<_Alloc> std::__allocate_guarded(_Alloc&) [with _Alloc = allocator<_Sp_counted_deleter<b2Body*, box2d::utils::box2DWorld::createStaticBody(const slideshow::internal::ShapeSharedPtr&)::<lambda(b2Body*)>, allocator<void>, __gnu_cxx::_S_atomic> >]’ at ~/gcc/inst/include/c++/16.0.1/bits/allocated_ptr.h:103:69,
> inlined from ‘std::__shared_count<_Lp>::__shared_count(_Ptr, _Deleter, _Alloc) [with _Ptr = b2Body*; _Deleter = box2d::utils::box2DWorld::createStaticBody(const slideshow::internal::ShapeSharedPtr&)::<lambda(b2Body*)>; _Alloc = std::allocator<void>; <template-parameter-2-4> = void; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1007:13,
> inlined from ‘std::__shared_count<_Lp>::__shared_count(_Ptr, _Deleter) [with _Ptr = b2Body*; _Deleter = box2d::utils::box2DWorld::createStaticBody(const slideshow::internal::ShapeSharedPtr&)::<lambda(b2Body*)>; <template-parameter-2-3> = void; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:996:57,
> inlined from ‘std::__shared_ptr<_Tp, _Lp>::__shared_ptr(_Yp*, _Deleter) [with _Yp = b2Body; _Deleter = box2d::utils::box2DWorld::createStaticBody(const slideshow::internal::ShapeSharedPtr&)::<lambda(b2Body*)>; <template-parameter-2-3> = void; _Tp = b2Body; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1557:17,
> inlined from ‘std::shared_ptr<_Tp>::shared_ptr(_Yp*, _Deleter) [with _Yp = b2Body; _Deleter = box2d::utils::box2DWorld::createStaticBody(const slideshow::internal::ShapeSharedPtr&)::<lambda(b2Body*)>; <template-parameter-2-3> = void; _Tp = b2Body]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr.h:231:48,
> inlined from ‘box2d::utils::Box2DBodySharedPtr box2d::utils::box2DWorld::createStaticBody(const slideshow::internal::ShapeSharedPtr&)’ at slideshow/source/engine/box2dtools.cxx:669:6:
> ~/gcc/inst/include/c++/16.0.1/bits/new_allocator.h:151:73: note: object of size 24 allocated by ‘operator new’
> 151 | return static_cast<_Tp*>(_GLIBCXX_OPERATOR_NEW(__n * sizeof(_Tp)));
> | ^
> In destructor ‘std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::~_Sp_counted_ptr_inplace() [with _Tp = box2d::utils::box2DBody; _Alloc = std::allocator<void>; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’,
> inlined from ‘void std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::_M_destroy() [with _Tp = box2d::utils::box2DBody; _Alloc = std::allocator<void>; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:684:32,
> inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:424:18,
> inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:392:5,
> inlined from ‘std::__shared_count<_Lp>::~__shared_count() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1129:21,
> inlined from ‘std::__shared_ptr<_Tp, _Lp>::~__shared_ptr() [with _Tp = b2Body; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1603:7,
> inlined from ‘std::shared_ptr<b2Body>::~shared_ptr()’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr.h:175:11,
> inlined from ‘box2d::utils::Box2DBodySharedPtr box2d::utils::box2DWorld::createStaticBody(const slideshow::internal::ShapeSharedPtr&)’ at slideshow/source/engine/box2dtools.cxx:731:1:
> ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:670:45: error: array subscript ‘std::_Sp_counted_ptr_inplace<box2d::utils::box2DBody, std::allocator<void>, __gnu_cxx::_S_atomic>[0]’ is partly outside array bounds of ‘unsigned char [24]’ [-Werror=array-bounds=]
> 670 | ~_Sp_counted_ptr_inplace() noexcept { }
> | ^
> In member function ‘_Tp* std::__new_allocator<_Tp>::allocate(size_type, const void*) [with _Tp = std::_Sp_counted_deleter<b2Body*, box2d::utils::box2DWorld::createStaticBody(const slideshow::internal::ShapeSharedPtr&)::<lambda(b2Body*)>, std::allocator<void>, __gnu_cxx::_S_atomic>]’,
> inlined from ‘constexpr _Tp* std::allocator< <template-parameter-1-1> >::allocate(std::size_t) [with _Tp = std::_Sp_counted_deleter<b2Body*, box2d::utils::box2DWorld::createStaticBody(const slideshow::internal::ShapeSharedPtr&)::<lambda(b2Body*)>, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at ~/gcc/inst/include/c++/16.0.1/bits/allocator.h:203:40,
> inlined from ‘static constexpr _Tp* std::allocator_traits<std::allocator<_CharT> >::allocate(allocator_type&, size_type) [with _Tp = std::_Sp_counted_deleter<b2Body*, box2d::utils::box2DWorld::createStaticBody(const slideshow::internal::ShapeSharedPtr&)::<lambda(b2Body*)>, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at ~/gcc/inst/include/c++/16.0.1/bits/alloc_traits.h:614:28,
> inlined from ‘std::__allocated_ptr<_Alloc> std::__allocate_guarded(_Alloc&) [with _Alloc = allocator<_Sp_counted_deleter<b2Body*, box2d::utils::box2DWorld::createStaticBody(const slideshow::internal::ShapeSharedPtr&)::<lambda(b2Body*)>, allocator<void>, __gnu_cxx::_S_atomic> >]’ at ~/gcc/inst/include/c++/16.0.1/bits/allocated_ptr.h:103:69,
> inlined from ‘std::__shared_count<_Lp>::__shared_count(_Ptr, _Deleter, _Alloc) [with _Ptr = b2Body*; _Deleter = box2d::utils::box2DWorld::createStaticBody(const slideshow::internal::ShapeSharedPtr&)::<lambda(b2Body*)>; _Alloc = std::allocator<void>; <template-parameter-2-4> = void; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1007:13,
> inlined from ‘std::__shared_count<_Lp>::__shared_count(_Ptr, _Deleter) [with _Ptr = b2Body*; _Deleter = box2d::utils::box2DWorld::createStaticBody(const slideshow::internal::ShapeSharedPtr&)::<lambda(b2Body*)>; <template-parameter-2-3> = void; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:996:57,
> inlined from ‘std::__shared_ptr<_Tp, _Lp>::__shared_ptr(_Yp*, _Deleter) [with _Yp = b2Body; _Deleter = box2d::utils::box2DWorld::createStaticBody(const slideshow::internal::ShapeSharedPtr&)::<lambda(b2Body*)>; <template-parameter-2-3> = void; _Tp = b2Body; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1557:17,
> inlined from ‘std::shared_ptr<_Tp>::shared_ptr(_Yp*, _Deleter) [with _Yp = b2Body; _Deleter = box2d::utils::box2DWorld::createStaticBody(const slideshow::internal::ShapeSharedPtr&)::<lambda(b2Body*)>; <template-parameter-2-3> = void; _Tp = b2Body]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr.h:231:48,
> inlined from ‘box2d::utils::Box2DBodySharedPtr box2d::utils::box2DWorld::createStaticBody(const slideshow::internal::ShapeSharedPtr&)’ at slideshow/source/engine/box2dtools.cxx:669:6:
> ~/gcc/inst/include/c++/16.0.1/bits/new_allocator.h:151:73: note: object of size 24 allocated by ‘operator new’
> 151 | return static_cast<_Tp*>(_GLIBCXX_OPERATOR_NEW(__n * sizeof(_Tp)));
> | ^
Change-Id: I437410fb3ca777405f8153c13c3e3cc47bc6e8b3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/197839
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <stephan.bergmann@collabora.com>
|
||
|
|
3e9763c0ae |
-Werror=maybe-uninitialized
> xmloff/source/text/txtimppr.cxx:615:9: error: ‘nVertOrient’ may be used uninitialized [-Werror=maybe-uninitialized]
> 615 | switch( nVertOrient )
> | ^~~~~~
So use the same approach for nVertOrient as was already used for nVertOrientRel
in
|
||
|
|
446f995f86 |
Silence spurious -Werror=uninitialized and -Werror=maybe-uninitialized
seen at least with recent GCC 16 trunk,
> In file included from sw/inc/swatrset.hxx:22,
> from sw/inc/format.hxx:27,
> from sw/inc/fchrfmt.hxx:23,
> from sw/inc/txatbase.hxx:33,
> from sw/inc/txtfld.hxx:22,
> from sw/source/core/txtnode/atrfld.cxx:25:
> In member function ‘SfxPoolItemHolder::operator bool() const’,
> inlined from ‘const SfxPoolItem& SwTextAttr::GetAttr() const’ at sw/inc/txatbase.hxx:175:5,
> inlined from ‘SfxPoolItem& SwTextAttr::GetAttr()’ at sw/inc/txatbase.hxx:181:65,
> inlined from ‘SwTextField::SwTextField(const SfxPoolItemHolder&, sal_Int32, bool)’ at sw/source/core/txtnode/atrfld.cxx:603:70:
> include/svl/itemset.hxx:72:56: error: ‘*(const SfxPoolItemHolder*)((char*)<unknown> + 8).SfxPoolItemHolder::m_pItem’ is used uninitialized [-Werror=uninitialized]
> 72 | explicit operator bool() const { return nullptr != m_pItem; }
> | ^~~~~~~
> In member function ‘bool SfxPoolItemHolder::isDeleted() const’,
> inlined from ‘const SfxPoolItem* SfxPoolItemHolder::getItem() const’ at include/svl/itemset.hxx:69:42,
> inlined from ‘const SfxPoolItem& SwTextAttr::GetAttr() const’ at sw/inc/txatbase.hxx:176:28,
> inlined from ‘SfxPoolItem& SwTextAttr::GetAttr()’ at sw/inc/txatbase.hxx:181:65,
> inlined from ‘SwTextField::SwTextField(const SfxPoolItemHolder&, sal_Int32, bool)’ at sw/source/core/txtnode/atrfld.cxx:603:70:
> include/svl/itemset.hxx:62:37: error: ‘*(const SfxPoolItemHolder*)((char*)<unknown> + 8).SfxPoolItemHolder::m_bDeleted’ may be used uninitialized [-Werror=maybe-uninitialized]
> 62 | bool isDeleted() const { return m_bDeleted; }
> | ^~~~~~~~~~
Change-Id: Id02928cf69afa850f97fe3f1eff958055f2a9302
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/197840
Reviewed-by: Stephan Bergmann <stephan.bergmann@collabora.com>
Tested-by: Jenkins
|
||
|
|
713e048c23 |
Silence spurious -Werror=array-bounds=
seen at least with recent GCC 16 trunk,
> In file included from ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr.h:53,
> from ~/gcc/inst/include/c++/16.0.1/memory:82,
> from include/oox/helper/refvector.hxx:25,
> from sc/source/filter/inc/tablecolumnsbuffer.hxx:22,
> from sc/source/filter/oox/tablecolumnsbuffer.cxx:20:
> In destructor ‘std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::~_Sp_counted_ptr_inplace() [with _Tp = oox::xls::TableColumns; _Alloc = std::allocator<void>; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’,
> inlined from ‘std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::~_Sp_counted_ptr_inplace() [with _Tp = oox::xls::TableColumns; _Alloc = std::allocator<void>; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:670:45,
> inlined from ‘void std::_Sp_counted_base<_Lp>::_M_destroy() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:143:9,
> inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:424:18,
> inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:392:5,
> inlined from ‘std::__shared_count<_Lp>::~__shared_count() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1129:21,
> inlined from ‘std::__shared_ptr<_Tp, _Lp>::~__shared_ptr() [with _Tp = oox::xls::TableColumn; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1603:7,
> inlined from ‘std::shared_ptr<oox::xls::TableColumn>::~shared_ptr()’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr.h:175:11,
> inlined from ‘oox::xls::TableColumn& oox::xls::TableColumns::createTableColumn()’ at sc/source/filter/oox/tablecolumnsbuffer.cxx:110:1:
> ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:670:45: error: array subscript ‘std::_Sp_counted_ptr_inplace<oox::xls::TableColumns, std::allocator<void>, __gnu_cxx::_S_atomic>[0]’ is partly outside array bounds of ‘unsigned char [80]’ [-Werror=array-bounds=]
> 670 | ~_Sp_counted_ptr_inplace() noexcept { }
> | ^
> In file included from ~/gcc/inst/include/c++/16.0.1/x86_64-pc-linux-gnu/bits/c++allocator.h:33,
> from ~/gcc/inst/include/c++/16.0.1/bits/allocator.h:46,
> from ~/gcc/inst/include/c++/16.0.1/string:46,
> from ~/gcc/inst/include/c++/16.0.1/bits/stdexcept_throw.h:57,
> from ~/gcc/inst/include/c++/16.0.1/bits/hashtable_policy.h:35,
> from ~/gcc/inst/include/c++/16.0.1/bits/hashtable.h:37,
> from ~/gcc/inst/include/c++/16.0.1/bits/unordered_map.h:33,
> from ~/gcc/inst/include/c++/16.0.1/unordered_map:43,
> from ~/gcc/inst/include/c++/16.0.1/functional:80,
> from include/oox/helper/refvector.hxx:24:
> In member function ‘_Tp* std::__new_allocator<_Tp>::allocate(size_type, const void*) [with _Tp = std::_Sp_counted_ptr_inplace<oox::xls::TableColumn, std::allocator<void>, __gnu_cxx::_S_atomic>]’,
> inlined from ‘constexpr _Tp* std::allocator< <template-parameter-1-1> >::allocate(std::size_t) [with _Tp = std::_Sp_counted_ptr_inplace<oox::xls::TableColumn, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at ~/gcc/inst/include/c++/16.0.1/bits/allocator.h:203:40,
> inlined from ‘static constexpr _Tp* std::allocator_traits<std::allocator<_CharT> >::allocate(allocator_type&, size_type) [with _Tp = std::_Sp_counted_ptr_inplace<oox::xls::TableColumn, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at ~/gcc/inst/include/c++/16.0.1/bits/alloc_traits.h:614:28,
> inlined from ‘std::__allocated_ptr<_Alloc> std::__allocate_guarded(_Alloc&) [with _Alloc = allocator<_Sp_counted_ptr_inplace<oox::xls::TableColumn, allocator<void>, __gnu_cxx::_S_atomic> >]’ at ~/gcc/inst/include/c++/16.0.1/bits/allocated_ptr.h:103:69,
> inlined from ‘std::__shared_count<_Lp>::__shared_count(_Tp*&, std::_Sp_alloc_shared_tag<_Alloc>, _Args&& ...) [with _Tp = oox::xls::TableColumn; _Alloc = std::allocator<void>; _Args = {oox::xls::TableColumns&}; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1027:9,
> inlined from ‘std::__shared_ptr<_Tp, _Lp>::__shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {oox::xls::TableColumns&}; _Tp = oox::xls::TableColumn; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1805:14,
> inlined from ‘std::shared_ptr<_Tp>::shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {oox::xls::TableColumns&}; _Tp = oox::xls::TableColumn]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr.h:463:59,
> inlined from ‘std::shared_ptr<std::_NonArray<_Tp> > std::make_shared(_Args&& ...) [with _Tp = oox::xls::TableColumn; _Args = {oox::xls::TableColumns&}]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr.h:1066:39,
> inlined from ‘oox::xls::TableColumn& oox::xls::TableColumns::createTableColumn()’ at sc/source/filter/oox/tablecolumnsbuffer.cxx:107:87:
> ~/gcc/inst/include/c++/16.0.1/bits/new_allocator.h:151:73: note: object of size 80 allocated by ‘operator new’
> 151 | return static_cast<_Tp*>(_GLIBCXX_OPERATOR_NEW(__n * sizeof(_Tp)));
> | ^
> In destructor ‘std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::~_Sp_counted_ptr_inplace() [with _Tp = oox::xls::TableColumns; _Alloc = std::allocator<void>; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’,
> inlined from ‘void std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::_M_destroy() [with _Tp = oox::xls::TableColumns; _Alloc = std::allocator<void>; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:684:32,
> inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:424:18,
> inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:392:5,
> inlined from ‘std::__shared_count<_Lp>::~__shared_count() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1129:21,
> inlined from ‘std::__shared_ptr<_Tp, _Lp>::~__shared_ptr() [with _Tp = oox::xls::TableColumn; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1603:7,
> inlined from ‘std::shared_ptr<oox::xls::TableColumn>::~shared_ptr()’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr.h:175:11,
> inlined from ‘oox::xls::TableColumn& oox::xls::TableColumns::createTableColumn()’ at sc/source/filter/oox/tablecolumnsbuffer.cxx:110:1:
> ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:670:45: error: array subscript ‘std::_Sp_counted_ptr_inplace<oox::xls::TableColumns, std::allocator<void>, __gnu_cxx::_S_atomic>[0]’ is partly outside array bounds of ‘unsigned char [80]’ [-Werror=array-bounds=]
> 670 | ~_Sp_counted_ptr_inplace() noexcept { }
> | ^
> In member function ‘_Tp* std::__new_allocator<_Tp>::allocate(size_type, const void*) [with _Tp = std::_Sp_counted_ptr_inplace<oox::xls::TableColumn, std::allocator<void>, __gnu_cxx::_S_atomic>]’,
> inlined from ‘constexpr _Tp* std::allocator< <template-parameter-1-1> >::allocate(std::size_t) [with _Tp = std::_Sp_counted_ptr_inplace<oox::xls::TableColumn, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at ~/gcc/inst/include/c++/16.0.1/bits/allocator.h:203:40,
> inlined from ‘static constexpr _Tp* std::allocator_traits<std::allocator<_CharT> >::allocate(allocator_type&, size_type) [with _Tp = std::_Sp_counted_ptr_inplace<oox::xls::TableColumn, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at ~/gcc/inst/include/c++/16.0.1/bits/alloc_traits.h:614:28,
> inlined from ‘std::__allocated_ptr<_Alloc> std::__allocate_guarded(_Alloc&) [with _Alloc = allocator<_Sp_counted_ptr_inplace<oox::xls::TableColumn, allocator<void>, __gnu_cxx::_S_atomic> >]’ at ~/gcc/inst/include/c++/16.0.1/bits/allocated_ptr.h:103:69,
> inlined from ‘std::__shared_count<_Lp>::__shared_count(_Tp*&, std::_Sp_alloc_shared_tag<_Alloc>, _Args&& ...) [with _Tp = oox::xls::TableColumn; _Alloc = std::allocator<void>; _Args = {oox::xls::TableColumns&}; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1027:9,
> inlined from ‘std::__shared_ptr<_Tp, _Lp>::__shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {oox::xls::TableColumns&}; _Tp = oox::xls::TableColumn; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1805:14,
> inlined from ‘std::shared_ptr<_Tp>::shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {oox::xls::TableColumns&}; _Tp = oox::xls::TableColumn]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr.h:463:59,
> inlined from ‘std::shared_ptr<std::_NonArray<_Tp> > std::make_shared(_Args&& ...) [with _Tp = oox::xls::TableColumn; _Args = {oox::xls::TableColumns&}]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr.h:1066:39,
> inlined from ‘oox::xls::TableColumn& oox::xls::TableColumns::createTableColumn()’ at sc/source/filter/oox/tablecolumnsbuffer.cxx:107:87:
> ~/gcc/inst/include/c++/16.0.1/bits/new_allocator.h:151:73: note: object of size 80 allocated by ‘operator new’
> 151 | return static_cast<_Tp*>(_GLIBCXX_OPERATOR_NEW(__n * sizeof(_Tp)));
> | ^
Change-Id: I5f42c82dba453bd656fc16173a08d19d61186bbc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/197837
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <stephan.bergmann@collabora.com>
|
||
|
|
2399414291 |
-Werror=maybe-uninitialized
Change-Id: I0933c67f66513eb6a16b4d3ecb35eec761f452bb Reviewed-on: https://gerrit.libreoffice.org/c/core/+/197835 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <stephan.bergmann@collabora.com> |
||
|
|
0360f4d2d2 |
Silence spurious -Werror=array-bounds=
seen at least with recent GCC 16 trunk,
> In file included from ~/gcc/inst/include/c++/16.0.1/bits/char_traits.h:59,
> from ~/gcc/inst/include/c++/16.0.1/ios:44,
> from ~/gcc/inst/include/c++/16.0.1/bits/ostream.h:43,
> from ~/gcc/inst/include/c++/16.0.1/ostream:42,
> from include/rtl/ustring.hxx:34,
> from include/com/sun/star/uno/Any.h:30,
> from include/cppuhelper/implbase_ex.hxx:26,
> from include/cppuhelper/implbase5.hxx:26,
> from dbaccess/source/core/inc/querycontainer.hxx:22,
> from dbaccess/source/core/api/querycontainer.cxx:20:
> In function ‘constexpr void std::destroy_at(_Tp*) [with _Tp = dbaccess::ODefinitionContainer_Impl]’,
> inlined from ‘constexpr void std::_Destroy(_Tp*) [with _Tp = dbaccess::ODefinitionContainer_Impl]’ at ~/gcc/inst/include/c++/16.0.1/bits/stl_construct.h:164:22,
> inlined from ‘static constexpr void std::allocator_traits<std::allocator<void> >::destroy(allocator_type&, _Up*) [with _Up = dbaccess::ODefinitionContainer_Impl]’ at ~/gcc/inst/include/c++/16.0.1/bits/alloc_traits.h:819:17,
> inlined from ‘void std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::_M_dispose() [with _Tp = dbaccess::ODefinitionContainer_Impl; _Alloc = std::allocator<void>; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:675:35,
> inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:423:18,
> inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:392:5,
> inlined from ‘std::__shared_count<_Lp>::~__shared_count() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1129:21,
> inlined from ‘std::__shared_ptr<_Tp, _Lp>::~__shared_ptr() [with _Tp = dbaccess::IContainerApprove; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1603:7,
> inlined from ‘std::shared_ptr<dbaccess::IContainerApprove>::~shared_ptr()’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr.h:175:11,
> inlined from ‘void dbaccess::OQueryContainer::init()’ at dbaccess/source/core/api/querycontainer.cxx:87:61:
> ~/gcc/inst/include/c++/16.0.1/bits/stl_construct.h:88:25: error: array subscript ‘dbaccess::ODefinitionContainer_Impl[0]’ is partly outside array bounds of ‘unsigned char [40]’ [-Werror=array-bounds=]
> 88 | __location->~_Tp();
> | ~~~~~~~~~~~~~~~~^~
> In file included from ~/gcc/inst/include/c++/16.0.1/x86_64-pc-linux-gnu/bits/c++allocator.h:33,
> from ~/gcc/inst/include/c++/16.0.1/bits/allocator.h:46,
> from ~/gcc/inst/include/c++/16.0.1/string:46,
> from ~/gcc/inst/include/c++/16.0.1/bits/locale_classes.h:43,
> from ~/gcc/inst/include/c++/16.0.1/bits/ios_base.h:43,
> from ~/gcc/inst/include/c++/16.0.1/ios:46:
> In member function ‘_Tp* std::__new_allocator<_Tp>::allocate(size_type, const void*) [with _Tp = std::_Sp_counted_ptr_inplace<dbaccess::ObjectNameApproval, std::allocator<void>, __gnu_cxx::_S_atomic>]’,
> inlined from ‘constexpr _Tp* std::allocator< <template-parameter-1-1> >::allocate(std::size_t) [with _Tp = std::_Sp_counted_ptr_inplace<dbaccess::ObjectNameApproval, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at ~/gcc/inst/include/c++/16.0.1/bits/allocator.h:203:40,
> inlined from ‘static constexpr _Tp* std::allocator_traits<std::allocator<_CharT> >::allocate(allocator_type&, size_type) [with _Tp = std::_Sp_counted_ptr_inplace<dbaccess::ObjectNameApproval, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at ~/gcc/inst/include/c++/16.0.1/bits/alloc_traits.h:614:28,
> inlined from ‘std::__allocated_ptr<_Alloc> std::__allocate_guarded(_Alloc&) [with _Alloc = allocator<_Sp_counted_ptr_inplace<dbaccess::ObjectNameApproval, allocator<void>, __gnu_cxx::_S_atomic> >]’ at ~/gcc/inst/include/c++/16.0.1/bits/allocated_ptr.h:103:69,
> inlined from ‘std::__shared_count<_Lp>::__shared_count(_Tp*&, std::_Sp_alloc_shared_tag<_Alloc>, _Args&& ...) [with _Tp = dbaccess::ObjectNameApproval; _Alloc = std::allocator<void>; _Args = {com::sun::star::uno::Reference<com::sun::star::sdbc::XConnection>&, dbaccess::ObjectNameApproval::ObjectType}; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1027:9,
> inlined from ‘std::__shared_ptr<_Tp, _Lp>::__shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {com::sun::star::uno::Reference<com::sun::star::sdbc::XConnection>&, dbaccess::ObjectNameApproval::ObjectType}; _Tp = dbaccess::ObjectNameApproval; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1805:14,
> inlined from ‘std::shared_ptr<_Tp>::shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {com::sun::star::uno::Reference<com::sun::star::sdbc::XConnection>&, dbaccess::ObjectNameApproval::ObjectType}; _Tp = dbaccess::ObjectNameApproval]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr.h:463:59,
> inlined from ‘std::shared_ptr<std::_NonArray<_Tp> > std::make_shared(_Args&& ...) [with _Tp = dbaccess::ObjectNameApproval; _Args = {com::sun::star::uno::Reference<com::sun::star::sdbc::XConnection>&, dbaccess::ObjectNameApproval::ObjectType}]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr.h:1066:39,
> inlined from ‘void dbaccess::OQueryContainer::init()’ at dbaccess/source/core/api/querycontainer.cxx:87:61:
> ~/gcc/inst/include/c++/16.0.1/bits/new_allocator.h:151:73: note: at offset 16 into object of size 40 allocated by ‘operator new’
> 151 | return static_cast<_Tp*>(_GLIBCXX_OPERATOR_NEW(__n * sizeof(_Tp)));
> | ^
> In file included from ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr.h:53,
> from ~/gcc/inst/include/c++/16.0.1/memory:82,
> from include/rtl/stringconcat.hxx:22,
> from include/rtl/string.hxx:51,
> from include/rtl/ustring.hxx:45:
> In destructor ‘std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::~_Sp_counted_ptr_inplace() [with _Tp = dbaccess::ODefinitionContainer_Impl; _Alloc = std::allocator<void>; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’,
> inlined from ‘std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::~_Sp_counted_ptr_inplace() [with _Tp = dbaccess::ODefinitionContainer_Impl; _Alloc = std::allocator<void>; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:670:45,
> inlined from ‘void std::_Sp_counted_base<_Lp>::_M_destroy() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:143:9,
> inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:424:18,
> inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:392:5,
> inlined from ‘std::__shared_count<_Lp>::~__shared_count() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1129:21,
> inlined from ‘std::__shared_ptr<_Tp, _Lp>::~__shared_ptr() [with _Tp = dbaccess::IContainerApprove; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1603:7,
> inlined from ‘std::shared_ptr<dbaccess::IContainerApprove>::~shared_ptr()’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr.h:175:11,
> inlined from ‘void dbaccess::OQueryContainer::init()’ at dbaccess/source/core/api/querycontainer.cxx:87:61:
> ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:670:45: error: array subscript ‘std::_Sp_counted_ptr_inplace<dbaccess::ODefinitionContainer_Impl, std::allocator<void>, __gnu_cxx::_S_atomic>[0]’ is partly outside array bounds of ‘unsigned char [40]’ [-Werror=array-bounds=]
> 670 | ~_Sp_counted_ptr_inplace() noexcept { }
> | ^
> In member function ‘_Tp* std::__new_allocator<_Tp>::allocate(size_type, const void*) [with _Tp = std::_Sp_counted_ptr_inplace<dbaccess::ObjectNameApproval, std::allocator<void>, __gnu_cxx::_S_atomic>]’,
> inlined from ‘constexpr _Tp* std::allocator< <template-parameter-1-1> >::allocate(std::size_t) [with _Tp = std::_Sp_counted_ptr_inplace<dbaccess::ObjectNameApproval, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at ~/gcc/inst/include/c++/16.0.1/bits/allocator.h:203:40,
> inlined from ‘static constexpr _Tp* std::allocator_traits<std::allocator<_CharT> >::allocate(allocator_type&, size_type) [with _Tp = std::_Sp_counted_ptr_inplace<dbaccess::ObjectNameApproval, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at ~/gcc/inst/include/c++/16.0.1/bits/alloc_traits.h:614:28,
> inlined from ‘std::__allocated_ptr<_Alloc> std::__allocate_guarded(_Alloc&) [with _Alloc = allocator<_Sp_counted_ptr_inplace<dbaccess::ObjectNameApproval, allocator<void>, __gnu_cxx::_S_atomic> >]’ at ~/gcc/inst/include/c++/16.0.1/bits/allocated_ptr.h:103:69,
> inlined from ‘std::__shared_count<_Lp>::__shared_count(_Tp*&, std::_Sp_alloc_shared_tag<_Alloc>, _Args&& ...) [with _Tp = dbaccess::ObjectNameApproval; _Alloc = std::allocator<void>; _Args = {com::sun::star::uno::Reference<com::sun::star::sdbc::XConnection>&, dbaccess::ObjectNameApproval::ObjectType}; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1027:9,
> inlined from ‘std::__shared_ptr<_Tp, _Lp>::__shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {com::sun::star::uno::Reference<com::sun::star::sdbc::XConnection>&, dbaccess::ObjectNameApproval::ObjectType}; _Tp = dbaccess::ObjectNameApproval; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1805:14,
> inlined from ‘std::shared_ptr<_Tp>::shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {com::sun::star::uno::Reference<com::sun::star::sdbc::XConnection>&, dbaccess::ObjectNameApproval::ObjectType}; _Tp = dbaccess::ObjectNameApproval]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr.h:463:59,
> inlined from ‘std::shared_ptr<std::_NonArray<_Tp> > std::make_shared(_Args&& ...) [with _Tp = dbaccess::ObjectNameApproval; _Args = {com::sun::star::uno::Reference<com::sun::star::sdbc::XConnection>&, dbaccess::ObjectNameApproval::ObjectType}]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr.h:1066:39,
> inlined from ‘void dbaccess::OQueryContainer::init()’ at dbaccess/source/core/api/querycontainer.cxx:87:61:
> ~/gcc/inst/include/c++/16.0.1/bits/new_allocator.h:151:73: note: object of size 40 allocated by ‘operator new’
> 151 | return static_cast<_Tp*>(_GLIBCXX_OPERATOR_NEW(__n * sizeof(_Tp)));
> | ^
> In destructor ‘std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::~_Sp_counted_ptr_inplace() [with _Tp = dbaccess::ODefinitionContainer_Impl; _Alloc = std::allocator<void>; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’,
> inlined from ‘void std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::_M_destroy() [with _Tp = dbaccess::ODefinitionContainer_Impl; _Alloc = std::allocator<void>; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:684:32,
> inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:424:18,
> inlined from ‘void std::_Sp_counted_base<_Lp>::_M_release() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:392:5,
> inlined from ‘std::__shared_count<_Lp>::~__shared_count() [with __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1129:21,
> inlined from ‘std::__shared_ptr<_Tp, _Lp>::~__shared_ptr() [with _Tp = dbaccess::IContainerApprove; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1603:7,
> inlined from ‘std::shared_ptr<dbaccess::IContainerApprove>::~shared_ptr()’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr.h:175:11,
> inlined from ‘void dbaccess::OQueryContainer::init()’ at dbaccess/source/core/api/querycontainer.cxx:87:61:
> ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:670:45: error: array subscript ‘std::_Sp_counted_ptr_inplace<dbaccess::ODefinitionContainer_Impl, std::allocator<void>, __gnu_cxx::_S_atomic>[0]’ is partly outside array bounds of ‘unsigned char [40]’ [-Werror=array-bounds=]
> 670 | ~_Sp_counted_ptr_inplace() noexcept { }
> | ^
> In member function ‘_Tp* std::__new_allocator<_Tp>::allocate(size_type, const void*) [with _Tp = std::_Sp_counted_ptr_inplace<dbaccess::ObjectNameApproval, std::allocator<void>, __gnu_cxx::_S_atomic>]’,
> inlined from ‘constexpr _Tp* std::allocator< <template-parameter-1-1> >::allocate(std::size_t) [with _Tp = std::_Sp_counted_ptr_inplace<dbaccess::ObjectNameApproval, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at ~/gcc/inst/include/c++/16.0.1/bits/allocator.h:203:40,
> inlined from ‘static constexpr _Tp* std::allocator_traits<std::allocator<_CharT> >::allocate(allocator_type&, size_type) [with _Tp = std::_Sp_counted_ptr_inplace<dbaccess::ObjectNameApproval, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at ~/gcc/inst/include/c++/16.0.1/bits/alloc_traits.h:614:28,
> inlined from ‘std::__allocated_ptr<_Alloc> std::__allocate_guarded(_Alloc&) [with _Alloc = allocator<_Sp_counted_ptr_inplace<dbaccess::ObjectNameApproval, allocator<void>, __gnu_cxx::_S_atomic> >]’ at ~/gcc/inst/include/c++/16.0.1/bits/allocated_ptr.h:103:69,
> inlined from ‘std::__shared_count<_Lp>::__shared_count(_Tp*&, std::_Sp_alloc_shared_tag<_Alloc>, _Args&& ...) [with _Tp = dbaccess::ObjectNameApproval; _Alloc = std::allocator<void>; _Args = {com::sun::star::uno::Reference<com::sun::star::sdbc::XConnection>&, dbaccess::ObjectNameApproval::ObjectType}; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1027:9,
> inlined from ‘std::__shared_ptr<_Tp, _Lp>::__shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {com::sun::star::uno::Reference<com::sun::star::sdbc::XConnection>&, dbaccess::ObjectNameApproval::ObjectType}; _Tp = dbaccess::ObjectNameApproval; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr_base.h:1805:14,
> inlined from ‘std::shared_ptr<_Tp>::shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {com::sun::star::uno::Reference<com::sun::star::sdbc::XConnection>&, dbaccess::ObjectNameApproval::ObjectType}; _Tp = dbaccess::ObjectNameApproval]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr.h:463:59,
> inlined from ‘std::shared_ptr<std::_NonArray<_Tp> > std::make_shared(_Args&& ...) [with _Tp = dbaccess::ObjectNameApproval; _Args = {com::sun::star::uno::Reference<com::sun::star::sdbc::XConnection>&, dbaccess::ObjectNameApproval::ObjectType}]’ at ~/gcc/inst/include/c++/16.0.1/bits/shared_ptr.h:1066:39,
> inlined from ‘void dbaccess::OQueryContainer::init()’ at dbaccess/source/core/api/querycontainer.cxx:87:61:
> ~/gcc/inst/include/c++/16.0.1/bits/new_allocator.h:151:73: note: object of size 40 allocated by ‘operator new’
> 151 | return static_cast<_Tp*>(_GLIBCXX_OPERATOR_NEW(__n * sizeof(_Tp)));
> | ^
Change-Id: I089a58793649d892e88b7e3632c8b61f89b0a60c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/197834
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <stephan.bergmann@collabora.com>
|
||
|
|
56a43e0966 |
Silence spurious -Werror=array-bounds=
seen at least with recent GCC 16 trunk, > In member function ‘virtual void SbModule::SetParent(SbxObject*)’, > inlined from ‘virtual SbxVariable* SbModule::Find(const rtl::OUString&, SbxClassType)’ at basic/source/classes/sbxmod.cxx:653:36: > basic/source/classes/sbxmod.cxx:671:13: error: array subscript ‘SbModule[0]’ is partly outside array bounds of ‘unsigned char [152]’ [-Werror=array-bounds=] > 671 | pParent = p; > | ~~~~~~~~^~~ > basic/source/classes/sbxmod.cxx: In member function ‘virtual SbxVariable* SbModule::Find(const rtl::OUString&, SbxClassType)’: > basic/source/classes/sbxmod.cxx:651:55: note: object of size 152 allocated by ‘operator new’ > 651 | pRes = new SbxVariable( SbxOBJECT ); > | ^ Change-Id: I0823b28063b6e224f9cc28aee55fd21e2f21aa1a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/197833 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <stephan.bergmann@collabora.com> |
||
|
|
8fb5be18f8 |
Use OStringBuffer as a pad for the mutable string passed to mkstemp
...by introducing OStringBuffer::getMutableStr and (for consistency) OUStringBuffer::getMutableStr Change-Id: I4dfc3b8d8ffb49b8b3742600081d075536b312e5 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/197605 Reviewed-by: Stephan Bergmann <stephan.bergmann@collabora.com> Tested-by: Jenkins |
||
|
|
25b197e063 |
missing includes
Change-Id: Iaab5ac2575e5b4b4365148fa3c9c645e7f4836e4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/197239 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <stephan.bergmann@collabora.com> |
||
|
|
47a8c139a4 |
external/poppler: missing includes (for INT_MAX etc.)
Change-Id: I7189b126b335a70e045adb46676c3271f6a113cf Reviewed-on: https://gerrit.libreoffice.org/c/core/+/197236 Reviewed-by: Stephan Bergmann <stephan.bergmann@collabora.com> Tested-by: Jenkins |
||
|
|
64c0efa33f |
Don't consider semantics for three-segment bootstrap var refs erroneous
I had added that comment back in
|
||
|
|
1ffc2b44e4 |
Actually use "..."_tstr
...after
|
||
|
|
b0f189160c |
Prevent int vs. sal_Int32 mismatch
...as caused build issues for e.g. 32-bit Wasm Change-Id: Iec2964dd73b29cca8b1acbe297cdf0aee27cf77a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/196620 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <stephan.bergmann@collabora.com> |
||
|
|
019b8338fb |
missing include
Change-Id: I2002b4219375f461ab6cdbf28228a9510516bf4c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/196619 Reviewed-by: Stephan Bergmann <stephan.bergmann@collabora.com> Tested-by: Jenkins |
||
|
|
88b9ea790b |
We can use the "official" typedef names here
no need to mess with the illegally-named struct types directly Change-Id: If5e6e7b725cb4904c269312b1b172c9f9911dfb0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/196590 Reviewed-by: Stephan Bergmann <stephan.bergmann@collabora.com> Tested-by: Jenkins |
||
|
|
a8156c8167 |
loplugin:unreffun
Change-Id: I81be1facce17a2516000884ceb8c84620e52c31a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/196574 Reviewed-by: Stephan Bergmann <stephan.bergmann@collabora.com> Tested-by: Jenkins |
||
|
|
70038dfcb3 |
missing include
Change-Id: Icf0eb4943596d33f632d2209cb955ebbc3434e72 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/196573 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <stephan.bergmann@collabora.com> |
||
|
|
030d1a13a1 |
-Werror=unused-but-set-variable
...after
|