public inbox for gcc-bugs@sourceware.org help / color / mirror / Atom feed
From: "msebor at gcc dot gnu.org" <gcc-bugzilla@gcc.gnu.org> To: gcc-bugs@gcc.gnu.org Subject: [Bug tree-optimization/102151] Spurious warning by -Warray-bounds when allocating with flexible array member Date: Wed, 01 Sep 2021 15:02:17 +0000 [thread overview] Message-ID: <bug-102151-4-Xp84gHEeg1@http.gcc.gnu.org/bugzilla/> (raw) In-Reply-To: <bug-102151-4@http.gcc.gnu.org/bugzilla/> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102151 Martin Sebor <msebor at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |msebor at gcc dot gnu.org See Also| |https://gcc.gnu.org/bugzill | |a/show_bug.cgi?id=101436 Status|UNCONFIRMED |RESOLVED Resolution|--- |INVALID --- Comment #3 from Martin Sebor <msebor at gcc dot gnu.org> --- As Andrew explained, the first operand in the -> expression needs to point to an object of the type whose member is being accessed or at least as big as one, and the warning is designed to point out when it's not (arguably, it could be phrased better). The following is a small test case to illustrate the warning (see also pr101436 comment 2 for a similar C++ test case). $ cat pr102151.c && gcc -O2 -S -Wall pr102151.c struct S { char a, b; }; extern char c; void f (void) { struct S *p = &c; p->a = 0; } pr102151.c: In function ‘f’: pr102151.c:7:17: warning: initialization of ‘struct S *’ from incompatible pointer type ‘char *’ [-Wincompatible-pointer-types] 7 | struct S *p = &c; | ^ pr102151.c:8:4: warning: array subscript ‘struct S[0]’ is partly outside array bounds of ‘char[1]’ [-Warray-bounds] 8 | p->a = 0; | ^~ pr102151.c:3:13: note: while referencing ‘c’ 3 | extern char c; | ^
next prev parent reply other threads:[~2021-09-01 15:02 UTC|newest] Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top 2021-09-01 1:42 [Bug c/102151] New: " gniibe at fsij dot org 2021-09-01 1:58 ` [Bug c/102151] " gniibe at fsij dot org 2021-09-01 2:48 ` [Bug tree-optimization/102151] " pinskia at gcc dot gnu.org 2021-09-01 15:02 ` msebor at gcc dot gnu.org [this message] 2021-09-02 2:34 ` gniibe at fsij dot org
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=bug-102151-4-Xp84gHEeg1@http.gcc.gnu.org/bugzilla/ \ --to=gcc-bugzilla@gcc.gnu.org \ --cc=gcc-bugs@gcc.gnu.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
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).