Created on 2023-09-04.00:00:00 last changed 6 months ago
Proposed resolution (approved by CWG 2023-09-15):
(Hypothetically, pointer-to-member types can be empty, but might differ in non-top-level cv-qualification.)
Change in 6.7.2 [intro.object] paragraph 9 as follows:
... Two objects with overlapping lifetimes that are not bit-fields may have the same address if one is nested within the other, or if at least one is a subobject of zero size and they are not ofdifferentsimilar types (7.3.6 [conv.qual]); otherwise, they have distinct addresses and occupy disjoint bytes of storage. [ Footnote: ... ]
Suggested resolution [SUPERSEDED]:
Change in 6.7.2 [intro.object] paragraph 9 as follows:
... Two objects with overlapping lifetimes that are not bit-fields may have the same address if one is nested within the other, or if at least one is a subobject of zero size and they are of different types (ignoring top-level cv-qualifiers); otherwise, they have distinct addresses and occupy disjoint bytes of storage. [ Footnote: ... ]
[Accepted as a DR at the November, 2023 meeting.]
Subclause 6.7.2 [intro.object] paragraph 9 specifies:
... Two objects with overlapping lifetimes that are not bit-fields may have the same address if one is nested within the other, or if at least one is a subobject of zero size and they are of different types; otherwise, they have distinct addresses and occupy disjoint bytes of storage. [ Footnote: ... ]
Types T and const T are different types, but it is unlikely the rule is intending to differentiate along that line.
History | |||
---|---|---|---|
Date | User | Action | Args |
2024-04-05 21:43:46 | admin | set | status: dr -> drwp |
2023-12-19 10:15:28 | admin | set | status: ready -> dr |
2023-12-02 15:54:05 | admin | set | status: tentatively ready -> ready |
2023-09-15 21:51:11 | admin | set | messages: + msg7433 |
2023-09-15 21:51:11 | admin | set | status: open -> tentatively ready |
2023-09-05 20:07:55 | admin | set | messages: + msg7423 |
2023-09-04 00:00:00 | admin | create |