[Bug c/58943] wrong calculation of indirect structure member arithmetic via function call
mikpelinux at gmail dot com
gcc-bugzilla@gcc.gnu.org
Thu Oct 31 20:51:00 GMT 2013
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58943
Mikael Pettersson <mikpelinux at gmail dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |mikpelinux at gmail dot com
--- Comment #1 from Mikael Pettersson <mikpelinux at gmail dot com> ---
Created attachment 31127
--> http://gcc.gnu.org/bugzilla/attachment.cgi?id=31127&action=edit
reduced test case
I believe this bug is real, and a dup or variation of PR48814, the difference
being that PR48814 had a postfix ++ while here we have a compound assignment
(|=). According to Joseph's comment in
<http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48814#c8> the same interleaving
restrictions apply to ++ and |=.
The bug appears to trigger when the lvalue is a non-scalar. It doesn't have to
be a struct member, an array element (as in this test case) suffices.
More information about the Gcc-bugs
mailing list