-
-
Notifications
You must be signed in to change notification settings - Fork 14.9k
fallout from Sound Generic Drop to be addressed later #22321
Copy link
Copy link
Closed
Labels
A-destructorsArea: Destructors (`Drop`, …)Area: Destructors (`Drop`, …)C-tracking-issueCategory: An issue tracking the progress of sth. like the implementation of an RFCCategory: An issue tracking the progress of sth. like the implementation of an RFCmetabugIssues about issues themselves ("bugs about bugs")Issues about issues themselves ("bugs about bugs")
Metadata
Metadata
Assignees
Labels
A-destructorsArea: Destructors (`Drop`, …)Area: Destructors (`Drop`, …)C-tracking-issueCategory: An issue tracking the progress of sth. like the implementation of an RFCCategory: An issue tracking the progress of sth. like the implementation of an RFCmetabugIssues about issues themselves ("bugs about bugs")Issues about issues themselves ("bugs about bugs")
Type
Fields
Give feedbackNo fields configured for issues without a type.
This is meant as a meta-bug for me to collect references to places where users complained about fallout from Sound Generic Drop (#21972) and its precursors (namely #21657 in particular).
It might be a places to pose ideas for ways to address complaints, but keeping in mind the distinction between language features versus tooling, I would prefer for the comments on this ticket to focus on things we can do without changing the language per se, and try to put language changes somewhere on the RFC repo. For example, ways to encode "this destructor for this type is pure" is an example of such a language feature.
(I do not know where something like "borrow scopes should not always be lexical" (#6393) falls in that categorization; that might be an example of something that would not require an RFC, but maybe it does at this point.)
Potential work items:
Vec<T>,Box<T>,Rc<T>, etc, covariant with respect toT. Discussed on issue new scoping rules for safe dtors may benefit from variance on type params #21198 (was not a strict requirement for landing new destructor semantics).methoditem" dropck: Ignore bounds for traits without any items #24805key terms: destruction scope, block suffix, unsafe_destructor