Title
meta::alignment_of should exclude data member description of bit-field
Status
new
Section
[meta.reflection.layout]
Submitter
Tomasz Kamiński

Created on 2025-10-24.00:00:00 last changed 4 days ago

Messages

Date: 2025-10-27.09:58:11

Proposed resolution:

This wording is relative to N5014.

  1. Modify [meta.reflection.layout] as indicated:

    consteval size_t alignment_of(info r);	
    

    -7- Returns: […]

    -8- Throws: `meta::exception` unless all of the following conditions are met:

    • (8.1) — `dealias(r)` is a reflection of a type, object, variable of non-reference type, non-static data member that is not a bit-field, direct base class relationship, or data member description (T,N,A,W,NUA) ([class.mem.general]) where W is ⊥..
    • (8.2) — If `dealias(r)` represents a type, then `is_complete_type(r)` is true.

Date: 2025-10-27.16:17:32

Proposed resolution:

This wording is relative to N5014.

  1. Modify [meta.reflection.layout] as indicated:

    consteval size_t alignment_of(info r);	
    

    -7- Returns: […]

    -8- Throws: `meta::exception` unless all of the following conditions are met:

    • (8.1) — `dealias(r)` is a reflection of a type, object, variable of non-reference type, non-static data member that is not a bit-field, direct base class relationship, or data member description (T,N,A,W,NUA) ([class.mem.general]) where W is ⊥..
    • (8.2) — If `dealias(r)` represents a type, then `is_complete_type(r)` is true.

Date: 2025-10-27.16:49:03
Addresses US 109-170

[meta.reflection.layout] p#8 This should similarly disallow data member descriptions of bit-fields.

History
Date User Action Args
2025-10-27 09:58:11adminsetmessages: + msg15455
2025-10-24 20:38:54adminsetmessages: + msg15421
2025-10-24 00:00:00admincreate