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

P2186 Removing Garbage Collection Support #898

Closed
wg21bot opened this issue Aug 1, 2020 · 10 comments · Fixed by cplusplus/draft#4661
Closed

P2186 Removing Garbage Collection Support #898

wg21bot opened this issue Aug 1, 2020 · 10 comments · Fixed by cplusplus/draft#4661
Labels
C++23 Targeted at C++23 CWG Core IS Ship vehicle: IS LWG Library plenary-approved Papers approved for inclusion in their target vehicle by plenary vote.
Milestone

Comments

@wg21bot
Copy link
Collaborator

wg21bot commented Aug 1, 2020

P2186R0 Removing Garbage Collection Support (JF Bastien, Alisdair Meredith)

@wg21bot wg21bot added EWG Evolution LEWG Library Evolution labels Aug 1, 2020
@wg21bot wg21bot added this to the 2020-telecon milestone Aug 1, 2020
@jfbastien
Copy link
Collaborator

EWG reviewed this in a telecon on July 30th and took the following non-binding poll:

Remove (not deprecate) garbage collection support in C++23.
SF F N A SA
3 9 4 0 1

@brycelelbach brycelelbach added B2 - improvement Bucket 2 as described by P0592: bug fixes, performance improvements, integration fixes for/between e IS Ship vehicle: IS ready-for-library-evolution-mailing-list-review This paper needs to be discussed on the Library Evolution mailing list labels Aug 25, 2020
@jfbastien jfbastien added EWG-vote-on-me EWG can vote on this ready-for-library-evolution-meeting-review This paper needs to be discussed at a Library Evolution meeting and removed ready-for-library-evolution-mailing-list-review This paper needs to be discussed on the Library Evolution mailing list labels Sep 21, 2020
@jfbastien

This comment has been minimized.

@brycelelbach brycelelbach added the C++23 Targeted at C++23 label Oct 15, 2020
@ben-craig
Copy link
Collaborator

P2186R0: Removing Garbage Collection Support

2020-12-14 Library Evolution Telecon Minutes

Chair: Ben Craig

Champion: JF Bastien

Minute Taker: Inbal Levi

Start: 2020-12-14 09:35 Pacific Standard

POLL: Remove (not deprecate) pointer safety in C++23, after moving names to zombie names.

Strongly Favor Weakly Favor Neutral Weakly Against Strongly Against
10 4 3 0 0

Attendance: 24

# of Authors: 1

Author Position: SF

Outcome: EWG may continue with this paper.

End: 09:45

SUMMARY:
The main discussion revolved around seeing if there were any implementations that implemented this, and discussing immediate removal vs. deprecation. LEWG was fine with immediate removal.

OUTCOME:
EWG may continue with this paper. Please add the removed names to [zombie.names]

@ben-craig ben-craig added needs-revision Paper needs changes before it can proceed and removed LEWG Library Evolution ready-for-library-evolution-meeting-review This paper needs to be discussed at a Library Evolution meeting labels Dec 17, 2020
@wg21bot
Copy link
Collaborator Author

wg21bot commented Dec 27, 2020

P2186R1 Removing Garbage Collection Support (JF Bastien, Alisdair Meredith)

@wg21bot wg21bot removed the needs-revision Paper needs changes before it can proceed label Dec 27, 2020
@wg21bot wg21bot modified the milestones: 2020-telecon, 2021-telecon Dec 27, 2020
@jensmaurer jensmaurer added this to Ready for review in CWG Feb 2, 2021
@jfbastien
Copy link
Collaborator

EWG February 2021 polls:

Poll: Forward P2186R1 "Removing Garbage Collection Support" to Core.

SF F N A SA
12 12 4 1 0

Poll outcome: ✅ consensus.

Salient comments:

  • (Against) It does not seem to provide much harm, even if not used… And since the basic need seems genuine, I’d prefer to keep the mechanism until it is properly handled, than removing it and having to reintroduce something similar later.
    Clearly, no need to have unused utilities.
  • To the best of my knowledge, this is unused and not implemented in implementations. The specification cost of keeping it is not zero.
  • Given that 10 years after being standardized, this is not provided in any major implementation, it’s IMHO save to assume that "nobody" needs this/can use this due to the issues outlined in the paper.
  • Implementations of garbage collection exist, yet do not rely on the "garbage collection support" in the Standard. Furthermore, the paper argues convincingly that the Standard’s "support" for garbage collection does not support common use cases, like placement new in local arrays.
  • Keeping stuff in the standard that’s not supported and is lacking guidance for proper implementation makes little sense. Removing it might free space for a better, more useful specification that’s not restricted to cmpatibility.

@jfbastien jfbastien added CWG Core and removed B2 - improvement Bucket 2 as described by P0592: bug fixes, performance improvements, integration fixes for/between e C++23 Targeted at C++23 EWG Evolution EWG-vote-on-me EWG can vote on this IS Ship vehicle: IS labels Mar 9, 2021
@jensmaurer jensmaurer moved this from Ready for review to Approved for plenary vote in CWG Mar 22, 2021
@jensmaurer jensmaurer added LWG Library lwg-pending LWG Chair needs to disposition labels Mar 22, 2021
@jensmaurer
Copy link
Member

CWG 2021-03-22: Approved.

@JeffGarland
Copy link
Member

Planned for LWG review 2021-04-16

@JeffGarland JeffGarland added C++23 Targeted at C++23 IS Ship vehicle: IS lwg-fullreview Paper is ready for lwg full group review and removed lwg-pending LWG Chair needs to disposition labels Apr 9, 2021
@JeffGarland
Copy link
Member

JeffGarland commented Apr 16, 2021

LWG adopted

https://wiki.edg.com/bin/view/Wg21telecons2021/P2186-20210416

Adopt P2816R2 Remove Garbage Collection Support for C++23
F N A
7 2 0

1 neutral vote was regarding discussion of object lifetime -- which was subsequently clarified to satisfaction after the vote.

@JeffGarland JeffGarland added tentatively-ready-for-plenary Reviewed between meetings; ready for a vote. and removed lwg-fullreview Paper is ready for lwg full group review tentatively-ready-for-plenary Reviewed between meetings; ready for a vote. labels Apr 16, 2021
@jensmaurer jensmaurer added the straw-poll Straw poll label Apr 23, 2021
@wg21bot
Copy link
Collaborator Author

wg21bot commented Apr 25, 2021

P2186R2 Removing Garbage Collection Support (JF Bastien, Alisdair Meredith)

@cor3ntin cor3ntin added the plenary-approved Papers approved for inclusion in their target vehicle by plenary vote. label Jun 7, 2021
@jensmaurer jensmaurer removed this from Approved for plenary vote in CWG Jun 26, 2021
@wg21bot
Copy link
Collaborator Author

wg21bot commented Oct 26, 2021

Adopted 2021-06.

@jensmaurer jensmaurer removed the straw-poll Straw poll label Oct 26, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C++23 Targeted at C++23 CWG Core IS Ship vehicle: IS LWG Library plenary-approved Papers approved for inclusion in their target vehicle by plenary vote.
Projects
No open projects
Development

Successfully merging a pull request may close this issue.

7 participants