This is an unofficial snapshot of the ISO/IEC JTC1 SC22 WG21 Core Issues List revision 115e. See http://www.open-std.org/jtc1/sc22/wg21/ for the official list.
2024-11-11
[Accepted at the February, 2022 meeting.]
The changes for issue 2254 included the following:
Change 6.8.4 [basic.compound] bullet 4.3 as follows:
Two objects a and b are pointer-interconvertible if:
...
one is a standard-layout class object and the other is the first non-static data member of that object, or, if the object has no non-static data members,
the firstany base class subobject of that object (11.4 [class.mem]), or
This should also have removed the phrase,
or, if the object has no non-static data members,
since the change to 11.4 [class.mem] paragraph 25 specifies that all bases of a standard-layout class have the same address, regardless of whether the derived class has non-static data members.
Proposed resolution (November, 2021):
Change 6.8.4 [basic.compound] bullet 4.3 as follows:
Two objects a and b are pointer-interconvertible if:
...
one is a standard-layout class object and the other is the first non-static data member of that object
,or, if the object has no non-static data members,any base class subobject of that object (11.4 [class.mem]), or...