Created on1999-12-20.00:00:00 last changed277 months ago
Proposed resolution (10/00):
In 11.4 [class.mem] paragraphs 14 and 15, change alloccurrences of "members" to "nonstatic data members."
The definition of layout-compatible POD-struct types in11.4 [class.mem] paragraph 14requires thatthe two types
have the same number of members, and corresponding members (in order)have layout-compatible types (3.9).There does not appear to be any reason for including member functionsand static data members in this requirement. It would be more logicalto require only that the non-static data members of the two types mustmatch.
The characteristics of layout-compatible types are not welldescribed in the current wording, either. Apart from their use in11.4 [class.mem] paragraph 16to define theterm "common initial sequence," there appears to be nothing said aboutwhich operations are possible between objects of layout-compatible types.For example, 6.9 [basic.types]paragraphs2-3 give certain guarantees regarding use ofmemcpy onobjects of the same type; it might be reasonable to assume that thesame kinds of guarantees might apply to objects of layout-compatibletypes, but that is not said. Similarly,7.2.1 [basic.lval] paragraph 15describespermissible "type punning" but does not mention layout-compatible types.
| History | |||
|---|---|---|---|
| Date | User | Action | Args |
| 2003-04-25 00:00:00 | admin | set | status: dr -> tc1 |
| 2000-11-18 00:00:00 | admin | set | status: ready -> dr |
| 2000-05-21 00:00:00 | admin | set | messages: +msg311 |
| 2000-05-21 00:00:00 | admin | set | status: open -> ready |
| 1999-12-20 00:00:00 | admin | create | |