[flang-commits] [flang] [flang] Produce warning instead of error when bound checking arrays (PR #83011)
Michael Klemm via flang-commits
flang-commits at lists.llvm.org
Mon Feb 26 12:21:21 PST 2024
mjklemm wrote:
I just came across Clang's behavior:
```
/home/micklemm/git/llvm/llvm-project/llvm/include/llvm/ADT/SparseBitVector.h: In member function ‘llvm::Error llvm::pdb::HashTable<ValueT>::load(llvm::BinaryStreamReader&) [with ValueT = llvm::support::detail::packed_endian_specific_integral<unsigned int, llvm::endianness::little, 1>]’:
/home/micklemm/git/llvm/llvm-project/llvm/include/llvm/ADT/SparseBitVector.h:130:15: warning: array subscript 2 is above array bounds of ‘const BitWord [2]’ {aka ‘const long unsigned int [2]’} [-Warray-bounds]
130 | if (Bits[i] != 0)
| ~~~~^
/home/micklemm/git/llvm/llvm-project/llvm/include/llvm/ADT/SparseBitVector.h:55:11: note: while referencing ‘llvm::SparseBitVectorElement<128>::Bits’
55 | BitWord Bits[BITWORDS_PER_ELEMENT];
| ^~~~
```
So, Flang behavior would be consistent with its C/C++ counterpart.
https://github.com/llvm/llvm-project/pull/83011
More information about the flang-commits
mailing list