Movatterモバイル変換


[0]ホーム

URL:


This is an unofficial snapshot of the ISO/IEC JTC1 SC22 WG21 Core Issues List revision 119a. See http://www.open-std.org/jtc1/sc22/wg21/ for the official list.

2025-12-20


190. Layout-compatible POD-struct types

Section:11.4  [class.mem]    Status:TC1    Submitter:Steve Adamczyk    Date:20 Dec 1999

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.

Proposed resolution (10/00):

In 11.4 [class.mem] paragraphs 14 and 15, change alloccurrences of "members" to "nonstatic data members."




[8]ページ先頭

©2009-2026 Movatter.jp