diff options
| author | Graydon Hoare <[email protected]> | 2010-09-30 16:10:30 -0700 |
|---|---|---|
| committer | Graydon Hoare <[email protected]> | 2010-09-30 16:10:30 -0700 |
| commit | 62c224ffe4845ed3a1f651d05ea0be84d5c870ea (patch) | |
| tree | 4b5fdc0220f369b0cae5784c1d076fe502a78df0 /src/boot/me/loop.ml | |
| parent | Initial check-in of 99 Bottles Of Beer (diff) | |
| download | rust-62c224ffe4845ed3a1f651d05ea0be84d5c870ea.tar.xz rust-62c224ffe4845ed3a1f651d05ea0be84d5c870ea.zip | |
Drop slots on block exits even when blocks have no statements. Part way to fixing bind leakage in rustc.
Diffstat (limited to 'src/boot/me/loop.ml')
| -rw-r--r-- | src/boot/me/loop.ml | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/boot/me/loop.ml b/src/boot/me/loop.ml index 1fbb8223..b5548e2c 100644 --- a/src/boot/me/loop.ml +++ b/src/boot/me/loop.ml @@ -114,6 +114,8 @@ let loop_depth_visitor let visit_block_pre b = if Hashtbl.mem cx.ctxt_block_is_loop_body b.id then push_loop (); + let fcx = Stack.top fcxs in + htab_put cx.ctxt_block_loop_depths b.id fcx.current_depth; inner.Walk.visit_block_pre b in |