https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102006
Bug ID: 102006
Summary: A false warning "Array subscript -N is outside array
bounds warning"
Product: gcc
Version: 11.1.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: d-ef at yandex dot ru
Target Milestone: ---
I am not sure if referencing an entire Git repository is allowed here, but
probably it is an easier way to reproduce the bug:
git clone https://github.com/dmitriano/Awl --branch gcc-warn
mkdir -p build/awl
cd build/awl
cmake ../../Awl/ -DCMAKE_BUILD_TYPE=Release
make Tests/ListTest.cpp.o
Compiler output:
/home/def/Awl/Tests/ListTest.cpp: In function ‘void List_TestFunc(const
awl::testing::TestContext&)’:
/home/def/Awl/Tests/ListTest.cpp:118:70: warning: array subscript 0 is outside
array bounds of ‘{anonymous}::ListHolder<awl::quick_link> [1]’ [-Warray-bounds]
118 | for (typename ELEMENT_LIST::iterator i = list.begin(); i !=
list.end(); ++i)
|
~~^~~~~~~~~~~~~
/home/def/Awl/Tests/ListTest.cpp:138:33: note: while referencing ‘holder’
138 | ListHolder<awl::quick_link> holder(context);
| ^~~~~~
If you comment line 114 in Tests/ListTest.cpp the warning disappears that
probably is a bit strange, because this line does not relate to the code that
produces the warning.
My OS: Ubuntu 18.04
My compiler: g++ (Ubuntu 11.1.0-1ubuntu1~18.04.1) 11.1.0
for more information on how to build Awl on Ubuntu 18 see
https://developernote.com/2021/08/compiling-awl-on-ubuntu-18-with-gcc-11/