about summary refs log tree commit diff
path: root/src/test/run-make/execution-engine
diff options
context:
space:
mode:
authorEduard Burtescu <edy.burt@gmail.com>2015-06-14 04:50:23 +0300
committerEduard Burtescu <edy.burt@gmail.com>2015-06-19 01:18:42 +0300
commitbc383f62941ae079188a9725eb49f3b8a42e35ae (patch)
treee27b379c1846874c850d4addb539f3fb9540302f /src/test/run-make/execution-engine
parent84b49b2d355e49c429703eade10f93680cc3bd47 (diff)
downloadrust-bc383f62941ae079188a9725eb49f3b8a42e35ae.tar.gz
rust-bc383f62941ae079188a9725eb49f3b8a42e35ae.zip
rustc: enforce stack discipline on ty::ctxt.
Diffstat (limited to 'src/test/run-make/execution-engine')
-rw-r--r--src/test/run-make/execution-engine/test.rs27
1 files changed, 14 insertions, 13 deletions
diff --git a/src/test/run-make/execution-engine/test.rs b/src/test/run-make/execution-engine/test.rs
index 64f66a6ea07..8af3844e62e 100644
--- a/src/test/run-make/execution-engine/test.rs
+++ b/src/test/run-make/execution-engine/test.rs
@@ -221,25 +221,26 @@ fn compile_program(input: &str, sysroot: PathBuf)
         let arenas = ty::CtxtArenas::new();
         let ast_map = driver::assign_node_ids_and_map(&sess, &mut forest);
 
-        let (tcx, analysis) = driver::phase_3_run_analysis_passes(
-            sess, ast_map, &arenas, id, MakeGlobMap::No);
+        driver::phase_3_run_analysis_passes(
+            sess, ast_map, &arenas, id, MakeGlobMap::No, |tcx, analysis| {
 
-        let trans = driver::phase_4_translate_to_llvm(&tcx, analysis);
+            let trans = driver::phase_4_translate_to_llvm(tcx, analysis);
 
-        let crates = tcx.sess.cstore.get_used_crates(RequireDynamic);
+            let crates = tcx.sess.cstore.get_used_crates(RequireDynamic);
 
-        // Collect crates used in the session.
-        // Reverse order finds dependencies first.
-        let deps = crates.into_iter().rev()
-            .filter_map(|(_, p)| p).collect();
+            // Collect crates used in the session.
+            // Reverse order finds dependencies first.
+            let deps = crates.into_iter().rev()
+                .filter_map(|(_, p)| p).collect();
 
-        assert_eq!(trans.modules.len(), 1);
-        let llmod = trans.modules[0].llmod;
+            assert_eq!(trans.modules.len(), 1);
+            let llmod = trans.modules[0].llmod;
 
-        // Workaround because raw pointers do not impl Send
-        let modp = llmod as usize;
+            // Workaround because raw pointers do not impl Send
+            let modp = llmod as usize;
 
-        (modp, deps)
+            (modp, deps)
+        }).1
     }).unwrap();
 
     match handle.join() {