A nll question about dataflow computation


For each of these kinds of actions, we will specify below the rules that determine when they are legal, given the set of loans L in scope at the start of the action. The second phase of the borrow check therefore consists of iterating over each statement in the MIR and checking, given the in-scope loans, whether the actions it performs are legal. Translating MIR statements into actions is mostly straightforward:

Note, "given the set of loans L in scope at the start of the action".
I want to know whether this set of loads have or haven't been transformed by the "transfer function" of the statement defined by here:

For a statement at point P in the graph, we define the "transfer function" -- that is, which loans it brings into or out of scope -- as follows:

  • any loans whose region does not include P are killed;
  • if this is a borrow statement, the corresponding loan is generated;
  • if this is an assignment lv = <rvalue> , then any loan for some path P of which lv is a prefix is killed.

This topic was automatically closed 90 days after the last reply. We invite you to open a new topic if you have further questions or comments.