[LLVMdev] Language lawyer question
Daniel Berlin
dberlin at dberlin.org
Wed Mar 12 13:05:27 PDT 2008
On Wed, Mar 12, 2008 at 3:49 PM, Mike Stump <mrs at apple.com> wrote:
> On Mar 11, 2008, at 8:42 PM, Dale Johannesen wrote:
> > Looking through the gcc testsuite turned up an interesting edge
> > case. Let's assume our target leaves a hole for alignment in struct
> > x, as do x86 and powerpc. Do you think the following code can
> > validly abort?
>
> No. The value of the object referred to be the left hand side must be
> replaced by the object on the right. The objects are defined to be a
> sequence of sizeof(x) bytes (I'm assuming the testcase does struct x
> X, Y;). If a byte isn't so updated, trivially, the object has not
> been replaced.
Except that the standard specifically says the value of the padding
bytes are undefined, and that you can do structure copies by member.
More information about the llvm-dev
mailing list