You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The current scheme of task isolation allows leaks anywhere (e.g., DepGraph::with_task and friends). We should move to a scheme where the context is a closure that uses an autotrait to forbid shared, mutable state (basically, forbid UnsafeCell) unless that state is "tracked" -- meaning that its reads and writes are accounted for in the dependency graph. The metadata code uses a scheme vaguely like this.
This will probably be a transition process, starting with an initial PR to construct the "opt-in" mechanism and then replacing existing uses in a series of smaller PRs.
The text was updated successfully, but these errors were encountered:
NB: Part of the roadmap issue on incremental compilation.
The current scheme of task isolation allows leaks anywhere (e.g.,
DepGraph::with_task
and friends). We should move to a scheme where the context is a closure that uses an autotrait to forbid shared, mutable state (basically, forbidUnsafeCell
) unless that state is "tracked" -- meaning that its reads and writes are accounted for in the dependency graph. The metadata code uses a scheme vaguely like this.This will probably be a transition process, starting with an initial PR to construct the "opt-in" mechanism and then replacing existing uses in a series of smaller PRs.
The text was updated successfully, but these errors were encountered: