Skip to content

Tracking issue for RFC 2229, "Closures Capture Disjoint Fields" #53488

Closed
@Centril

Description

@Centril

This is a tracking issue for the RFC "Closures Capture Disjoint Fields" (rust-lang/rfcs#2229).

Status

This is under active development by the wg-rfc-2229 compiler-team working group. You can track their progress on the project-rfc-2229 repository.

Implementation plan and status

See the RFC 2229 project board and milestones.

Links, see also

Unresolved questions:

  • How to optimize pointers. Can borrows that all reference parts of the same object be stored as a single pointer? How should this optimization be implemented (e.g. a special repr, refinement typing)?
  • How to signal that a function is pure. Is this even needed/wanted? Any other places where the language could benefit?
  • Should Box be special?
  • Drop order can change as a result of this RFC, is this a real stability problem? How should this be resolved?

This issue has been assigned to @arora-aman via this comment.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

A-closuresArea: Closures (`|…| { … }`)B-RFC-approvedBlocker: Approved by a merged RFC but not yet implemented.C-tracking-issueCategory: An issue tracking the progress of sth. like the implementation of an RFCT-langRelevant to the language team, which will review and decide on the PR/issue.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions