-
Notifications
You must be signed in to change notification settings - Fork 2.3k
g++ C++20 warnings #3734
Copy link
Copy link
Closed
Labels
Milestone
Description
Some very noisy false-positive warnings, should be disabled:
eg:
poco/Foundation/src/MD4Engine.cpp
Line 134 in 2934c38
| _digest.insert(_digest.begin(), digest, digest + sizeof(digest)); |
In file included from /usr/include/c++/11/bits/char_traits.h:39,
from /usr/include/c++/11/string:40,
from include/Poco/Bugcheck.h:22,
from include/Poco/Foundation.h:159,
from include/Poco/MD4Engine.h:44,
from src/MD4Engine.cpp:38:
In static member function ‘static constexpr _Tp* std::__copy_move<_IsMove, true, std::random_access_iterator_tag>::__copy_m(const _Tp*, const _Tp*, _Tp*) [with _Tp = unsigned char; bool _IsMove = true]’,
inlined from ‘constexpr _OI std::__copy_move_a2(_II, _II, _OI) [with bool _IsMove = true; _II = unsigned char*; _OI = unsigned char*]’ at /usr/include/c++/11/bits/stl_algobase.h:495:30,
inlined from ‘constexpr _OI std::__copy_move_a1(_II, _II, _OI) [with bool _IsMove = true; _II = unsigned char*; _OI = unsigned char*]’ at /usr/include/c++/11/bits/stl_algobase.h:522:42,
inlined from ‘constexpr _OI std::__copy_move_a(_II, _II, _OI) [with bool _IsMove = true; _II = unsigned char*; _OI = unsigned char*]’ at /usr/include/c++/11/bits/stl_algobase.h:529:31,
inlined from ‘constexpr _OI std::copy(_II, _II, _OI) [with _II = std::move_iterator<unsigned char*>; _OI = unsigned char*]’ at /usr/include/c++/11/bits/stl_algobase.h:620:7,
inlined from ‘static _ForwardIterator std::__uninitialized_copy<true>::__uninit_copy(_InputIterator, _InputIterator, _ForwardIterator) [with _InputIterator = std::move_iterator<unsigned char*>; _ForwardIterator = unsigned char*]’ at /usr/include/c++/11/bits/stl_uninitialized.h:110:27,
inlined from ‘_ForwardIterator std::uninitialized_copy(_InputIterator, _InputIterator, _ForwardIterator) [with _InputIterator = std::move_iterator<unsigned char*>; _ForwardIterator = unsigned char*]’ at /usr/include/c++/11/bits/stl_uninitialized.h:151:15,
inlined from ‘_ForwardIterator std::__uninitialized_copy_a(_InputIterator, _InputIterator, _ForwardIterator, std::allocator<_Tp>&) [with _InputIterator = std::move_iterator<unsigned char*>; _ForwardIterator = unsigned char*; _Tp = unsigned char]’ at /usr/include/c++/11/bits/stl_uninitialized.h:333:37,
inlined from ‘_ForwardIterator std::__uninitialized_move_if_noexcept_a(_InputIterator, _InputIterator, _ForwardIterator, _Allocator&) [with _InputIterator = unsigned char*; _ForwardIterator = unsigned char*; _Allocator = std::allocator<unsigned char>]’ at /usr/include/c++/11/bits/stl_uninitialized.h:355:2,
inlined from ‘void std::vector<_Tp, _Alloc>::_M_range_insert(std::vector<_Tp, _Alloc>::iterator, _ForwardIterator, _ForwardIterator, std::forward_iterator_tag) [with _ForwardIterator = unsigned char*; _Tp = unsigned char; _Alloc = std::allocator<unsigned char>]’ at /usr/include/c++/11/bits/vector.tcc:783:9,
inlined from ‘void std::vector<_Tp, _Alloc>::_M_insert_dispatch(std::vector<_Tp, _Alloc>::iterator, _InputIterator, _InputIterator, std::__false_type) [with _InputIterator = unsigned char*; _Tp = unsigned char; _Alloc = std::allocator<unsigned char>]’ at /usr/include/c++/11/bits/stl_vector.h:1665:19,
inlined from ‘std::vector<_Tp, _Alloc>::iterator std::vector<_Tp, _Alloc>::insert(std::vector<_Tp, _Alloc>::const_iterator, _InputIterator, _InputIterator) [with _InputIterator = unsigned char*; <template-parameter-2-2> = void; _Tp = unsigned char; _Alloc = std::allocator<unsigned char>]’ at /usr/include/c++/11/bits/stl_vector.h:1383:22,
inlined from ‘virtual const Digest& Poco::MD4Engine::digest()’ at src/MD4Engine.cpp:138:16:
/usr/include/c++/11/bits/stl_algobase.h:431:30: warning: ‘void* __builtin_memmove(void*, const void*, long unsigned int)’ writing 1 or more bytes into a region of size 0 overflows the destination [-Wstringop-overflow=]
431 | __builtin_memmove(__result, __first, sizeof(_Tp) * _Num);
| ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/x86_64-linux-gnu/c++/11/bits/c++allocator.h:33,
from /usr/include/c++/11/bits/allocator.h:46,
from /usr/include/c++/11/string:41,
from include/Poco/Bugcheck.h:22,
from include/Poco/Foundation.h:159,
from include/Poco/MD4Engine.h:44,
from src/MD4Engine.cpp:38:
/usr/include/c++/11/ext/new_allocator.h: In member function ‘virtual const Digest& Poco::MD4Engine::digest()’:
/usr/include/c++/11/ext/new_allocator.h:127:48: note: at offset 16 into destination object of size 16 allocated by ‘operator new’
127 | return static_cast<_Tp*>(::operator new(__n * sizeof(_Tp)));
| ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~
/usr/include/c++/11/ext/new_allocator.h:127:48: note: at offset [17, 48] into destination object of size 16 allocated by ‘operator new’
Reactions are currently unavailable