diff options
| author | Felix S. Klock II <pnkfelix@pnkfx.org> | 2016-02-06 04:28:20 +0100 |
|---|---|---|
| committer | Felix S. Klock II <pnkfelix@pnkfx.org> | 2016-02-08 13:44:03 +0100 |
| commit | 8801bdb6b09569b187bb4c83f6121533afc69820 (patch) | |
| tree | e51e02455b7c296cb819aa2d00ca7a0b9671ce49 /src/libstd/sys/unix/stack_overflow.rs | |
| parent | e06f6928cb840a018706cabf75ab2bf3807551b1 (diff) | |
| download | rust-8801bdb6b09569b187bb4c83f6121533afc69820.tar.gz rust-8801bdb6b09569b187bb4c83f6121533afc69820.zip | |
Split dummy in region inference graph into distinct source and sink nodes.
Why do this: The RegionGraph representation previously conflated all of the non-variable regions (i.e. the concrete regions such as lifetime parameters to the current function) into a single dummy node. A single dummy node leads DFS on a graph `'a -> '_#1 -> '_#0 -> 'b` to claim that `'_#1` is reachable from `'_#0` (due to `'a` and `'b` being conflated in the graph representation), which is incorrect (and can lead to soundness bugs later on in compilation, see #30438). Splitting the dummy node ensures that DFS will never introduce new ancestor relationships between nodes for variable regions in the graph.
Diffstat (limited to 'src/libstd/sys/unix/stack_overflow.rs')
0 files changed, 0 insertions, 0 deletions
