Skip to content

26.07 fails to build with GCC16 due to -Werror=array-bounds= #824

Description

@ggardet

Release 26.07 fails to build with GCC16 with:

[  999s] [ 50%] Building CXX object src/backends/reference/test/CMakeFiles/armnnRefBackendUnitTests.dir/RefTensorHandleTests.cpp.o
[  999s] cd /home/abuild/rpmbuild/BUILD/armnn-26.07-build/armnn-26.07/build/src/backends/reference/test && /usr/bin/c++ -DARMCOMPUTENEON_ENABLED -DARMNNREF_ENABLED -DDYNAMIC_BACKEND_BUILD_DIR=\"/home/abuild/rpmbuild/BUILD/armnn-26.07-build/armnn-26.07/build\" -I/home/abuild/rpmbuild/BUILD/armnn-26.07-build/armnn-26.07/include -I/home/abuild/rpmbuild/BUILD/armnn-26.07-build/armnn-26.07/profiling -I/home/abuild/rpmbuild/BUILD/armnn-26.07-build/armnn-26.07/src/armnn -I/home/abuild/rpmbuild/BUILD/armnn-26.07-build/armnn-26.07/src/armnnUtils -I/home/abuild/rpmbuild/BUILD/armnn-26.07-build/armnn-26.07/src/armnnTestUtils -I/home/abuild/rpmbuild/BUILD/armnn-26.07-build/armnn-26.07/src/backends -I/home/abuild/rpmbuild/BUILD/armnn-26.07-build/armnn-26.07/src/profiling -I/home/abuild/rpmbuild/BUILD/armnn-26.07-build/armnn-26.07/profiling/common/include -I/home/abuild/rpmbuild/BUILD/armnn-26.07-build/armnn-26.07/profiling/client/include -I/home/abuild/rpmbuild/BUILD/armnn-26.07-build/armnn-26.07/third-party/doctest -isystem /home/abuild/rpmbuild/BUILD/armnn-26.07-build/armnn-26.07/third-party -isystem /usr/include/half -mbranch-protection=standard -O2 -Wall -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=3 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -Werror=return-type  -g -pthread -Wno-error=unused-result -std=c++17 -Wall -Wextra -Werror -Wold-style-cast -Wno-missing-braces -Wconversion -Wsign-conversion  -Wno-psabi -O2 -g  -std=gnu++17 -fPIC -MD -MT src/backends/reference/test/CMakeFiles/armnnRefBackendUnitTests.dir/RefTensorHandleTests.cpp.o -MF CMakeFiles/armnnRefBackendUnitTests.dir/RefTensorHandleTests.cpp.o.d -o CMakeFiles/armnnRefBackendUnitTests.dir/RefTensorHandleTests.cpp.o -c /home/abuild/rpmbuild/BUILD/armnn-26.07-build/armnn-26.07/src/backends/reference/test/RefTensorHandleTests.cpp
[  999s] In file included from /usr/include/c++/16/bits/stl_tempbuf.h:61,
[  999s]                  from /usr/include/c++/16/memory:68,
[  999s]                  from /home/abuild/rpmbuild/BUILD/armnn-26.07-build/armnn-26.07/include/armnn/BackendId.hpp:7,
[  999s]                  from /home/abuild/rpmbuild/BUILD/armnn-26.07-build/armnn-26.07/src/backends/reference/test/RefTensorHandleTests.cpp:8:
[  999s] In function ‘constexpr void std::_Destroy(_Tp*) [with _Tp = armnn::PassthroughTensorHandle]’,
[  999s]     inlined from ‘static void std::allocator_traits<std::allocator<void> >::destroy(allocator_type&, _Up*) [with _Up = armnn::PassthroughTensorHandle]’ at /usr/include/c++/16/bits/alloc_traits.h:859:17,
[  999s]     inlined from ‘void std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::_M_dispose() [with _Tp = armnn::PassthroughTensorHandle; _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,
[  999s]     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,
[  999s]     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,
[  999s]     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,
[  999s]     inlined from ‘std::__shared_ptr<_Tp, _Lp>::~__shared_ptr() [with _Tp = armnn::RefMemoryManager; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1610:7,
[  999s]     inlined from ‘std::shared_ptr<armnn::RefMemoryManager>::~shared_ptr()’ at /usr/include/c++/16/bits/shared_ptr.h:175:11,
[  999s]     inlined from ‘void _DOCTEST_ANON_SUITE_2::_DOCTEST_ANON_FUNC_5()’ at /home/abuild/rpmbuild/BUILD/armnn-26.07-build/armnn-26.07/src/backends/reference/test/RefTensorHandleTests.cpp:71:55:
[  999s] /usr/include/c++/16/bits/stl_construct.h:166:22: error: array subscript ‘armnn::PassthroughTensorHandle[0]’ is partly outside array bounds of ‘unsigned char [56]’ [-Werror=array-bounds=]
[  999s]   166 |       __pointer->~_Tp();
[  999s]       |       ~~~~~~~~~~~~~~~^~
[  999s] In file included from /usr/include/c++/16/aarch64-suse-linux/bits/c++allocator.h:33,
[  999s]                  from /usr/include/c++/16/bits/allocator.h:46,
[  999s]                  from /usr/include/c++/16/memory:67:
[  999s] In member function ‘_Tp* std::__new_allocator<_Tp>::allocate(size_type, const void*) [with _Tp = std::_Sp_counted_ptr_inplace<armnn::RefMemoryManager, std::allocator<void>, __gnu_cxx::_S_atomic>]’,
[  999s]     inlined from ‘static _Tp* std::allocator_traits<std::allocator<_Tp1> >::allocate(allocator_type&, size_type) [with _Tp = std::_Sp_counted_ptr_inplace<armnn::RefMemoryManager, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at /usr/include/c++/16/bits/alloc_traits.h:638:28,
[  999s]     inlined from ‘std::__allocated_ptr<_Alloc> std::__allocate_guarded(_Alloc&) [with _Alloc = allocator<_Sp_counted_ptr_inplace<armnn::RefMemoryManager, allocator<void>, __gnu_cxx::_S_atomic> >]’ at /usr/include/c++/16/bits/allocated_ptr.h:103:69,
[  999s]     inlined from ‘std::__shared_count<_Lp>::__shared_count(_Tp*&, std::_Sp_alloc_shared_tag<_Alloc>, _Args&& ...) [with _Tp = armnn::RefMemoryManager; _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,
[  999s]     inlined from ‘std::__shared_ptr<_Tp, _Lp>::__shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {}; _Tp = armnn::RefMemoryManager; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1812:14,
[  999s]     inlined from ‘std::shared_ptr<_Tp>::shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {}; _Tp = armnn::RefMemoryManager]’ at /usr/include/c++/16/bits/shared_ptr.h:463:59,
[  999s]     inlined from ‘std::shared_ptr<typename std::enable_if<(! std::is_array<_Tp>::value), _Tp>::type> std::make_shared(_Args&& ...) [with _Tp = armnn::RefMemoryManager; _Args = {}]’ at /usr/include/c++/16/bits/shared_ptr.h:1066:39,
[  999s]     inlined from ‘void _DOCTEST_ANON_SUITE_2::_DOCTEST_ANON_FUNC_5()’ at /home/abuild/rpmbuild/BUILD/armnn-26.07-build/armnn-26.07/src/backends/reference/test/RefTensorHandleTests.cpp:70:90:
[  999s] /usr/include/c++/16/bits/new_allocator.h:162:75: note: at offset 16 into object of size 56 allocated by ‘operator new’
[  999s]   162 |           return static_cast<_Tp*>(_GLIBCXX_OPERATOR_NEW(__n * sizeof(_Tp)));
[  999s]       |                                                                           ^
[  999s] In function ‘constexpr void std::_Destroy(_Tp*) [with _Tp = armnn::PassthroughTensorHandle]’,
[  999s]     inlined from ‘static void std::allocator_traits<std::allocator<void> >::destroy(allocator_type&, _Up*) [with _Up = armnn::PassthroughTensorHandle]’ at /usr/include/c++/16/bits/alloc_traits.h:859:17,
[  999s]     inlined from ‘void std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::_M_dispose() [with _Tp = armnn::PassthroughTensorHandle; _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,
[  999s]     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,
[  999s]     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,
[  999s]     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,
[  999s]     inlined from ‘std::__shared_ptr<_Tp, _Lp>::~__shared_ptr() [with _Tp = armnn::RefMemoryManager; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1610:7,
[  999s]     inlined from ‘std::shared_ptr<armnn::RefMemoryManager>::~shared_ptr()’ at /usr/include/c++/16/bits/shared_ptr.h:175:11,
[  999s]     inlined from ‘void _DOCTEST_ANON_SUITE_2::_DOCTEST_ANON_FUNC_5()’ at /home/abuild/rpmbuild/BUILD/armnn-26.07-build/armnn-26.07/src/backends/reference/test/RefTensorHandleTests.cpp:110:1:
[  999s] /usr/include/c++/16/bits/stl_construct.h:166:22: error: array subscript ‘armnn::PassthroughTensorHandle[0]’ is partly outside array bounds of ‘unsigned char [56]’ [-Werror=array-bounds=]
[  999s]   166 |       __pointer->~_Tp();
[  999s]       |       ~~~~~~~~~~~~~~~^~
[  999s] In member function ‘_Tp* std::__new_allocator<_Tp>::allocate(size_type, const void*) [with _Tp = std::_Sp_counted_ptr_inplace<armnn::RefMemoryManager, std::allocator<void>, __gnu_cxx::_S_atomic>]’,
[  999s]     inlined from ‘static _Tp* std::allocator_traits<std::allocator<_Tp1> >::allocate(allocator_type&, size_type) [with _Tp = std::_Sp_counted_ptr_inplace<armnn::RefMemoryManager, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at /usr/include/c++/16/bits/alloc_traits.h:638:28,
[  999s]     inlined from ‘std::__allocated_ptr<_Alloc> std::__allocate_guarded(_Alloc&) [with _Alloc = allocator<_Sp_counted_ptr_inplace<armnn::RefMemoryManager, allocator<void>, __gnu_cxx::_S_atomic> >]’ at /usr/include/c++/16/bits/allocated_ptr.h:103:69,
[  999s]     inlined from ‘std::__shared_count<_Lp>::__shared_count(_Tp*&, std::_Sp_alloc_shared_tag<_Alloc>, _Args&& ...) [with _Tp = armnn::RefMemoryManager; _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,
[  999s]     inlined from ‘std::__shared_ptr<_Tp, _Lp>::__shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {}; _Tp = armnn::RefMemoryManager; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1812:14,
[  999s]     inlined from ‘std::shared_ptr<_Tp>::shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {}; _Tp = armnn::RefMemoryManager]’ at /usr/include/c++/16/bits/shared_ptr.h:463:59,
[  999s]     inlined from ‘std::shared_ptr<typename std::enable_if<(! std::is_array<_Tp>::value), _Tp>::type> std::make_shared(_Args&& ...) [with _Tp = armnn::RefMemoryManager; _Args = {}]’ at /usr/include/c++/16/bits/shared_ptr.h:1066:39,
[  999s]     inlined from ‘void _DOCTEST_ANON_SUITE_2::_DOCTEST_ANON_FUNC_5()’ at /home/abuild/rpmbuild/BUILD/armnn-26.07-build/armnn-26.07/src/backends/reference/test/RefTensorHandleTests.cpp:70:90:
[  999s] /usr/include/c++/16/bits/new_allocator.h:162:75: note: at offset 16 into object of size 56 allocated by ‘operator new’
[  999s]   162 |           return static_cast<_Tp*>(_GLIBCXX_OPERATOR_NEW(__n * sizeof(_Tp)));
[  999s]       |                                                                           ^
[  999s] In function ‘constexpr void std::_Destroy(_Tp*) [with _Tp = armnn::PassthroughTensorHandle]’,
[  999s]     inlined from ‘static void std::allocator_traits<std::allocator<void> >::destroy(allocator_type&, _Up*) [with _Up = armnn::PassthroughTensorHandle]’ at /usr/include/c++/16/bits/alloc_traits.h:859:17,
[  999s]     inlined from ‘void std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::_M_dispose() [with _Tp = armnn::PassthroughTensorHandle; _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,
[  999s]     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,
[  999s]     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,
[  999s]     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,
[  999s]     inlined from ‘std::__shared_ptr<_Tp, _Lp>::~__shared_ptr() [with _Tp = armnn::RefMemoryManager; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1610:7,
[  999s]     inlined from ‘std::shared_ptr<armnn::RefMemoryManager>::~shared_ptr()’ at /usr/include/c++/16/bits/shared_ptr.h:175:11,
[  999s]     inlined from ‘void _DOCTEST_ANON_SUITE_2::_DOCTEST_ANON_FUNC_13()’ at /home/abuild/rpmbuild/BUILD/armnn-26.07-build/armnn-26.07/src/backends/reference/test/RefTensorHandleTests.cpp:190:55:
[  999s] /usr/include/c++/16/bits/stl_construct.h:166:22: error: array subscript ‘armnn::PassthroughTensorHandle[0]’ is partly outside array bounds of ‘unsigned char [56]’ [-Werror=array-bounds=]
[  999s]   166 |       __pointer->~_Tp();
[  999s]       |       ~~~~~~~~~~~~~~~^~
[  999s] In member function ‘_Tp* std::__new_allocator<_Tp>::allocate(size_type, const void*) [with _Tp = std::_Sp_counted_ptr_inplace<armnn::RefMemoryManager, std::allocator<void>, __gnu_cxx::_S_atomic>]’,
[  999s]     inlined from ‘static _Tp* std::allocator_traits<std::allocator<_Tp1> >::allocate(allocator_type&, size_type) [with _Tp = std::_Sp_counted_ptr_inplace<armnn::RefMemoryManager, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at /usr/include/c++/16/bits/alloc_traits.h:638:28,
[  999s]     inlined from ‘std::__allocated_ptr<_Alloc> std::__allocate_guarded(_Alloc&) [with _Alloc = allocator<_Sp_counted_ptr_inplace<armnn::RefMemoryManager, allocator<void>, __gnu_cxx::_S_atomic> >]’ at /usr/include/c++/16/bits/allocated_ptr.h:103:69,
[  999s]     inlined from ‘std::__shared_count<_Lp>::__shared_count(_Tp*&, std::_Sp_alloc_shared_tag<_Alloc>, _Args&& ...) [with _Tp = armnn::RefMemoryManager; _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,
[  999s]     inlined from ‘std::__shared_ptr<_Tp, _Lp>::__shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {}; _Tp = armnn::RefMemoryManager; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1812:14,
[  999s]     inlined from ‘std::shared_ptr<_Tp>::shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {}; _Tp = armnn::RefMemoryManager]’ at /usr/include/c++/16/bits/shared_ptr.h:463:59,
[  999s]     inlined from ‘std::shared_ptr<typename std::enable_if<(! std::is_array<_Tp>::value), _Tp>::type> std::make_shared(_Args&& ...) [with _Tp = armnn::RefMemoryManager; _Args = {}]’ at /usr/include/c++/16/bits/shared_ptr.h:1066:39,
[  999s]     inlined from ‘void _DOCTEST_ANON_SUITE_2::_DOCTEST_ANON_FUNC_13()’ at /home/abuild/rpmbuild/BUILD/armnn-26.07-build/armnn-26.07/src/backends/reference/test/RefTensorHandleTests.cpp:189:90:
[  999s] /usr/include/c++/16/bits/new_allocator.h:162:75: note: at offset 16 into object of size 56 allocated by ‘operator new’
[  999s]   162 |           return static_cast<_Tp*>(_GLIBCXX_OPERATOR_NEW(__n * sizeof(_Tp)));
[  999s]       |                                                                           ^
[  999s] In function ‘constexpr void std::_Destroy(_Tp*) [with _Tp = armnn::PassthroughTensorHandle]’,
[  999s]     inlined from ‘static void std::allocator_traits<std::allocator<void> >::destroy(allocator_type&, _Up*) [with _Up = armnn::PassthroughTensorHandle]’ at /usr/include/c++/16/bits/alloc_traits.h:859:17,
[  999s]     inlined from ‘void std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::_M_dispose() [with _Tp = armnn::PassthroughTensorHandle; _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,
[  999s]     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,
[  999s]     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,
[  999s]     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,
[  999s]     inlined from ‘std::__shared_ptr<_Tp, _Lp>::~__shared_ptr() [with _Tp = armnn::RefMemoryManager; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1610:7,
[  999s]     inlined from ‘std::shared_ptr<armnn::RefMemoryManager>::~shared_ptr()’ at /usr/include/c++/16/bits/shared_ptr.h:175:11,
[  999s]     inlined from ‘virtual armnn::RefTensorHandleFactory::~RefTensorHandleFactory()’ at /home/abuild/rpmbuild/BUILD/armnn-26.07-build/armnn-26.07/src/backends/reference/RefTensorHandleFactory.hpp:17:7,
[  999s]     inlined from ‘void _DOCTEST_ANON_SUITE_2::_DOCTEST_ANON_FUNC_13()’ at /home/abuild/rpmbuild/BUILD/armnn-26.07-build/armnn-26.07/src/backends/reference/test/RefTensorHandleTests.cpp:194:1:
[  999s] /usr/include/c++/16/bits/stl_construct.h:166:22: error: array subscript ‘armnn::PassthroughTensorHandle[0]’ is partly outside array bounds of ‘unsigned char [56]’ [-Werror=array-bounds=]
[  999s]   166 |       __pointer->~_Tp();
[  999s]       |       ~~~~~~~~~~~~~~~^~
[  999s] In member function ‘_Tp* std::__new_allocator<_Tp>::allocate(size_type, const void*) [with _Tp = std::_Sp_counted_ptr_inplace<armnn::RefMemoryManager, std::allocator<void>, __gnu_cxx::_S_atomic>]’,
[  999s]     inlined from ‘static _Tp* std::allocator_traits<std::allocator<_Tp1> >::allocate(allocator_type&, size_type) [with _Tp = std::_Sp_counted_ptr_inplace<armnn::RefMemoryManager, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at /usr/include/c++/16/bits/alloc_traits.h:638:28,
[  999s]     inlined from ‘std::__allocated_ptr<_Alloc> std::__allocate_guarded(_Alloc&) [with _Alloc = allocator<_Sp_counted_ptr_inplace<armnn::RefMemoryManager, allocator<void>, __gnu_cxx::_S_atomic> >]’ at /usr/include/c++/16/bits/allocated_ptr.h:103:69,
[  999s]     inlined from ‘std::__shared_count<_Lp>::__shared_count(_Tp*&, std::_Sp_alloc_shared_tag<_Alloc>, _Args&& ...) [with _Tp = armnn::RefMemoryManager; _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,
[  999s]     inlined from ‘std::__shared_ptr<_Tp, _Lp>::__shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {}; _Tp = armnn::RefMemoryManager; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1812:14,
[  999s]     inlined from ‘std::shared_ptr<_Tp>::shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {}; _Tp = armnn::RefMemoryManager]’ at /usr/include/c++/16/bits/shared_ptr.h:463:59,
[  999s]     inlined from ‘std::shared_ptr<typename std::enable_if<(! std::is_array<_Tp>::value), _Tp>::type> std::make_shared(_Args&& ...) [with _Tp = armnn::RefMemoryManager; _Args = {}]’ at /usr/include/c++/16/bits/shared_ptr.h:1066:39,
[  999s]     inlined from ‘void _DOCTEST_ANON_SUITE_2::_DOCTEST_ANON_FUNC_13()’ at /home/abuild/rpmbuild/BUILD/armnn-26.07-build/armnn-26.07/src/backends/reference/test/RefTensorHandleTests.cpp:189:90:
[  999s] /usr/include/c++/16/bits/new_allocator.h:162:75: note: at offset 16 into object of size 56 allocated by ‘operator new’
[  999s]   162 |           return static_cast<_Tp*>(_GLIBCXX_OPERATOR_NEW(__n * sizeof(_Tp)));
[  999s]       |                                                                           ^
[  999s] In function ‘constexpr void std::_Destroy(_Tp*) [with _Tp = armnn::PassthroughTensorHandle]’,
[  999s]     inlined from ‘static void std::allocator_traits<std::allocator<void> >::destroy(allocator_type&, _Up*) [with _Up = armnn::PassthroughTensorHandle]’ at /usr/include/c++/16/bits/alloc_traits.h:859:17,
[  999s]     inlined from ‘void std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::_M_dispose() [with _Tp = armnn::PassthroughTensorHandle; _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,
[  999s]     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,
[  999s]     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,
[  999s]     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,
[  999s]     inlined from ‘std::__shared_ptr<_Tp, _Lp>::~__shared_ptr() [with _Tp = armnn::RefMemoryManager; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1610:7,
[  999s]     inlined from ‘std::shared_ptr<armnn::RefMemoryManager>::~shared_ptr()’ at /usr/include/c++/16/bits/shared_ptr.h:175:11,
[  999s]     inlined from ‘void _DOCTEST_ANON_SUITE_2::_DOCTEST_ANON_FUNC_13()’ at /home/abuild/rpmbuild/BUILD/armnn-26.07-build/armnn-26.07/src/backends/reference/test/RefTensorHandleTests.cpp:194:1:
[  999s] /usr/include/c++/16/bits/stl_construct.h:166:22: error: array subscript ‘armnn::PassthroughTensorHandle[0]’ is partly outside array bounds of ‘unsigned char [56]’ [-Werror=array-bounds=]
[  999s]   166 |       __pointer->~_Tp();
[  999s]       |       ~~~~~~~~~~~~~~~^~
[  999s] In member function ‘_Tp* std::__new_allocator<_Tp>::allocate(size_type, const void*) [with _Tp = std::_Sp_counted_ptr_inplace<armnn::RefMemoryManager, std::allocator<void>, __gnu_cxx::_S_atomic>]’,
[  999s]     inlined from ‘static _Tp* std::allocator_traits<std::allocator<_Tp1> >::allocate(allocator_type&, size_type) [with _Tp = std::_Sp_counted_ptr_inplace<armnn::RefMemoryManager, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at /usr/include/c++/16/bits/alloc_traits.h:638:28,
[  999s]     inlined from ‘std::__allocated_ptr<_Alloc> std::__allocate_guarded(_Alloc&) [with _Alloc = allocator<_Sp_counted_ptr_inplace<armnn::RefMemoryManager, allocator<void>, __gnu_cxx::_S_atomic> >]’ at /usr/include/c++/16/bits/allocated_ptr.h:103:69,
[  999s]     inlined from ‘std::__shared_count<_Lp>::__shared_count(_Tp*&, std::_Sp_alloc_shared_tag<_Alloc>, _Args&& ...) [with _Tp = armnn::RefMemoryManager; _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,
[  999s]     inlined from ‘std::__shared_ptr<_Tp, _Lp>::__shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {}; _Tp = armnn::RefMemoryManager; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1812:14,
[  999s]     inlined from ‘std::shared_ptr<_Tp>::shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {}; _Tp = armnn::RefMemoryManager]’ at /usr/include/c++/16/bits/shared_ptr.h:463:59,
[  999s]     inlined from ‘std::shared_ptr<typename std::enable_if<(! std::is_array<_Tp>::value), _Tp>::type> std::make_shared(_Args&& ...) [with _Tp = armnn::RefMemoryManager; _Args = {}]’ at /usr/include/c++/16/bits/shared_ptr.h:1066:39,
[  999s]     inlined from ‘void _DOCTEST_ANON_SUITE_2::_DOCTEST_ANON_FUNC_13()’ at /home/abuild/rpmbuild/BUILD/armnn-26.07-build/armnn-26.07/src/backends/reference/test/RefTensorHandleTests.cpp:189:90:
[  999s] /usr/include/c++/16/bits/new_allocator.h:162:75: note: at offset 16 into object of size 56 allocated by ‘operator new’
[  999s]   162 |           return static_cast<_Tp*>(_GLIBCXX_OPERATOR_NEW(__n * sizeof(_Tp)));
[  999s]       |                                                                           ^
[  999s] In function ‘constexpr void std::_Destroy(_Tp*) [with _Tp = armnn::PassthroughTensorHandle]’,
[  999s]     inlined from ‘static void std::allocator_traits<std::allocator<void> >::destroy(allocator_type&, _Up*) [with _Up = armnn::PassthroughTensorHandle]’ at /usr/include/c++/16/bits/alloc_traits.h:859:17,
[  999s]     inlined from ‘void std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::_M_dispose() [with _Tp = armnn::PassthroughTensorHandle; _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,
[  999s]     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,
[  999s]     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,
[  999s]     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,
[  999s]     inlined from ‘std::__shared_ptr<_Tp, _Lp>::~__shared_ptr() [with _Tp = armnn::RefMemoryManager; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1610:7,
[  999s]     inlined from ‘std::shared_ptr<armnn::RefMemoryManager>::~shared_ptr()’ at /usr/include/c++/16/bits/shared_ptr.h:175:11,
[  999s]     inlined from ‘void _DOCTEST_ANON_SUITE_2::_DOCTEST_ANON_FUNC_11()’ at /home/abuild/rpmbuild/BUILD/armnn-26.07-build/armnn-26.07/src/backends/reference/test/RefTensorHandleTests.cpp:173:55:
[  999s] /usr/include/c++/16/bits/stl_construct.h:166:22: error: array subscript ‘armnn::PassthroughTensorHandle[0]’ is partly outside array bounds of ‘unsigned char [56]’ [-Werror=array-bounds=]
[  999s]   166 |       __pointer->~_Tp();
[  999s]       |       ~~~~~~~~~~~~~~~^~
[  999s] In member function ‘_Tp* std::__new_allocator<_Tp>::allocate(size_type, const void*) [with _Tp = std::_Sp_counted_ptr_inplace<armnn::RefMemoryManager, std::allocator<void>, __gnu_cxx::_S_atomic>]’,
[  999s]     inlined from ‘static _Tp* std::allocator_traits<std::allocator<_Tp1> >::allocate(allocator_type&, size_type) [with _Tp = std::_Sp_counted_ptr_inplace<armnn::RefMemoryManager, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at /usr/include/c++/16/bits/alloc_traits.h:638:28,
[  999s]     inlined from ‘std::__allocated_ptr<_Alloc> std::__allocate_guarded(_Alloc&) [with _Alloc = allocator<_Sp_counted_ptr_inplace<armnn::RefMemoryManager, allocator<void>, __gnu_cxx::_S_atomic> >]’ at /usr/include/c++/16/bits/allocated_ptr.h:103:69,
[  999s]     inlined from ‘std::__shared_count<_Lp>::__shared_count(_Tp*&, std::_Sp_alloc_shared_tag<_Alloc>, _Args&& ...) [with _Tp = armnn::RefMemoryManager; _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,
[  999s]     inlined from ‘std::__shared_ptr<_Tp, _Lp>::__shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {}; _Tp = armnn::RefMemoryManager; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1812:14,
[  999s]     inlined from ‘std::shared_ptr<_Tp>::shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {}; _Tp = armnn::RefMemoryManager]’ at /usr/include/c++/16/bits/shared_ptr.h:463:59,
[  999s]     inlined from ‘std::shared_ptr<typename std::enable_if<(! std::is_array<_Tp>::value), _Tp>::type> std::make_shared(_Args&& ...) [with _Tp = armnn::RefMemoryManager; _Args = {}]’ at /usr/include/c++/16/bits/shared_ptr.h:1066:39,
[  999s]     inlined from ‘void _DOCTEST_ANON_SUITE_2::_DOCTEST_ANON_FUNC_11()’ at /home/abuild/rpmbuild/BUILD/armnn-26.07-build/armnn-26.07/src/backends/reference/test/RefTensorHandleTests.cpp:172:90:
[  999s] /usr/include/c++/16/bits/new_allocator.h:162:75: note: at offset 16 into object of size 56 allocated by ‘operator new’
[  999s]   162 |           return static_cast<_Tp*>(_GLIBCXX_OPERATOR_NEW(__n * sizeof(_Tp)));
[  999s]       |                                                                           ^
[  999s] In function ‘constexpr void std::_Destroy(_Tp*) [with _Tp = armnn::PassthroughTensorHandle]’,
[  999s]     inlined from ‘static void std::allocator_traits<std::allocator<void> >::destroy(allocator_type&, _Up*) [with _Up = armnn::PassthroughTensorHandle]’ at /usr/include/c++/16/bits/alloc_traits.h:859:17,
[  999s]     inlined from ‘void std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::_M_dispose() [with _Tp = armnn::PassthroughTensorHandle; _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,
[  999s]     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,
[  999s]     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,
[  999s]     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,
[  999s]     inlined from ‘std::__shared_ptr<_Tp, _Lp>::~__shared_ptr() [with _Tp = armnn::RefMemoryManager; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1610:7,
[  999s]     inlined from ‘std::shared_ptr<armnn::RefMemoryManager>::~shared_ptr()’ at /usr/include/c++/16/bits/shared_ptr.h:175:11,
[  999s]     inlined from ‘virtual armnn::RefTensorHandleFactory::~RefTensorHandleFactory()’ at /home/abuild/rpmbuild/BUILD/armnn-26.07-build/armnn-26.07/src/backends/reference/RefTensorHandleFactory.hpp:17:7,
[  999s]     inlined from ‘void _DOCTEST_ANON_SUITE_2::_DOCTEST_ANON_FUNC_11()’ at /home/abuild/rpmbuild/BUILD/armnn-26.07-build/armnn-26.07/src/backends/reference/test/RefTensorHandleTests.cpp:185:1:
[  999s] /usr/include/c++/16/bits/stl_construct.h:166:22: error: array subscript ‘armnn::PassthroughTensorHandle[0]’ is partly outside array bounds of ‘unsigned char [56]’ [-Werror=array-bounds=]
[  999s]   166 |       __pointer->~_Tp();
[  999s]       |       ~~~~~~~~~~~~~~~^~
[  999s] In member function ‘_Tp* std::__new_allocator<_Tp>::allocate(size_type, const void*) [with _Tp = std::_Sp_counted_ptr_inplace<armnn::RefMemoryManager, std::allocator<void>, __gnu_cxx::_S_atomic>]’,
[  999s]     inlined from ‘static _Tp* std::allocator_traits<std::allocator<_Tp1> >::allocate(allocator_type&, size_type) [with _Tp = std::_Sp_counted_ptr_inplace<armnn::RefMemoryManager, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at /usr/include/c++/16/bits/alloc_traits.h:638:28,
[  999s]     inlined from ‘std::__allocated_ptr<_Alloc> std::__allocate_guarded(_Alloc&) [with _Alloc = allocator<_Sp_counted_ptr_inplace<armnn::RefMemoryManager, allocator<void>, __gnu_cxx::_S_atomic> >]’ at /usr/include/c++/16/bits/allocated_ptr.h:103:69,
[  999s]     inlined from ‘std::__shared_count<_Lp>::__shared_count(_Tp*&, std::_Sp_alloc_shared_tag<_Alloc>, _Args&& ...) [with _Tp = armnn::RefMemoryManager; _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,
[  999s]     inlined from ‘std::__shared_ptr<_Tp, _Lp>::__shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {}; _Tp = armnn::RefMemoryManager; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1812:14,
[  999s]     inlined from ‘std::shared_ptr<_Tp>::shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {}; _Tp = armnn::RefMemoryManager]’ at /usr/include/c++/16/bits/shared_ptr.h:463:59,
[  999s]     inlined from ‘std::shared_ptr<typename std::enable_if<(! std::is_array<_Tp>::value), _Tp>::type> std::make_shared(_Args&& ...) [with _Tp = armnn::RefMemoryManager; _Args = {}]’ at /usr/include/c++/16/bits/shared_ptr.h:1066:39,
[  999s]     inlined from ‘void _DOCTEST_ANON_SUITE_2::_DOCTEST_ANON_FUNC_11()’ at /home/abuild/rpmbuild/BUILD/armnn-26.07-build/armnn-26.07/src/backends/reference/test/RefTensorHandleTests.cpp:172:90:
[  999s] /usr/include/c++/16/bits/new_allocator.h:162:75: note: at offset 16 into object of size 56 allocated by ‘operator new’
[  999s]   162 |           return static_cast<_Tp*>(_GLIBCXX_OPERATOR_NEW(__n * sizeof(_Tp)));
[  999s]       |                                                                           ^
[  999s] In function ‘constexpr void std::_Destroy(_Tp*) [with _Tp = armnn::PassthroughTensorHandle]’,
[  999s]     inlined from ‘static void std::allocator_traits<std::allocator<void> >::destroy(allocator_type&, _Up*) [with _Up = armnn::PassthroughTensorHandle]’ at /usr/include/c++/16/bits/alloc_traits.h:859:17,
[  999s]     inlined from ‘void std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::_M_dispose() [with _Tp = armnn::PassthroughTensorHandle; _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,
[  999s]     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,
[  999s]     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,
[  999s]     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,
[  999s]     inlined from ‘std::__shared_ptr<_Tp, _Lp>::~__shared_ptr() [with _Tp = armnn::RefMemoryManager; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1610:7,
[  999s]     inlined from ‘std::shared_ptr<armnn::RefMemoryManager>::~shared_ptr()’ at /usr/include/c++/16/bits/shared_ptr.h:175:11,
[  999s]     inlined from ‘void _DOCTEST_ANON_SUITE_2::_DOCTEST_ANON_FUNC_11()’ at /home/abuild/rpmbuild/BUILD/armnn-26.07-build/armnn-26.07/src/backends/reference/test/RefTensorHandleTests.cpp:185:1:
[  999s] /usr/include/c++/16/bits/stl_construct.h:166:22: error: array subscript ‘armnn::PassthroughTensorHandle[0]’ is partly outside array bounds of ‘unsigned char [56]’ [-Werror=array-bounds=]
[  999s]   166 |       __pointer->~_Tp();
[  999s]       |       ~~~~~~~~~~~~~~~^~
[  999s] In member function ‘_Tp* std::__new_allocator<_Tp>::allocate(size_type, const void*) [with _Tp = std::_Sp_counted_ptr_inplace<armnn::RefMemoryManager, std::allocator<void>, __gnu_cxx::_S_atomic>]’,
[  999s]     inlined from ‘static _Tp* std::allocator_traits<std::allocator<_Tp1> >::allocate(allocator_type&, size_type) [with _Tp = std::_Sp_counted_ptr_inplace<armnn::RefMemoryManager, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at /usr/include/c++/16/bits/alloc_traits.h:638:28,
[  999s]     inlined from ‘std::__allocated_ptr<_Alloc> std::__allocate_guarded(_Alloc&) [with _Alloc = allocator<_Sp_counted_ptr_inplace<armnn::RefMemoryManager, allocator<void>, __gnu_cxx::_S_atomic> >]’ at /usr/include/c++/16/bits/allocated_ptr.h:103:69,
[  999s]     inlined from ‘std::__shared_count<_Lp>::__shared_count(_Tp*&, std::_Sp_alloc_shared_tag<_Alloc>, _Args&& ...) [with _Tp = armnn::RefMemoryManager; _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,
[  999s]     inlined from ‘std::__shared_ptr<_Tp, _Lp>::__shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {}; _Tp = armnn::RefMemoryManager; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1812:14,
[  999s]     inlined from ‘std::shared_ptr<_Tp>::shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {}; _Tp = armnn::RefMemoryManager]’ at /usr/include/c++/16/bits/shared_ptr.h:463:59,
[  999s]     inlined from ‘std::shared_ptr<typename std::enable_if<(! std::is_array<_Tp>::value), _Tp>::type> std::make_shared(_Args&& ...) [with _Tp = armnn::RefMemoryManager; _Args = {}]’ at /usr/include/c++/16/bits/shared_ptr.h:1066:39,
[  999s]     inlined from ‘void _DOCTEST_ANON_SUITE_2::_DOCTEST_ANON_FUNC_11()’ at /home/abuild/rpmbuild/BUILD/armnn-26.07-build/armnn-26.07/src/backends/reference/test/RefTensorHandleTests.cpp:172:90:
[  999s] /usr/include/c++/16/bits/new_allocator.h:162:75: note: at offset 16 into object of size 56 allocated by ‘operator new’
[  999s]   162 |           return static_cast<_Tp*>(_GLIBCXX_OPERATOR_NEW(__n * sizeof(_Tp)));
[  999s]       |                                                                           ^
[  999s] In function ‘constexpr void std::_Destroy(_Tp*) [with _Tp = armnn::PassthroughTensorHandle]’,
[  999s]     inlined from ‘static void std::allocator_traits<std::allocator<void> >::destroy(allocator_type&, _Up*) [with _Up = armnn::PassthroughTensorHandle]’ at /usr/include/c++/16/bits/alloc_traits.h:859:17,
[  999s]     inlined from ‘void std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::_M_dispose() [with _Tp = armnn::PassthroughTensorHandle; _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,
[  999s]     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,
[  999s]     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,
[  999s]     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,
[  999s]     inlined from ‘std::__shared_ptr<_Tp, _Lp>::~__shared_ptr() [with _Tp = armnn::RefMemoryManager; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1610:7,
[  999s]     inlined from ‘std::shared_ptr<armnn::RefMemoryManager>::~shared_ptr()’ at /usr/include/c++/16/bits/shared_ptr.h:175:11,
[  999s]     inlined from ‘void _DOCTEST_ANON_SUITE_2::_DOCTEST_ANON_FUNC_7()’ at /home/abuild/rpmbuild/BUILD/armnn-26.07-build/armnn-26.07/src/backends/reference/test/RefTensorHandleTests.cpp:115:55:
[  999s] /usr/include/c++/16/bits/stl_construct.h:166:22: error: array subscript ‘armnn::PassthroughTensorHandle[0]’ is partly outside array bounds of ‘unsigned char [56]’ [-Werror=array-bounds=]
[  999s]   166 |       __pointer->~_Tp();
[  999s]       |       ~~~~~~~~~~~~~~~^~
[  999s] In member function ‘_Tp* std::__new_allocator<_Tp>::allocate(size_type, const void*) [with _Tp = std::_Sp_counted_ptr_inplace<armnn::RefMemoryManager, std::allocator<void>, __gnu_cxx::_S_atomic>]’,
[  999s]     inlined from ‘static _Tp* std::allocator_traits<std::allocator<_Tp1> >::allocate(allocator_type&, size_type) [with _Tp = std::_Sp_counted_ptr_inplace<armnn::RefMemoryManager, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at /usr/include/c++/16/bits/alloc_traits.h:638:28,
[  999s]     inlined from ‘std::__allocated_ptr<_Alloc> std::__allocate_guarded(_Alloc&) [with _Alloc = allocator<_Sp_counted_ptr_inplace<armnn::RefMemoryManager, allocator<void>, __gnu_cxx::_S_atomic> >]’ at /usr/include/c++/16/bits/allocated_ptr.h:103:69,
[  999s]     inlined from ‘std::__shared_count<_Lp>::__shared_count(_Tp*&, std::_Sp_alloc_shared_tag<_Alloc>, _Args&& ...) [with _Tp = armnn::RefMemoryManager; _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,
[  999s]     inlined from ‘std::__shared_ptr<_Tp, _Lp>::__shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {}; _Tp = armnn::RefMemoryManager; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1812:14,
[  999s]     inlined from ‘std::shared_ptr<_Tp>::shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {}; _Tp = armnn::RefMemoryManager]’ at /usr/include/c++/16/bits/shared_ptr.h:463:59,
[  999s]     inlined from ‘std::shared_ptr<typename std::enable_if<(! std::is_array<_Tp>::value), _Tp>::type> std::make_shared(_Args&& ...) [with _Tp = armnn::RefMemoryManager; _Args = {}]’ at /usr/include/c++/16/bits/shared_ptr.h:1066:39,
[  999s]     inlined from ‘void _DOCTEST_ANON_SUITE_2::_DOCTEST_ANON_FUNC_7()’ at /home/abuild/rpmbuild/BUILD/armnn-26.07-build/armnn-26.07/src/backends/reference/test/RefTensorHandleTests.cpp:114:90:
[  999s] /usr/include/c++/16/bits/new_allocator.h:162:75: note: at offset 16 into object of size 56 allocated by ‘operator new’
[  999s]   162 |           return static_cast<_Tp*>(_GLIBCXX_OPERATOR_NEW(__n * sizeof(_Tp)));
[  999s]       |                                                                           ^
[  999s] In function ‘constexpr void std::_Destroy(_Tp*) [with _Tp = armnn::PassthroughTensorHandle]’,
[  999s]     inlined from ‘static void std::allocator_traits<std::allocator<void> >::destroy(allocator_type&, _Up*) [with _Up = armnn::PassthroughTensorHandle]’ at /usr/include/c++/16/bits/alloc_traits.h:859:17,
[  999s]     inlined from ‘void std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::_M_dispose() [with _Tp = armnn::PassthroughTensorHandle; _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,
[  999s]     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,
[  999s]     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,
[  999s]     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,
[  999s]     inlined from ‘std::__shared_ptr<_Tp, _Lp>::~__shared_ptr() [with _Tp = armnn::RefMemoryManager; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1610:7,
[  999s]     inlined from ‘std::shared_ptr<armnn::RefMemoryManager>::~shared_ptr()’ at /usr/include/c++/16/bits/shared_ptr.h:175:11,
[  999s]     inlined from ‘void _DOCTEST_ANON_SUITE_2::_DOCTEST_ANON_FUNC_7()’ at /home/abuild/rpmbuild/BUILD/armnn-26.07-build/armnn-26.07/src/backends/reference/test/RefTensorHandleTests.cpp:142:1:
[  999s] /usr/include/c++/16/bits/stl_construct.h:166:22: error: array subscript ‘armnn::PassthroughTensorHandle[0]’ is partly outside array bounds of ‘unsigned char [56]’ [-Werror=array-bounds=]
[  999s]   166 |       __pointer->~_Tp();
[  999s]       |       ~~~~~~~~~~~~~~~^~
[  999s] In member function ‘_Tp* std::__new_allocator<_Tp>::allocate(size_type, const void*) [with _Tp = std::_Sp_counted_ptr_inplace<armnn::RefMemoryManager, std::allocator<void>, __gnu_cxx::_S_atomic>]’,
[  999s]     inlined from ‘static _Tp* std::allocator_traits<std::allocator<_Tp1> >::allocate(allocator_type&, size_type) [with _Tp = std::_Sp_counted_ptr_inplace<armnn::RefMemoryManager, std::allocator<void>, __gnu_cxx::_S_atomic>]’ at /usr/include/c++/16/bits/alloc_traits.h:638:28,
[  999s]     inlined from ‘std::__allocated_ptr<_Alloc> std::__allocate_guarded(_Alloc&) [with _Alloc = allocator<_Sp_counted_ptr_inplace<armnn::RefMemoryManager, allocator<void>, __gnu_cxx::_S_atomic> >]’ at /usr/include/c++/16/bits/allocated_ptr.h:103:69,
[  999s]     inlined from ‘std::__shared_count<_Lp>::__shared_count(_Tp*&, std::_Sp_alloc_shared_tag<_Alloc>, _Args&& ...) [with _Tp = armnn::RefMemoryManager; _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,
[  999s]     inlined from ‘std::__shared_ptr<_Tp, _Lp>::__shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {}; _Tp = armnn::RefMemoryManager; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’ at /usr/include/c++/16/bits/shared_ptr_base.h:1812:14,
[  999s]     inlined from ‘std::shared_ptr<_Tp>::shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {}; _Tp = armnn::RefMemoryManager]’ at /usr/include/c++/16/bits/shared_ptr.h:463:59,
[  999s]     inlined from ‘std::shared_ptr<typename std::enable_if<(! std::is_array<_Tp>::value), _Tp>::type> std::make_shared(_Args&& ...) [with _Tp = armnn::RefMemoryManager; _Args = {}]’ at /usr/include/c++/16/bits/shared_ptr.h:1066:39,
[  999s]     inlined from ‘void _DOCTEST_ANON_SUITE_2::_DOCTEST_ANON_FUNC_7()’ at /home/abuild/rpmbuild/BUILD/armnn-26.07-build/armnn-26.07/src/backends/reference/test/RefTensorHandleTests.cpp:114:90:
[  999s] /usr/include/c++/16/bits/new_allocator.h:162:75: note: at offset 16 into object of size 56 allocated by ‘operator new’
[  999s]   162 |           return static_cast<_Tp*>(_GLIBCXX_OPERATOR_NEW(__n * sizeof(_Tp)));
[  999s]       |                                                                           ^
[  999s] cc1plus: all warnings being treated as errors
[  999s] make[2]: *** [src/backends/reference/test/CMakeFiles/armnnRefBackendUnitTests.dir/build.make:278: src/backends/reference/test/CMakeFiles/armnnRefBackendUnitTests.dir/RefTensorHandleTests.cpp.o] Error 1
[  999s] make[2]: Leaving directory '/home/abuild/rpmbuild/BUILD/armnn-26.07-build/armnn-26.07/build'
[  999s] make[2]: *** Waiting for unfinished jobs....

Host: openSUSE Tumbleweed aarch64
The problem is new because Tumbleweed switched to GCC16 as default compiler, which now enables -Werror=array-bounds= by default.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions