Skip to content
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

P2350 constexpr class #1028

Open
wg21bot opened this issue Apr 25, 2021 · 5 comments
Open

P2350 constexpr class #1028

wg21bot opened this issue Apr 25, 2021 · 5 comments
Labels
EWG needs-revision
Milestone

Comments

@wg21bot
Copy link
Collaborator

@wg21bot wg21bot commented Apr 25, 2021

P2350R0 constexpr class (Andreas Fertig)

@wg21bot wg21bot added the EWG label Apr 25, 2021
@wg21bot wg21bot added this to the 2021-telecon milestone Apr 25, 2021
@jfbastien
Copy link
Collaborator

@jfbastien jfbastien commented Jul 22, 2021

We saw this paper in yesterday's EWG telecon:

POLL: we are interested in pursuing a way to specify that multiple/all class members are constexpr, either as suggested in this paper or through another mechanism, considering that time is limited and there is only so much work we can do.

SF F N A SA
2 5 2 2 0

Result: consensus.

POLL: support class-level consteval at the same time or before supporting constexpr, to inform the design of class constexpr.

SF F N A SA
2 8 3 0 0

Result: consensus.

POLL: use access specifier constexpr instead of class-level constexpr.

SF F N A SA
0 1 3 4 5

Result: no consensus.

POLL: class-level constexpr should also affect friend functions.

SF F N A SA
0 1 2 5 1

Result: no consensus.

POLL: it should be ill-formed to put constexpr on a class which can’t be entirely constexpr (e.g. because of its base or data members not being constexpr).

SF F N A SA
0 4 2 4 1

Result: no consensus.

POLL: static data members should also be constexpr in a constexpr class.

SF F N A SA
3 4 0 1 0

Result: consensus.

POLL: allow constexpr and final to appear in either order.

SF F N A SA
2 6 4 0 0

Result: consensus.

@jfbastien jfbastien added the needs-revision label Jul 22, 2021
@wg21bot
Copy link
Collaborator Author

@wg21bot wg21bot commented Jul 30, 2021

P2350R1 constexpr class (Andreas Fertig)

@wg21bot wg21bot removed the needs-revision label Jul 30, 2021
@jfbastien
Copy link
Collaborator

@jfbastien jfbastien commented Oct 13, 2021

Seen in today's EWG telecon:

POLL: having seen what class-level consteval looks like, we still want it in P2350.

SF F N A SA
0 1 7 8 0

Result: consensus against, we don’t want consteval in P2350.

POLL: send P2350 to electronic polling, targeting CWG for C++23.

SF F N A SA
4 8 2 3 0

Result: consensus.

POLL: given that Committee time is limited, we’d like to see a different paper which further explores class-level consteval.

SF F N A SA
3 5 8 0 0

Result: consensus.

POLL: given that Committee time is limited, we’d like to see a different paper which proposes implicit constexpr.

SF F N A SA
7 4 1 4 1

Result: consensus.

@jfbastien jfbastien added needs-revision EWG-vote-on-me labels Oct 13, 2021
@wg21bot
Copy link
Collaborator Author

@wg21bot wg21bot commented Oct 26, 2021

P2350R2 constexpr class (Andreas Fertig)

@wg21bot wg21bot removed the needs-revision label Oct 26, 2021
@jensmaurer jensmaurer added the C++23 label Jan 1, 2022
@jensmaurer jensmaurer modified the milestones: 2021-telecon, 2022-telecon Jan 1, 2022
@jfbastien jfbastien added needs-revision and removed EWG-vote-on-me C++23 labels Feb 27, 2022
@jfbastien
Copy link
Collaborator

@jfbastien jfbastien commented Feb 27, 2022

2022-02 poll results:

SF F N A SA
12 12 9 5 2
Abstain: 5

Poll outcome: no consensus

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
EWG needs-revision
Projects
None yet
Development

No branches or pull requests

3 participants