diff options
author | Jakub Jelinek <jakub@redhat.com> | 2023-10-12 16:07:25 +0200 |
---|---|---|
committer | Jakub Jelinek <jakub@redhat.com> | 2023-10-12 16:07:25 +0200 |
commit | fb590e4eeb1aa897209b853430dc4854ece97802 (patch) | |
tree | dfed0714e41cd12bdf545d85d1cef598be58d5c5 /gcc/fortran | |
parent | 0d00385eaf72ccacff17935b0d214a26773e095f (diff) | |
download | gcc-fb590e4eeb1aa897209b853430dc4854ece97802.zip gcc-fb590e4eeb1aa897209b853430dc4854ece97802.tar.gz gcc-fb590e4eeb1aa897209b853430dc4854ece97802.tar.bz2 |
wide-int: Add simple CHECKING_P stack-protector canary like checking
This patch adds hopefully not so expensive --enable-checking=yes
verification that the widest_int upper length bound estimates are really
upper bounds and nothing attempts to write more elements.
It is done only if the estimated upper length bound is smaller than
WIDE_INT_MAX_INL_ELTS, but that should be the most common case unless
large _BitInt is involved.
2023-10-12 Jakub Jelinek <jakub@redhat.com>
* wide-int.h (widest_int_storage <N>::write_val): If l is small
and there is space in u.val array, store a canary value at the
end when checking.
(widest_int_storage <N>::set_len): Check the canary hasn't been
overwritten.
Diffstat (limited to 'gcc/fortran')
0 files changed, 0 insertions, 0 deletions