public inbox for gcc-bugs@sourceware.org help / color / mirror / Atom feed
* [Bug tree-optimization/99502] New: missing -Warray-bounds on partial out of bounds access in C++ @ 2021-03-10 0:58 msebor at gcc dot gnu.org 2021-03-10 0:58 ` [Bug tree-optimization/99502] " msebor at gcc dot gnu.org ` (2 more replies) 0 siblings, 3 replies; 4+ messages in thread From: msebor at gcc dot gnu.org @ 2021-03-10 0:58 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99502 Bug ID: 99502 Summary: missing -Warray-bounds on partial out of bounds access in C++ Product: gcc Version: 11.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: tree-optimization Assignee: unassigned at gcc dot gnu.org Reporter: msebor at gcc dot gnu.org Target Milestone: --- The program below triggers two instances of -Warray-bounds when compiled as C code but only one when compiled as C++. This is a regression introduced in r11-7563. $ cat u.C && gcc -O2 -S -Wall u.C typedef struct A { int i; } A; char a[sizeof (A) - 1]; void f (A x) { A *p = (A*)a; *p = x; // -Warray-bounds (good) } void g (void) { A *p = (A*)a; p->i = 0; // missing warning in C++ } u.C: In function ‘void f(A)’: u.C:8:6: warning: array subscript ‘A[0]’ is partly outside array bounds of ‘char [3]’ [-Warray-bounds] 8 | *p = x; // -Warray-bounds (good) | ~~~^~~ u.C:3:6: note: while referencing ‘a’ 3 | char a[sizeof (A) - 1]; | ^ ^ permalink raw reply [flat|nested] 4+ messages in thread
* [Bug tree-optimization/99502] missing -Warray-bounds on partial out of bounds access in C++ 2021-03-10 0:58 [Bug tree-optimization/99502] New: missing -Warray-bounds on partial out of bounds access in C++ msebor at gcc dot gnu.org @ 2021-03-10 0:58 ` msebor at gcc dot gnu.org 2021-03-18 19:38 ` cvs-commit at gcc dot gnu.org 2021-03-18 19:39 ` msebor at gcc dot gnu.org 2 siblings, 0 replies; 4+ messages in thread From: msebor at gcc dot gnu.org @ 2021-03-10 0:58 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99502 Martin Sebor <msebor at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Last reconfirmed| |2021-03-10 Keywords| |diagnostic Ever confirmed|0 |1 Status|UNCONFIRMED |ASSIGNED Assignee|unassigned at gcc dot gnu.org |msebor at gcc dot gnu.org ^ permalink raw reply [flat|nested] 4+ messages in thread
* [Bug tree-optimization/99502] missing -Warray-bounds on partial out of bounds access in C++ 2021-03-10 0:58 [Bug tree-optimization/99502] New: missing -Warray-bounds on partial out of bounds access in C++ msebor at gcc dot gnu.org 2021-03-10 0:58 ` [Bug tree-optimization/99502] " msebor at gcc dot gnu.org @ 2021-03-18 19:38 ` cvs-commit at gcc dot gnu.org 2021-03-18 19:39 ` msebor at gcc dot gnu.org 2 siblings, 0 replies; 4+ messages in thread From: cvs-commit at gcc dot gnu.org @ 2021-03-18 19:38 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99502 --- Comment #1 from CVS Commits <cvs-commit at gcc dot gnu.org> --- The master branch has been updated by Martin Sebor <msebor@gcc.gnu.org>: https://gcc.gnu.org/g:30b10dacd0a8c926c22eab7d4aeb52ff86534acf commit r11-7724-g30b10dacd0a8c926c22eab7d4aeb52ff86534acf Author: Martin Sebor <msebor@redhat.com> Date: Thu Mar 18 13:36:09 2021 -0600 PR middle-end/99502 - missing -Warray-bounds on partial out of bounds gcc/ChangeLog: PR middle-end/99502 * gimple-array-bounds.cc (inbounds_vbase_memaccess_p): Rename... (inbounds_memaccess_p): ...to this. Check the ending offset of the accessed member. gcc/testsuite/ChangeLog: PR middle-end/99502 * g++.dg/warn/Warray-bounds-22.C: New test. * g++.dg/warn/Warray-bounds-23.C: New test. * g++.dg/warn/Warray-bounds-24.C: New test. ^ permalink raw reply [flat|nested] 4+ messages in thread
* [Bug tree-optimization/99502] missing -Warray-bounds on partial out of bounds access in C++ 2021-03-10 0:58 [Bug tree-optimization/99502] New: missing -Warray-bounds on partial out of bounds access in C++ msebor at gcc dot gnu.org 2021-03-10 0:58 ` [Bug tree-optimization/99502] " msebor at gcc dot gnu.org 2021-03-18 19:38 ` cvs-commit at gcc dot gnu.org @ 2021-03-18 19:39 ` msebor at gcc dot gnu.org 2 siblings, 0 replies; 4+ messages in thread From: msebor at gcc dot gnu.org @ 2021-03-18 19:39 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99502 Martin Sebor <msebor at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|ASSIGNED |RESOLVED Target Milestone|--- |11.0 Resolution|--- |FIXED --- Comment #2 from Martin Sebor <msebor at gcc dot gnu.org> --- Fixed in r11-7724. ^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2021-03-18 19:39 UTC | newest] Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2021-03-10 0:58 [Bug tree-optimization/99502] New: missing -Warray-bounds on partial out of bounds access in C++ msebor at gcc dot gnu.org 2021-03-10 0:58 ` [Bug tree-optimization/99502] " msebor at gcc dot gnu.org 2021-03-18 19:38 ` cvs-commit at gcc dot gnu.org 2021-03-18 19:39 ` msebor at gcc dot gnu.org
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).