diff options
| author | Steven Fackler <sfackler@gmail.com> | 2014-02-11 22:43:23 -0800 |
|---|---|---|
| committer | Alex Crichton <alex@alexcrichton.com> | 2014-02-13 12:50:24 -0800 |
| commit | 6b429d07c96c3e7cb3130c070d99651f29bded6c (patch) | |
| tree | 64b728476c3e9d71f277bb899346cd697958780d /src/libsyntax/ext/base.rs | |
| parent | cfb87f10ec7d41d0e7f8c68fbb908fc195517d41 (diff) | |
| download | rust-6b429d07c96c3e7cb3130c070d99651f29bded6c.tar.gz rust-6b429d07c96c3e7cb3130c070d99651f29bded6c.zip | |
Stop unloading syntax libraries
Externally loaded libraries are able to do things that cause references to them to survive past the expansion phase (e.g. creating @-box cycles, launching a task or storing something in task local data). As such, the library has to stay loaded for the lifetime of the process.
Diffstat (limited to 'src/libsyntax/ext/base.rs')
| -rw-r--r-- | src/libsyntax/ext/base.rs | 8 |
1 files changed, 0 insertions, 8 deletions
diff --git a/src/libsyntax/ext/base.rs b/src/libsyntax/ext/base.rs index d22a1d697fc..02c3a1b985b 100644 --- a/src/libsyntax/ext/base.rs +++ b/src/libsyntax/ext/base.rs @@ -20,7 +20,6 @@ use parse::token::{InternedString, intern, str_to_ident}; use util::small_vector::SmallVector; use std::hashmap::HashMap; -use std::unstable::dynamic_lib::DynamicLibrary; // new-style macro! tt code: // @@ -143,8 +142,6 @@ pub struct BlockInfo { macros_escape : bool, // what are the pending renames? pending_renames : RenameList, - // references for crates loaded in this scope - macro_crates: ~[DynamicLibrary], } impl BlockInfo { @@ -152,7 +149,6 @@ impl BlockInfo { BlockInfo { macros_escape: false, pending_renames: ~[], - macro_crates: ~[], } } } @@ -551,10 +547,6 @@ impl SyntaxEnv { self.find_escape_frame().map.insert(k, v); } - pub fn insert_macro_crate(&mut self, lib: DynamicLibrary) { - self.find_escape_frame().info.macro_crates.push(lib); - } - pub fn info<'a>(&'a mut self) -> &'a mut BlockInfo { &mut self.chain[self.chain.len()-1].info } |
