Created on 2025-11-05.00:00:00 last changed 1 month ago
Proposed resolution:
This wording is relative to N5014.
Modify [meta.reflection.define.aggregate] as indicated:
template<reflection_range R = initializer_list<info>> consteval info define_aggregate(info class_type, R&& mdescrs);-7- Let C be the class represented by `class_type` and rK be the Kth reflection value in `mdescrs`. […]
-8- Constant When: […] -9- Effects: Produces an injected declaration D ([expr.const]) that defines C and has properties as follows:
- (9.1) — […]
- (9.2) — […]
- (9.3) — […]
- (9.4) — […]
- (9.5) — For each rK, there is a corresponding entity MK with public access belonging to the class scope of D with the following properties: […]
- (9.6) — […]
[ Kona 2025-11-08; Status changed: Immediate → WP. ]
[ Kona 2025-11-05; approved by LWG. Status changed: New → Immediate. ]
The access of members of classes defined by injected declarations produced by evaluations of `std::meta::define_aggregate` is unspecified.
| History | |||
|---|---|---|---|
| Date | User | Action | Args |
| 2025-11-11 10:48:55 | admin | set | messages: + msg15702 |
| 2025-11-11 10:48:55 | admin | set | status: immediate -> wp |
| 2025-11-05 21:24:55 | admin | set | messages: + msg15531 |
| 2025-11-05 21:24:55 | admin | set | status: new -> immediate |
| 2025-11-05 18:04:30 | admin | set | messages: + msg15520 |
| 2025-11-05 00:00:00 | admin | create | |