> But where the object representation of a zero size base class subobject of `o` will appear?
You seem to guarantee that it, despite having zero size, still has sizeof(T) ≠ 0 elements.

It won't appear in the enclosing object (the wording only guarantees so for objects of nonzero size); specifying so would just be extraneous wording.

> And what do you mean by "APPEAR in the object representation of `o`"?

For each object in the object representation of the object nested within o, there will be a corresponding object of the same value in the object representation of o

-------- Original message --------
From: Language Lawyer via Std-Proposals <std-proposals@lists.isocpp.org>
Date: 8/17/19 15:33 (GMT-05:00)
To: std-proposals@lists.isocpp.org
Cc: Language Lawyer <language.lawyer@gmail.com>
Subject: Re: [std-proposals] Allowing access to object representations

You propose adding the following to [intro.object]:
> The object representation of an object a of type cv T is a sequence of N cv unsigned char objects, that occupy the same storage as a, where N is equal to sizeof(T)... The object representation of an object of nonzero size nested within an object `o` is guaranteed to appear in the object representation of `o`.

But where the object representation of a zero size base class subobject of `o` will appear?
You seem to guarantee that it, despite having zero size, still has sizeof(T) ≠ 0 elements.

And what do you mean by "APPEAR in the object representation of `o`"?
"Appear" means that the object representation of an object `a` nested within an object `b` shares *the same* `unsigned char` objects or there are two *different* sets of `unsigned char` objects in the region of storage occupied by both `a` and `b`?
--
Std-Proposals mailing list
Std-Proposals@lists.isocpp.org
https://lists.isocpp.org/mailman/listinfo.cgi/std-proposals