-
Notifications
You must be signed in to change notification settings - Fork 18
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
P2996 R7 Reflection for C++26 #1668
Comments
SG7 polls at Kona 2023 meeting:
Forwarding to EWG. |
This comment was marked as resolved.
This comment was marked as resolved.
P2996R1 Reflection for C++26 (Wyatt Childers, Peter Dimov, Barry Revzin, Andrew Sutton, Faisal Vali, Daveed Vandevoorde) |
P2996R2 Reflection for C++26 (Wyatt Childers, Peter Dimov, Dan Katz, Barry Revzin, Andrew Sutton, Faisal Vali, Daveed Vandevoorde) |
This comment was marked as outdated.
This comment was marked as outdated.
From today's joint EWG / LEWG discussion in Tokyo, SG16 needs to provide feedback on the papers because strings can be used to represent source code names and Unicode is tricky. @tahonermann I've tagged SG16 for this. |
Thank you @jfbastien, I'll get a discussion scheduled. Related paper: P1953 (Unicode Identifiers And Reflection) tracked by #690. |
2024-08-20 Library Evolution TeleconP2996R5: Reflection for C++26 2024-08-20 Library Evolution Telecon Minutes Champion: Dan Katz SummaryWe approved the following functions as is:
We also approved the following function with modification:
Change: the requirement on T should be a "Mandate" instead of "Constant When"
Next StepsAuthors to apply the following changes:
For future reviews:
We will continue review on meta.reflection.queries section (note there have been some reordering of functions) |
2024-08-14 SG16 TeleconP2996R5: Reflection for C++26 2024-08-14 SG16 Telecon Minutes Champion: Dan Katz Summary
PollsPOLL: Provide a generic:
Attendance: 10 (1 abstention) POLL: Forward P2996R5 with a recommendation to amend per prior poll to replace define_static_string with a generic
Attendance: 10 Next StepSG16 approved asked to remove |
2024-09-24 Library Evolution TeleconP2996R5: Reflection for C++26 2024-09-24 Library Evolution Telecon Minutes Champion: Dan Katz SummaryThe discussion was focused on Polls:POLL: Modify access_context and add:
Attendance: 20 POLL: For access_context default ctor (Please vote for all the options that make sense (acceptable) to you):
Outcome: Options 1 and option 5 (5 is what’s in the paper) got the strongest support . IL: We will take a 5-way poll on the option moving away from what’s in the paper. POLL: Remove access_context’s default constructor.
Attendance: 21 POLL: Rename "accessible_members_of" into "nameable_members_of".
Attendance: 15 POLL: We are happy with the current behavior of "members_of" returning the maximum set of entities.
Attendance: 15 POLL: Approve “members_of” function as in P2996R5. Attendance: 15 POLL: We would like “members_of” to apply declaration order and approve the wording.
Attendance: 15 ACTION: Note that the last poll might create overhead, we ask for additional exploration on the performance penalty and confirmation from compiler implementors that this is doable. We approved with the additional requirements:
Next StepsAuthors to apply the following changes:
For future reviews:
NOTE: As a followup to the meeting, and due to controversy regarding the
This resolution was supported in the reflector and will be published on P2996R7. We will continue review on [meta.reflection.queries], [meta.reflection.result] and [meta.reflection.trans.other] sections. |
2024-10-01 Library Evolution TeleconD2996R7: Reflection for C++26 2024-10-01 Library Evolution Telecon Minutes Champion: Dan Katz SummaryWe finalized the review on [meta.reflection.queries] (aside from: is_alias(info r), has_internal_linkage(info r), has_module_linkage(info r), has_external_linkage(info r), has_linkage(info r), which require core’s input), [meta.reflection.extract] and [meta.reflection.member.queries]. SummaryWe approved the following functions as is:
We approved with the additional requirement of members ordering:
Next StepsWe finalized the review on [meta.reflection.queries] (aside from: is_type_alias(info r), is_namespace_alias(info r) (both replacing Next time we will continue with [meta.reflection.result] (reflect_invoke), [meta.reflection.trans] and [meta.reflection.rel]. [meta.reflection.unary] may be able to be reviewed via the reflector. |
2024-10-10 Library Evolution TeleconP2996R7: Reflection for C++26 2024-10-10 Library Evolution Telecon Minutes Champion: Dan Katz SummaryImportant pollshas_identifier: missing "true" in many of the 1.* bullets. Ensure that anonymous members gets discussed in evolution (or confirm that it was done). POLL: Prohibit has_identifier and identifier_of from being used on a std::meta::info containing a data_member_spec
Attendance: 15 POLL: Entities with implementation-defined names should return false for has_identifier() and fail constant evaluation with identifier_of()
Attendance: 14 POLL: Approve design of has_identifier, identifier_of, and u8identifier_of, with the modifications involving implementation-defined names above.
Attendance: 12 We approved the following functions with modifications:(changed behaviour for implementation-defined names)
Next StepsLooking at "enum class operators" next. Then Continue review on remaining facilities: [meta.reflection.queries] (received wording feedback on "alias" functions), [meta.reflection.result] (reflect_invoke), [meta.reflection.trans] and [meta.reflection.rel]. |
P2996R6 Reflection for C++26 (Barry Revzin, Wyatt Childers, Peter Dimov, Andrew Sutton, Faisal Vali, Daveed Vandevoorde, Dan Katz) |
P2996R7 Reflection for C++26 (Barry Revzin, Wyatt Childers, Peter Dimov, Andrew Sutton, Faisal Vali, Daveed Vandevoorde, Dan Katz) |
2024-10-17 Library Evolution TeleconP2996R7: Reflection for C++26 2024-10-17 Library Evolution Telecon Minutes Champion: Dan Katz Summary(Approval polls are in the minutes and are not attached here this time, as they are equivalent to the list below and don't provide additional info over the summary) Modification pollsPOLL: Rename [u8]operator_symbol_of -> [u8]symbol_of
Attendance: 15 We approved the following functions with modifications:(name change)
We approved the following functions as is:
Next StepsWe approved the list of functions with naming and wording fixes as described in the summary. Continue review on remaining facilities: [meta.reflection.layout], [meta.reflection.result], (reflect_invoke), [meta.reflection.define_class], [meta.reflection.define_static], if time left, we will also go over: [meta.reflection.trans] and [meta.reflection.rel]. |
2024-10-29 Library Evolution TeleconP2996R7: Reflection for C++26 2024-10-29 Library Evolution Telecon Minutes Champion: Dan Katz Summary(Approval polls are in the minutes and are not attached here this time, as they are equivalent to the list below and don't provide additional info over the summary) Direction pollsPOLL: LEWG likes the interface presented in: define_static_string, define_static_array.
Attendance: 28 POLL: LEWG sees value in having “define_class” interface in C++26 regardless of whether P3294R0 or an alternative goes into C++26.
Attendance: 25 We approved the following with changes:
We approved the following functions as is:
ACTION: EWG should look at the functions in section: [meta.reflection.define_static], static generation:
(both define_static_string and define_static_array were added after R4 which is the one approved by EWG) Next StepsWe approved the list of functions with naming and wording fixes as described in the summary. Finalized: [meta.reflection.layout]. |
2024-11-05 Library Evolution TeleconP2996R8: Reflection for C++26 2024-11-05 Library Evolution Telecon Minutes Champion: Dan Katz Summary(Approval polls are in the minutes and are not attached here this time, as they are equivalent to the list below and don't provide additional info over the summary) We approved the following with changes:
We approved the following as is:
POLL: Forward “P2996R8” with fixes discussed in the room (without "Is_reflection_type", [meta.reflection.rel], [meta.reflection.tuple.variant]) to LWG for C++26 (without electronic poll).
Attendance: 19 NOTE: As we ran out of time but didn't want to hold proposal back, we forwarded the paper without (will be reviewed in the beginning of Wroclaw): Next StepsWe approved the list of functions with naming and wording fixes as described in the summary. |
CWG 2024-11-19 in Wroclaw: Reviewed D2996R8; needs updates. |
CWG 2024-11-21 in Wroclaw: Reviewed D2996R8; needs updates. |
P2996R0 Reflection for C++26 (Wyatt Childers, Peter Dimov, Barry Revzin, Andrew Sutton, Faisal Vali, Daveed Vandevoorde)
The text was updated successfully, but these errors were encountered: