diff options
author | Stephan Bergmann <stephan.bergmann@allotropia.de> | 2024-04-05 16:48:03 +0200 |
---|---|---|
committer | Stephan Bergmann <stephan.bergmann@allotropia.de> | 2024-04-05 22:44:48 +0200 |
commit | 86842d70e983913002ca0faf35c7288983007a12 (patch) | |
tree | 027d8b41f9d32461e12732c4b5df39daf2038f4c /xmloff | |
parent | a076bbc5261885d49c592acd46b238bd659ccb41 (diff) |
Silence strange -Wmaybe-uninitialized with recent GCC 14
...seen at least with some (--enable-dbgutil --enable-otpimized etc.)
configuration and a recent GCC 14 trunk,
> In file included from ~/gcc/inst/include/c++/14.0.1/map:62,
> from xmloff/inc/txtflde.hxx:32,
> from xmloff/source/text/txtflde.cxx:26:
> In member function ‘std::_Rb_tree_node<_Val>* std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::_M_mbegin() const [with _Key = com::sun::star::uno::Reference<com::sun::star::text::XText>; _Val = std::pair<const com::sun::star::uno::Reference<com::sun::star::text::XText>, std::__debug::set<rtl::OUString> >; _KeyOfValue = std::_Select1st<std::pair<const com::sun::star::uno::Reference<com::sun::star::text::XText>, std::__debug::set<rtl::OUString> > >; _Compare = std::less<com::sun::star::uno::Reference<com::sun::star::text::XText> >; _Alloc = std::allocator<std::pair<const com::sun::star::uno::Reference<com::sun::star::text::XText>, std::__debug::set<rtl::OUString> > >]’,
> inlined from ‘std::_Rb_tree_node<_Val>* std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::_M_begin() [with _Key = com::sun::star::uno::Reference<com::sun::star::text::XText>; _Val = std::pair<const com::sun::star::uno::Reference<com::sun::star::text::XText>, std::__debug::set<rtl::OUString> >; _KeyOfValue = std::_Select1st<std::pair<const com::sun::star::uno::Reference<com::sun::star::text::XText>, std::__debug::set<rtl::OUString> > >; _Compare = std::less<com::sun::star::uno::Reference<com::sun::star::text::XText> >; _Alloc = std::allocator<std::pair<const com::sun::star::uno::Reference<com::sun::star::text::XText>, std::__debug::set<rtl::OUString> > >]’ at ~/gcc/inst/include/c++/14.0.1/bits/stl_tree.h:737:25,
> inlined from ‘std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::~_Rb_tree() [with _Key = com::sun::star::uno::Reference<com::sun::star::text::XText>; _Val = std::pair<const com::sun::star::uno::Reference<com::sun::star::text::XText>, std::__debug::set<rtl::OUString> >; _KeyOfValue = std::_Select1st<std::pair<const com::sun::star::uno::Reference<com::sun::star::text::XText>, std::__debug::set<rtl::OUString> > >; _Compare = std::less<com::sun::star::uno::Reference<com::sun::star::text::XText> >; _Alloc = std::allocator<std::pair<const com::sun::star::uno::Reference<com::sun::star::text::XText>, std::__debug::set<rtl::OUString> > >]’ at ~/gcc/inst/include/c++/14.0.1/bits/stl_tree.h:982:17,
> inlined from ‘std::__cxx1998::map<_Key, _Tp, _Compare, _Alloc>::~map() [with _Key = com::sun::star::uno::Reference<com::sun::star::text::XText>; _Tp = std::__debug::set<rtl::OUString>; _Compare = std::less<com::sun::star::uno::Reference<com::sun::star::text::XText> >; _Alloc = std::allocator<std::pair<const com::sun::star::uno::Reference<com::sun::star::text::XText>, std::__debug::set<rtl::OUString> > >]’ at ~/gcc/inst/include/c++/14.0.1/bits/stl_map.h:314:7,
> inlined from ‘std::__debug::map<_Key, _Tp, _Cmp, _Allocator>::~map() [with _Key = com::sun::star::uno::Reference<com::sun::star::text::XText>; _Tp = std::__debug::set<rtl::OUString>; _Compare = std::less<com::sun::star::uno::Reference<com::sun::star::text::XText> >; _Allocator = std::allocator<std::pair<const com::sun::star::uno::Reference<com::sun::star::text::XText>, std::__debug::set<rtl::OUString> > >]’ at ~/gcc/inst/include/c++/14.0.1/debug/map.h:136:7,
> inlined from ‘constexpr void std::_Optional_payload_base<_Tp>::_M_destroy() [with _Tp = std::__debug::map<com::sun::star::uno::Reference<com::sun::star::text::XText>, std::__debug::set<rtl::OUString> >]’ at ~/gcc/inst/include/c++/14.0.1/optional:283:35,
> inlined from ‘constexpr void std::_Optional_payload_base<_Tp>::_M_reset() [with _Tp = std::__debug::map<com::sun::star::uno::Reference<com::sun::star::text::XText>, std::__debug::set<rtl::OUString> >]’ at ~/gcc/inst/include/c++/14.0.1/optional:314:14,
> inlined from ‘constexpr void std::_Optional_base_impl<_Tp, _Dp>::_M_reset() [with _Tp = std::__debug::map<com::sun::star::uno::Reference<com::sun::star::text::XText>, std::__debug::set<rtl::OUString> >; _Dp = std::_Optional_base<std::__debug::map<com::sun::star::uno::Reference<com::sun::star::text::XText>, std::__debug::set<rtl::OUString> >, false, false>]’ at ~/gcc/inst/include/c++/14.0.1/optional:466:53,
> inlined from ‘constexpr std::enable_if_t<((bool)is_constructible_v<_Tp, _Args ...>), _Tp&> std::optional<_Tp>::emplace(_Args&& ...) [with _Args = {}; _Tp = std::__debug::map<com::sun::star::uno::Reference<com::sun::star::text::XText>, std::__debug::set<rtl::OUString> >]’ at ~/gcc/inst/include/c++/14.0.1/optional:915:18,
> inlined from ‘void XMLTextFieldExport::SetExportOnlyUsedFieldDeclarations(bool)’ at xmloff/source/text/txtflde.cxx:2250:30:
> ~/gcc/inst/include/c++/14.0.1/bits/stl_tree.h:733:73: error: ‘*(const std::_Rb_tree<com::sun::star::uno::Reference<com::sun::star::text::XText>, std::pair<const com::sun::star::uno::Reference<com::sun::star::text::XText>, std::__debug::set<rtl::OUString, std::less<rtl::OUString>, std::allocator<rtl::OUString> > >, std::_Select1st<std::pair<const com::sun::star::uno::Reference<com::sun::star::text::XText>, std::__debug::set<rtl::OUString, std::less<rtl::OUString>, std::allocator<rtl::OUString> > > >, std::less<com::sun::star::uno::Reference<com::sun::star::text::XText> >, std::allocator<std::pair<const com::sun::star::uno::Reference<com::sun::star::text::XText>, std::__debug::set<rtl::OUString, std::less<rtl::OUString>, std::allocator<rtl::OUString> > > > >*)((char*)this + 32).std::_Rb_tree<com::sun::star::uno::Reference<com::sun::star::text::XText>, std::pair<const com::sun::star::uno::Reference<com::sun::star::text::XText>, std::__debug::set<rtl::OUString> >, std::_Select1st<std::pair<const com::sun::star::uno::Reference<com::sun::star::text::XText>, std::__debug::set<rtl::OUString> > >, std::less<com::sun::star::uno::Reference<com::sun::star::text::XText> >, std::allocator<std::pair<const com::sun::star::uno::Reference<com::sun::star::text::XText>, std::__debug::set<rtl::OUString> > > >::_M_impl.std::_Rb_tree<com::sun::star::uno::Reference<com::sun::star::text::XText>, std::pair<const com::sun::star::uno::Reference<com::sun::star::text::XText>, std::__debug::set<rtl::OUString> >, std::_Select1st<std::pair<const com::sun::star::uno::Reference<com::sun::star::text::XText>, std::__debug::set<rtl::OUString> > >, std::less<com::sun::star::uno::Reference<com::sun::star::text::XText> >, std::allocator<std::pair<const com::sun::star::uno::Reference<com::sun::star::text::XText>, std::__debug::set<rtl::OUString> > > >::_Rb_tree_impl<std::less<com::sun::star::uno::Reference<com::sun::star::text::XText> >, true>::std::_Rb_tree_header.std::_Rb_tree_header::_M_header.std::_Rb_tree_node_base::_M_parent’ may be used uninitialized [-Werror=maybe-uninitialized]
> 733 | { return static_cast<_Link_type>(this->_M_impl._M_header._M_parent); }
> | ^
Change-Id: I827e5a1de31006fbedd7857fd21fc5a9cb652172
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165822
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <stephan.bergmann@allotropia.de>
Diffstat (limited to 'xmloff')
-rw-r--r-- | xmloff/source/text/txtflde.cxx | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/xmloff/source/text/txtflde.cxx b/xmloff/source/text/txtflde.cxx index c90c3e8fb479..f517bf3595d7 100644 --- a/xmloff/source/text/txtflde.cxx +++ b/xmloff/source/text/txtflde.cxx @@ -2247,7 +2247,14 @@ void XMLTextFieldExport::SetExportOnlyUsedFieldDeclarations( // create used masters set (if none is used) if (bExportOnlyUsed) +#if defined __GNUC__ && !defined __clang__ && __GNUC__ == 14 +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wmaybe-uninitialized" +#endif moUsedMasters.emplace(); +#if defined __GNUC__ && !defined __clang__ && __GNUC__ == 14 +#pragma GCC diagnostic pop +#endif } void XMLTextFieldExport::ExportElement(enum XMLTokenEnum eElementName, |