about summary refs log tree commit diff
diff options
context:
space:
mode:
authorPatrick Walton <pcwalton@mimiga.net>2013-05-18 12:39:17 -0700
committerPatrick Walton <pcwalton@mimiga.net>2013-05-22 21:57:08 -0700
commitc532e033c9ee92d208a9bb2fac4c12d901932f42 (patch)
tree286fea43f1118aeb3927e0b07cc450d6095266b4
parentf3723cf7c486fd22544b71d27eca5ed7082c6dff (diff)
downloadrust-c532e033c9ee92d208a9bb2fac4c12d901932f42.tar.gz
rust-c532e033c9ee92d208a9bb2fac4c12d901932f42.zip
librustc: Change `std` to `extra` throughout libsyntax and librustc
-rw-r--r--src/libextra/std.rc10
-rw-r--r--src/librustc/back/link.rs4
-rw-r--r--src/librustc/driver/driver.rs12
-rw-r--r--src/librustc/front/test.rs26
-rw-r--r--src/librustc/metadata/csearch.rs2
-rw-r--r--src/librustc/metadata/cstore.rs4
-rw-r--r--src/librustc/metadata/decoder.rs6
-rw-r--r--src/librustc/metadata/encoder.rs10
-rw-r--r--src/librustc/metadata/loader.rs2
-rw-r--r--src/librustc/middle/astencode.rs12
-rw-r--r--src/librustc/middle/check_match.rs2
-rw-r--r--src/librustc/middle/lint.rs2
-rw-r--r--src/librustc/middle/trans/base.rs2
-rw-r--r--src/librustc/middle/trans/glue.rs2
-rw-r--r--src/librustc/middle/trans/type_use.rs4
-rw-r--r--src/librustc/middle/ty.rs2
-rw-r--r--src/librustc/middle/typeck/check/method.rs2
-rw-r--r--src/librustc/middle/typeck/check/mod.rs2
-rw-r--r--src/librustc/middle/typeck/check/regionmanip.rs2
-rw-r--r--src/librustc/middle/typeck/infer/glb.rs2
-rw-r--r--src/librustc/middle/typeck/infer/lattice.rs2
-rw-r--r--src/librustc/middle/typeck/infer/lub.rs2
-rw-r--r--src/librustc/middle/typeck/infer/mod.rs4
-rw-r--r--src/librustc/middle/typeck/infer/sub.rs4
-rw-r--r--src/librustc/middle/typeck/infer/test.rs12
-rw-r--r--src/librustc/middle/typeck/infer/unify.rs2
-rw-r--r--src/librustc/middle/typeck/mod.rs4
-rw-r--r--src/librustc/rustc.rc9
-rw-r--r--src/librustc/util/common.rs6
-rw-r--r--src/libsyntax/ast.rs10
-rw-r--r--src/libsyntax/attr.rs4
-rw-r--r--src/libsyntax/codemap.rs2
-rw-r--r--src/libsyntax/diagnostic.rs2
-rw-r--r--src/libsyntax/ext/deriving/decodable.rs6
-rw-r--r--src/libsyntax/ext/deriving/encodable.rs12
-rw-r--r--src/libsyntax/ext/deriving/generic.rs2
-rw-r--r--src/libsyntax/ext/deriving/mod.rs2
-rw-r--r--src/libsyntax/ext/pipes/liveness.rs2
-rw-r--r--src/libsyntax/parse/lexer.rs2
-rw-r--r--src/libsyntax/parse/mod.rs8
-rw-r--r--src/libsyntax/syntax.rc4
41 files changed, 111 insertions, 100 deletions
diff --git a/src/libextra/std.rc b/src/libextra/std.rc
index 90672d221c5..777f45e84bc 100644
--- a/src/libextra/std.rc
+++ b/src/libextra/std.rc
@@ -119,10 +119,16 @@ pub mod test;
 pub mod serialize;
 
 // A curious inner-module that's not exported that contains the binding
-// 'std' so that macro-expanded references to std::serialize and such
-// can be resolved within libcore.
+// 'extra' so that macro-expanded references to std::serialize and such
+// can be resolved within libextra.
 #[doc(hidden)] // FIXME #3538
 pub mod std {
     pub use serialize;
     pub use test;
 }
+#[doc(hidden)] // FIXME #3538
+pub mod extra {
+    pub use serialize;
+    pub use test;
+}
+
diff --git a/src/librustc/back/link.rs b/src/librustc/back/link.rs
index 42ce18cf88b..a5882450f67 100644
--- a/src/librustc/back/link.rs
+++ b/src/librustc/back/link.rs
@@ -125,9 +125,9 @@ pub mod jit {
 
             // We need to tell JIT where to resolve all linked
             // symbols from. The equivalent of -lstd, -lcore, etc.
-            // By default the JIT will resolve symbols from the std and
+            // By default the JIT will resolve symbols from the extra and
             // core linked into rustc. We don't want that,
-            // incase the user wants to use an older std library.
+            // incase the user wants to use an older extra library.
 
             let cstore = sess.cstore;
             for cstore::get_used_crate_files(cstore).each |cratepath| {
diff --git a/src/librustc/driver/driver.rs b/src/librustc/driver/driver.rs
index a3f47d398fb..4a9a12e7c0f 100644
--- a/src/librustc/driver/driver.rs
+++ b/src/librustc/driver/driver.rs
@@ -30,9 +30,9 @@ use core::io;
 use core::os;
 use core::str;
 use core::vec;
-use std::getopts::groups::{optopt, optmulti, optflag, optflagopt, getopts};
-use std::getopts::{opt_present};
-use std::getopts;
+use extra::getopts::groups::{optopt, optmulti, optflag, optflagopt, getopts};
+use extra::getopts::{opt_present};
+use extra::getopts;
 use syntax::ast;
 use syntax::abi;
 use syntax::attr;
@@ -200,7 +200,7 @@ pub fn compile_rest(sess: Session,
     crate = time(time_passes, ~"intrinsic injection", ||
         front::intrinsic_inject::inject_intrinsic(sess, crate));
 
-    crate = time(time_passes, ~"std injection", ||
+    crate = time(time_passes, ~"extra injection", ||
         front::std_inject::maybe_inject_libstd_ref(sess, crate));
 
     let ast_map = time(time_passes, ~"ast indexing", ||
@@ -923,8 +923,8 @@ mod test {
     use driver::driver::{build_configuration, build_session};
     use driver::driver::{build_session_options, optgroups, str_input};
 
-    use std::getopts::groups::getopts;
-    use std::getopts;
+    use extra::getopts::groups::getopts;
+    use extra::getopts;
     use syntax::attr;
     use syntax::diagnostic;
 
diff --git a/src/librustc/front/test.rs b/src/librustc/front/test.rs
index 2bc648814a3..e41f26aab08 100644
--- a/src/librustc/front/test.rs
+++ b/src/librustc/front/test.rs
@@ -258,13 +258,13 @@ We're going to be building a module that looks more or less like:
 
 mod __test {
   #[!resolve_unexported]
-  extern mod std (name = "std", vers = "...");
+  extern mod extra (name = "extra", vers = "...");
   fn main() {
     #[main];
-    std::test::test_main_static(::os::args(), tests)
+    extra::test::test_main_static(::os::args(), tests)
   }
 
-  static tests : &'static [std::test::TestDescAndFn] = &[
+  static tests : &'static [extra::test::TestDescAndFn] = &[
     ... the list of tests in the crate ...
   ];
 }
@@ -276,7 +276,7 @@ fn mk_std(cx: &TestCtxt) -> @ast::view_item {
     let vers = nospan(vers);
     let mi = ast::meta_name_value(@~"vers", vers);
     let mi = nospan(mi);
-    let id_std = cx.sess.ident_of("std");
+    let id_std = cx.sess.ident_of("extra");
     let vi = if is_std(cx) {
         ast::view_item_use(
             ~[@nospan(ast::view_path_simple(id_std,
@@ -297,7 +297,7 @@ fn mk_std(cx: &TestCtxt) -> @ast::view_item {
 
 fn mk_test_module(cx: &TestCtxt) -> @ast::item {
 
-    // Link to std
+    // Link to extra
     let view_items = ~[mk_std(cx)];
 
     // A constant vector of test descriptors.
@@ -309,7 +309,7 @@ fn mk_test_module(cx: &TestCtxt) -> @ast::item {
     let mainfn = (quote_item!(
         pub fn main() {
             #[main];
-            std::test::test_main_static(::os::args(), tests);
+            extra::test::test_main_static(::os::args(), tests);
         }
     )).get();
 
@@ -366,7 +366,7 @@ fn mk_tests(cx: &TestCtxt) -> @ast::item {
     let test_descs = mk_test_descs(cx);
 
     (quote_item!(
-        pub static tests : &'static [self::std::test::TestDescAndFn] =
+        pub static tests : &'static [self::extra::test::TestDescAndFn] =
             $test_descs
         ;
     )).get()
@@ -376,7 +376,7 @@ fn is_std(cx: &TestCtxt) -> bool {
     let is_std = {
         let items = attr::find_linkage_metas(cx.crate.node.attrs);
         match attr::last_meta_item_value_str_by_name(items, "name") {
-          Some(@~"std") => true,
+          Some(@~"extra") => true,
           _ => false
         }
     };
@@ -437,9 +437,9 @@ fn mk_test_desc_and_fn_rec(cx: &TestCtxt, test: &Test) -> @ast::expr {
     };
 
     let t_expr = if test.bench {
-        quote_expr!( self::std::test::StaticBenchFn($fn_expr) )
+        quote_expr!( self::extra::test::StaticBenchFn($fn_expr) )
     } else {
-        quote_expr!( self::std::test::StaticTestFn($fn_expr) )
+        quote_expr!( self::extra::test::StaticTestFn($fn_expr) )
     };
 
     let ignore_expr = if test.ignore {
@@ -455,9 +455,9 @@ fn mk_test_desc_and_fn_rec(cx: &TestCtxt, test: &Test) -> @ast::expr {
     };
 
     let e = quote_expr!(
-        self::std::test::TestDescAndFn {
-            desc: self::std::test::TestDesc {
-                name: self::std::test::StaticTestName($name_expr),
+        self::extra::test::TestDescAndFn {
+            desc: self::extra::test::TestDesc {
+                name: self::extra::test::StaticTestName($name_expr),
                 ignore: $ignore_expr,
                 should_fail: $fail_expr
             },
diff --git a/src/librustc/metadata/csearch.rs b/src/librustc/metadata/csearch.rs
index c887b2553f7..b35904dbdae 100644
--- a/src/librustc/metadata/csearch.rs
+++ b/src/librustc/metadata/csearch.rs
@@ -18,7 +18,7 @@ use metadata::decoder;
 use metadata;
 use middle::{ty, resolve};
 
-use reader = std::ebml::reader;
+use reader = extra::ebml::reader;
 use syntax::ast;
 use syntax::ast_map;
 use syntax::diagnostic::expect;
diff --git a/src/librustc/metadata/cstore.rs b/src/librustc/metadata/cstore.rs
index 0c0f0947314..6cc211e0e99 100644
--- a/src/librustc/metadata/cstore.rs
+++ b/src/librustc/metadata/cstore.rs
@@ -18,7 +18,7 @@ use metadata::cstore;
 use metadata::decoder;
 
 use core::hashmap::HashMap;
-use std;
+use extra;
 use syntax::ast;
 use syntax::parse::token::ident_interner;
 
@@ -152,7 +152,7 @@ pub fn get_dep_hashes(cstore: &CStore) -> ~[~str] {
         });
     }
 
-    let sorted = do std::sort::merge_sort(result) |a, b| {
+    let sorted = do extra::sort::merge_sort(result) |a, b| {
         (a.name, a.vers, a.hash) <= (b.name, b.vers, b.hash)
     };
 
diff --git a/src/librustc/metadata/decoder.rs b/src/librustc/metadata/decoder.rs
index ef9c9453062..de44b74528d 100644
--- a/src/librustc/metadata/decoder.rs
+++ b/src/librustc/metadata/decoder.rs
@@ -30,9 +30,9 @@ use core::io;
 use core::option;
 use core::str;
 use core::vec;
-use std::ebml::reader;
-use std::ebml;
-use std::serialize::Decodable;
+use extra::ebml::reader;
+use extra::ebml;
+use extra::serialize::Decodable;
 use syntax::ast_map;
 use syntax::attr;
 use syntax::diagnostic::span_handler;
diff --git a/src/librustc/metadata/encoder.rs b/src/librustc/metadata/encoder.rs
index e959983a98a..715465a7577 100644
--- a/src/librustc/metadata/encoder.rs
+++ b/src/librustc/metadata/encoder.rs
@@ -22,11 +22,11 @@ use middle::ty;
 use middle;
 use util::ppaux::ty_to_str;
 
-use std::flate;
+use extra::flate;
 use core::hash::HashUtil;
 use core::hashmap::HashMap;
-use std::serialize::Encodable;
-use std;
+use extra::serialize::Encodable;
+use extra;
 use syntax::abi::AbiSet;
 use syntax::ast::*;
 use syntax::ast;
@@ -39,7 +39,7 @@ use syntax::{ast_util, visit};
 use syntax::opt_vec::OptVec;
 use syntax::opt_vec;
 use syntax;
-use writer = std::ebml::writer;
+use writer = extra::ebml::writer;
 
 // used by astencode:
 type abbrev_map = @mut HashMap<ty::t, tyencode::ty_abbrev>;
@@ -1288,7 +1288,7 @@ fn encode_crate_deps(ecx: @EncodeContext,
         };
 
         // Sort by cnum
-        std::sort::quick_sort(deps, |kv1, kv2| kv1.cnum <= kv2.cnum);
+        extra::sort::quick_sort(deps, |kv1, kv2| kv1.cnum <= kv2.cnum);
 
         // Sanity-check the crate numbers
         let mut expected_cnum = 1;
diff --git a/src/librustc/metadata/loader.rs b/src/librustc/metadata/loader.rs
index c29a644c123..232101930ad 100644
--- a/src/librustc/metadata/loader.rs
+++ b/src/librustc/metadata/loader.rs
@@ -23,7 +23,7 @@ use syntax::parse::token::ident_interner;
 use syntax::print::pprust;
 use syntax::{ast, attr};
 
-use std::flate;
+use extra::flate;
 use core::os::consts::{macos, freebsd, linux, android, win32};
 
 pub enum os {
diff --git a/src/librustc/middle/astencode.rs b/src/librustc/middle/astencode.rs
index 3bade41d032..3ebcf72e485 100644
--- a/src/librustc/middle/astencode.rs
+++ b/src/librustc/middle/astencode.rs
@@ -25,11 +25,11 @@ use middle::{ty, typeck, moves};
 use middle;
 use util::ppaux::ty_to_str;
 
-use std::ebml::reader;
-use std::ebml;
-use std::serialize;
-use std::serialize::{Encoder, Encodable, EncoderHelpers, DecoderHelpers};
-use std::serialize::{Decoder, Decodable};
+use extra::ebml::reader;
+use extra::ebml;
+use extra::serialize;
+use extra::serialize::{Encoder, Encodable, EncoderHelpers, DecoderHelpers};
+use extra::serialize::{Decoder, Decodable};
 use syntax::ast;
 use syntax::ast_map;
 use syntax::ast_util::inlined_item_utils;
@@ -39,7 +39,7 @@ use syntax::codemap;
 use syntax::fold::*;
 use syntax::fold;
 use syntax;
-use writer = std::ebml::writer;
+use writer = extra::ebml::writer;
 
 #[cfg(test)] use syntax::parse;
 #[cfg(test)] use syntax::print::pprust;
diff --git a/src/librustc/middle/check_match.rs b/src/librustc/middle/check_match.rs
index db5bdf85cb5..9d164f5eb40 100644
--- a/src/librustc/middle/check_match.rs
+++ b/src/librustc/middle/check_match.rs
@@ -19,7 +19,7 @@ use middle::typeck::method_map;
 use middle::moves;
 use util::ppaux::ty_to_str;
 
-use std::sort;
+use extra::sort;
 use syntax::ast::*;
 use syntax::ast_util::{unguarded_pat, walk_pat};
 use syntax::codemap::{span, dummy_sp, spanned};
diff --git a/src/librustc/middle/lint.rs b/src/librustc/middle/lint.rs
index 11d1f5bd7d2..2b2f2df577b 100644
--- a/src/librustc/middle/lint.rs
+++ b/src/librustc/middle/lint.rs
@@ -17,7 +17,7 @@ use middle::pat_util;
 use util::ppaux::{ty_to_str};
 
 use core::hashmap::HashMap;
-use std::smallintmap::SmallIntMap;
+use extra::smallintmap::SmallIntMap;
 use syntax::attr;
 use syntax::codemap::span;
 use syntax::codemap;
diff --git a/src/librustc/middle/trans/base.rs b/src/librustc/middle/trans/base.rs
index 605bd72d8d7..f92acbaf5c6 100644
--- a/src/librustc/middle/trans/base.rs
+++ b/src/librustc/middle/trans/base.rs
@@ -67,7 +67,7 @@ use util::ppaux::{Repr, ty_to_str};
 use core::hash;
 use core::hashmap::{HashMap, HashSet};
 use core::libc::c_uint;
-use std::time;
+use extra::time;
 use syntax::ast::ident;
 use syntax::ast_map::{path, path_elt_to_str, path_name};
 use syntax::ast_util::{local_def, path_to_ident};
diff --git a/src/librustc/middle/trans/glue.rs b/src/librustc/middle/trans/glue.rs
index 8dc97b5c35d..d8c85112747 100644
--- a/src/librustc/middle/trans/glue.rs
+++ b/src/librustc/middle/trans/glue.rs
@@ -36,7 +36,7 @@ use util::ppaux;
 use util::ppaux::ty_to_short_str;
 
 use core::libc::c_uint;
-use std::time;
+use extra::time;
 use syntax::ast;
 
 pub fn trans_free(cx: block, v: ValueRef) -> block {
diff --git a/src/librustc/middle/trans/type_use.rs b/src/librustc/middle/trans/type_use.rs
index 4a8adfba11c..365b75b8dd4 100644
--- a/src/librustc/middle/trans/type_use.rs
+++ b/src/librustc/middle/trans/type_use.rs
@@ -36,8 +36,8 @@ use middle::typeck;
 use core::option::{Some, None};
 use core::uint;
 use core::vec;
-use std::list::{List, Cons, Nil};
-use std::list;
+use extra::list::{List, Cons, Nil};
+use extra::list;
 use syntax::ast;
 use syntax::ast::*;
 use syntax::ast_map;
diff --git a/src/librustc/middle/ty.rs b/src/librustc/middle/ty.rs
index 734c9ac0477..761096a019e 100644
--- a/src/librustc/middle/ty.rs
+++ b/src/librustc/middle/ty.rs
@@ -30,7 +30,7 @@ use util::enum_set::{EnumSet, CLike};
 use core::ptr::to_unsafe_ptr;
 use core::to_bytes;
 use core::hashmap::{HashMap, HashSet};
-use std::smallintmap::SmallIntMap;
+use extra::smallintmap::SmallIntMap;
 use syntax::ast::*;
 use syntax::ast_util::is_local;
 use syntax::ast_util;
diff --git a/src/librustc/middle/typeck/check/method.rs b/src/librustc/middle/typeck/check/method.rs
index a34465db7cd..68deb900886 100644
--- a/src/librustc/middle/typeck/check/method.rs
+++ b/src/librustc/middle/typeck/check/method.rs
@@ -96,7 +96,7 @@ use middle::typeck::check::regionmanip::replace_bound_regions_in_fn_sig;
 use util::common::indenter;
 
 use core::hashmap::HashSet;
-use std::list::Nil;
+use extra::list::Nil;
 use syntax::ast::{def_id, sty_value, sty_region, sty_box};
 use syntax::ast::{sty_uniq, sty_static, node_id};
 use syntax::ast::{m_const, m_mutbl, m_imm};
diff --git a/src/librustc/middle/typeck/check/mod.rs b/src/librustc/middle/typeck/check/mod.rs
index 226d7fa7651..6131280f900 100644
--- a/src/librustc/middle/typeck/check/mod.rs
+++ b/src/librustc/middle/typeck/check/mod.rs
@@ -112,7 +112,7 @@ use util::ppaux;
 use core::cast::transmute;
 use core::hashmap::HashMap;
 use core::util::replace;
-use std::list::Nil;
+use extra::list::Nil;
 use syntax::abi::AbiSet;
 use syntax::ast::{provided, required};
 use syntax::ast;
diff --git a/src/librustc/middle/typeck/check/regionmanip.rs b/src/librustc/middle/typeck/check/regionmanip.rs
index 89cf3df6fed..c1b33d317f1 100644
--- a/src/librustc/middle/typeck/check/regionmanip.rs
+++ b/src/librustc/middle/typeck/check/regionmanip.rs
@@ -19,7 +19,7 @@ use util::common::indenter;
 use util::ppaux::region_to_str;
 use util::ppaux;
 
-use std::list::Cons;
+use extra::list::Cons;
 
 // Helper functions related to manipulating region types.
 
diff --git a/src/librustc/middle/typeck/infer/glb.rs b/src/librustc/middle/typeck/infer/glb.rs
index 78989a13376..d6e3f2dae5d 100644
--- a/src/librustc/middle/typeck/infer/glb.rs
+++ b/src/librustc/middle/typeck/infer/glb.rs
@@ -30,7 +30,7 @@ use syntax::codemap::span;
 use util::common::{indent, indenter};
 use util::ppaux::mt_to_str;
 
-use std::list;
+use extra::list;
 
 pub struct Glb(CombineFields);  // "greatest lower bound" (common subtype)
 
diff --git a/src/librustc/middle/typeck/infer/lattice.rs b/src/librustc/middle/typeck/infer/lattice.rs
index 81befc5f650..3640748b20b 100644
--- a/src/librustc/middle/typeck/infer/lattice.rs
+++ b/src/librustc/middle/typeck/infer/lattice.rs
@@ -46,7 +46,7 @@ use middle::typeck::infer::sub::Sub;
 use middle::typeck::infer::to_str::InferStr;
 use util::common::indenter;
 
-use std::list;
+use extra::list;
 
 pub trait LatticeValue {
     fn sub(cf: &CombineFields, a: &Self, b: &Self) -> ures;
diff --git a/src/librustc/middle/typeck/infer/lub.rs b/src/librustc/middle/typeck/infer/lub.rs
index c906d3ef495..f5eb0bc2635 100644
--- a/src/librustc/middle/typeck/infer/lub.rs
+++ b/src/librustc/middle/typeck/infer/lub.rs
@@ -24,7 +24,7 @@ use middle::typeck::isr_alist;
 use util::common::indent;
 use util::ppaux::mt_to_str;
 
-use std::list;
+use extra::list;
 use syntax::abi::AbiSet;
 use syntax::ast;
 use syntax::ast::{Many, Once, extern_fn, m_const, impure_fn};
diff --git a/src/librustc/middle/typeck/infer/mod.rs b/src/librustc/middle/typeck/infer/mod.rs
index 864f0e24eeb..f2371e927b8 100644
--- a/src/librustc/middle/typeck/infer/mod.rs
+++ b/src/librustc/middle/typeck/infer/mod.rs
@@ -267,8 +267,8 @@ use middle::typeck::isr_alist;
 use util::common::indent;
 use util::ppaux::{bound_region_to_str, ty_to_str, trait_ref_to_str};
 
-use std::list::Nil;
-use std::smallintmap::SmallIntMap;
+use extra::list::Nil;
+use extra::smallintmap::SmallIntMap;
 use syntax::ast::{m_imm, m_mutbl};
 use syntax::ast;
 use syntax::codemap;
diff --git a/src/librustc/middle/typeck/infer/sub.rs b/src/librustc/middle/typeck/infer/sub.rs
index 11fac4d5414..2578f7c8553 100644
--- a/src/librustc/middle/typeck/infer/sub.rs
+++ b/src/librustc/middle/typeck/infer/sub.rs
@@ -23,8 +23,8 @@ use middle::typeck::infer::to_str::InferStr;
 use util::common::{indent, indenter};
 use util::ppaux::bound_region_to_str;
 
-use std::list::Nil;
-use std::list;
+use extra::list::Nil;
+use extra::list;
 use syntax::abi::AbiSet;
 use syntax::ast;
 use syntax::ast::{Onceness, m_const, purity};
diff --git a/src/librustc/middle/typeck/infer/test.rs b/src/librustc/middle/typeck/infer/test.rs
index f2a72e07a57..e39dd986c51 100644
--- a/src/librustc/middle/typeck/infer/test.rs
+++ b/src/librustc/middle/typeck/infer/test.rs
@@ -23,12 +23,12 @@ use middle::lang_items::{LanguageItems, language_items};
 use middle::ty::{FnTyBase, FnMeta, FnSig};
 use util::ppaux::ty_to_str;
 
-use std::getopts::groups::{optopt, optmulti, optflag, optflagopt, getopts};
-use std::getopts::groups;
-use std::getopts::{opt_present};
-use std::getopts;
-use std::getopts;
-use std::oldmap::HashMap;
+use extra::getopts::groups::{optopt, optmulti, optflag, optflagopt, getopts};
+use extra::getopts::groups;
+use extra::getopts::{opt_present};
+use extra::getopts;
+use extra::getopts;
+use extra::oldmap::HashMap;
 use syntax::codemap::dummy_sp;
 use syntax::parse::parse_crate_from_source_str;
 use syntax::{ast, attr, parse};
diff --git a/src/librustc/middle/typeck/infer/unify.rs b/src/librustc/middle/typeck/infer/unify.rs
index 39feedfce8b..78739bd7b04 100644
--- a/src/librustc/middle/typeck/infer/unify.rs
+++ b/src/librustc/middle/typeck/infer/unify.rs
@@ -10,7 +10,7 @@
 
 use core::prelude::*;
 
-use std::smallintmap::SmallIntMap;
+use extra::smallintmap::SmallIntMap;
 
 use middle::ty::{Vid, expected_found, IntVarValue};
 use middle::ty;
diff --git a/src/librustc/middle/typeck/mod.rs b/src/librustc/middle/typeck/mod.rs
index 8684b1b03e8..f4900f5bfeb 100644
--- a/src/librustc/middle/typeck/mod.rs
+++ b/src/librustc/middle/typeck/mod.rs
@@ -59,8 +59,8 @@ use util::ppaux::Repr;
 use util::ppaux;
 
 use core::hashmap::HashMap;
-use std::list::List;
-use std::list;
+use extra::list::List;
+use extra::list;
 use syntax::codemap::span;
 use syntax::print::pprust::*;
 use syntax::{ast, ast_map, abi};
diff --git a/src/librustc/rustc.rc b/src/librustc/rustc.rc
index f1263be6b4b..04375b45793 100644
--- a/src/librustc/rustc.rc
+++ b/src/librustc/rustc.rc
@@ -25,9 +25,12 @@
 #[no_std];
 
 extern mod core(name = "std");
-extern mod std(name = "extra");
+extern mod extra(name = "extra");
 extern mod syntax;
 
+// For deriving(Encodable) purposes...
+extern mod std(name = "extra", vers = "0.7-pre");
+
 use core::prelude::*;
 
 use driver::driver::{host_triple, optgroups, early_error};
@@ -38,8 +41,8 @@ use driver::driver::{compile_input};
 use driver::session;
 use middle::lint;
 
-use std::getopts::{groups, opt_present};
-use std::getopts;
+use extra::getopts::{groups, opt_present};
+use extra::getopts;
 use syntax::codemap;
 use syntax::diagnostic;
 
diff --git a/src/librustc/util/common.rs b/src/librustc/util/common.rs
index 7bd8c6aadf2..cbf1d0df09f 100644
--- a/src/librustc/util/common.rs
+++ b/src/librustc/util/common.rs
@@ -15,13 +15,13 @@ use syntax::codemap::{span};
 use syntax::visit;
 
 use core::hashmap::HashSet;
-use std;
+use extra;
 
 pub fn time<T>(do_it: bool, what: ~str, thunk: &fn() -> T) -> T {
     if !do_it { return thunk(); }
-    let start = std::time::precise_time_s();
+    let start = extra::time::precise_time_s();
     let rv = thunk();
-    let end = std::time::precise_time_s();
+    let end = extra::time::precise_time_s();
     io::println(fmt!("time: %3.3f s\t%s", end - start, what));
     rv
 }
diff --git a/src/libsyntax/ast.rs b/src/libsyntax/ast.rs
index f82d8d3798a..e5771a5db2e 100644
--- a/src/libsyntax/ast.rs
+++ b/src/libsyntax/ast.rs
@@ -18,12 +18,12 @@ use opt_vec::OptVec;
 use parse::token::get_ident_interner;
 
 use core::cast;
+use core::hashmap::HashMap;
 use core::option::{Option};
-use core::to_bytes;
 use core::to_bytes::IterBytes;
+use core::to_bytes;
 use core::to_str::ToStr;
-use core::hashmap::HashMap;
-use std::serialize::{Encodable, Decodable, Encoder, Decoder};
+use extra::serialize::{Encodable, Decodable, Encoder, Decoder};
 
 
 // an identifier contains an index into the interner
@@ -1117,7 +1117,7 @@ pub enum inlined_item {
 mod test {
     use core::option::{None, Option, Some};
     use core::uint;
-    use std;
+    use extra;
     use codemap::*;
     use super::*;
 
@@ -1206,7 +1206,7 @@ mod test {
             },
             span: bogus_span};
         // doesn't matter which encoder we use....
-        let _f = (@e as @std::serialize::Encodable<std::json::Encoder>);
+        let _f = (@e as @extra::serialize::Encodable<extra::json::Encoder>);
     }
 
 
diff --git a/src/libsyntax/attr.rs b/src/libsyntax/attr.rs
index 4ac4aeed63a..6ac743d3844 100644
--- a/src/libsyntax/attr.rs
+++ b/src/libsyntax/attr.rs
@@ -20,7 +20,7 @@ use diagnostic::span_handler;
 use parse::comments::{doc_comment_style, strip_doc_comment_decoration};
 
 use core::hashmap::HashSet;
-use std;
+use extra;
 
 /* Constructors */
 
@@ -258,7 +258,7 @@ pub fn last_meta_item_list_by_name(items: ~[@ast::meta_item], name: &str)
 pub fn sort_meta_items(items: &[@ast::meta_item]) -> ~[@ast::meta_item] {
     // This is sort of stupid here, converting to a vec of mutables and back
     let mut v = vec::to_owned(items);
-    do std::sort::quick_sort(v) |ma, mb| {
+    do extra::sort::quick_sort(v) |ma, mb| {
         get_meta_item_name(*ma) <= get_meta_item_name(*mb)
     }
 
diff --git a/src/libsyntax/codemap.rs b/src/libsyntax/codemap.rs
index 5f701c4be8b..77a6137cd17 100644
--- a/src/libsyntax/codemap.rs
+++ b/src/libsyntax/codemap.rs
@@ -24,7 +24,7 @@ source code snippets, etc.
 use core::prelude::*;
 
 use core::to_bytes;
-use std::serialize::{Encodable, Decodable, Encoder, Decoder};
+use extra::serialize::{Encodable, Decodable, Encoder, Decoder};
 
 pub trait Pos {
     fn from_uint(n: uint) -> Self;
diff --git a/src/libsyntax/diagnostic.rs b/src/libsyntax/diagnostic.rs
index 528bc546fa3..792b561f110 100644
--- a/src/libsyntax/diagnostic.rs
+++ b/src/libsyntax/diagnostic.rs
@@ -13,7 +13,7 @@ use core::prelude::*;
 use codemap::{Pos, span};
 use codemap;
 
-use std::term;
+use extra::term;
 
 pub type Emitter = @fn(cmsp: Option<(@codemap::CodeMap, span)>,
                        msg: &str,
diff --git a/src/libsyntax/ext/deriving/decodable.rs b/src/libsyntax/ext/deriving/decodable.rs
index f3ea6f28a00..d1f1c4187d5 100644
--- a/src/libsyntax/ext/deriving/decodable.rs
+++ b/src/libsyntax/ext/deriving/decodable.rs
@@ -53,7 +53,7 @@ fn create_derived_decodable_impl(
                 cx.path_global(
                     span,
                     ~[
-                        cx.ident_of("std"),
+                        cx.ident_of("extra"),
                         cx.ident_of("serialize"),
                         cx.ident_of("Decoder"),
                     ]))));
@@ -66,7 +66,7 @@ fn create_derived_decodable_impl(
         span,
         true,
         ~[
-            cx.ident_of("std"),
+            cx.ident_of("extra"),
             cx.ident_of("serialize"),
             cx.ident_of("Decodable")
         ],
@@ -150,7 +150,7 @@ fn call_substructure_decode_method(
             cx.path_global(
                 span,
                 ~[
-                    cx.ident_of("std"),
+                    cx.ident_of("extra"),
                     cx.ident_of("serialize"),
                     cx.ident_of("Decodable"),
                     cx.ident_of("decode"),
diff --git a/src/libsyntax/ext/deriving/encodable.rs b/src/libsyntax/ext/deriving/encodable.rs
index 00f7b7a1ebd..6ca7d0b7b28 100644
--- a/src/libsyntax/ext/deriving/encodable.rs
+++ b/src/libsyntax/ext/deriving/encodable.rs
@@ -22,7 +22,7 @@ For example, a type like:
 
 would generate two implementations like:
 
-impl<S:std::serialize::Encoder> Encodable<S> for Node {
+impl<S:extra::serialize::Encoder> Encodable<S> for Node {
     fn encode(&self, s: &S) {
         do s.emit_struct("Node", 1) {
             s.emit_field("id", 0, || s.emit_uint(self.id))
@@ -115,7 +115,7 @@ fn create_derived_encodable_impl(
                 cx.path_global(
                     span,
                     ~[
-                        cx.ident_of("std"),
+                        cx.ident_of("extra"),
                         cx.ident_of("serialize"),
                         cx.ident_of("Encoder"),
                     ]))));
@@ -128,7 +128,7 @@ fn create_derived_encodable_impl(
         span,
         true,
         ~[
-            cx.ident_of("std"),
+            cx.ident_of("extra"),
             cx.ident_of("serialize"),
             cx.ident_of("Encodable")
         ],
@@ -411,10 +411,10 @@ fn expand_deriving_encodable_enum_method(
 
 #[cfg(test)]
 mod test {
-    extern mod std;
+    extern mod extra;
     use core::option::{None, Some};
-    use std::serialize::Encodable;
-    use std::serialize::Encoder;
+    use extra::serialize::Encodable;
+    use extra::serialize::Encoder;
 
     // just adding the ones I want to test, for now:
     #[deriving(Eq)]
diff --git a/src/libsyntax/ext/deriving/generic.rs b/src/libsyntax/ext/deriving/generic.rs
index 49f7ea59864..e250f970e62 100644
--- a/src/libsyntax/ext/deriving/generic.rs
+++ b/src/libsyntax/ext/deriving/generic.rs
@@ -202,7 +202,7 @@ pub struct TraitDef<'self> {
     /// other than the current trait
     additional_bounds: ~[Ty<'self>],
 
-    /// Any extra lifetimes and/or bounds, e.g. `D: std::serialize::Decoder`
+    /// Any extra lifetimes and/or bounds, e.g. `D: extra::serialize::Decoder`
     generics: LifetimeBounds<'self>,
 
     methods: ~[MethodDef<'self>]
diff --git a/src/libsyntax/ext/deriving/mod.rs b/src/libsyntax/ext/deriving/mod.rs
index e96682676bd..63ef8716149 100644
--- a/src/libsyntax/ext/deriving/mod.rs
+++ b/src/libsyntax/ext/deriving/mod.rs
@@ -13,7 +13,7 @@ The compiler code necessary to implement the #[deriving] extensions.
 
 
 FIXME (#2810)--Hygiene. Search for "__" strings (in other files too).
-We also assume "std" is the standard library, and "core" is the core
+We also assume "extra" is the standard library, and "core" is the core
 library.
 
 */
diff --git a/src/libsyntax/ext/pipes/liveness.rs b/src/libsyntax/ext/pipes/liveness.rs
index 9cdd35aaf32..f1f5a7f12b2 100644
--- a/src/libsyntax/ext/pipes/liveness.rs
+++ b/src/libsyntax/ext/pipes/liveness.rs
@@ -42,7 +42,7 @@ use core::prelude::*;
 use ext::base::ExtCtxt;
 use ext::pipes::proto::{protocol_};
 
-use std::bitv::Bitv;
+use extra::bitv::Bitv;
 
 pub fn analyze(proto: @mut protocol_, _cx: @ExtCtxt) {
     debug!("initializing colive analysis");
diff --git a/src/libsyntax/parse/lexer.rs b/src/libsyntax/parse/lexer.rs
index 86284a3923a..77637712c7f 100644
--- a/src/libsyntax/parse/lexer.rs
+++ b/src/libsyntax/parse/lexer.rs
@@ -20,8 +20,6 @@ use parse::token;
 
 pub use ext::tt::transcribe::{TtReader, new_tt_reader};
 
-//use std;
-
 pub trait reader {
     fn is_eof(@mut self) -> bool;
     fn next_token(@mut self) -> TokenAndSpan;
diff --git a/src/libsyntax/parse/mod.rs b/src/libsyntax/parse/mod.rs
index 8eb7ca2923c..eca999231cd 100644
--- a/src/libsyntax/parse/mod.rs
+++ b/src/libsyntax/parse/mod.rs
@@ -343,8 +343,8 @@ pub fn maybe_aborted<T>(result : T, p: Parser) -> T {
 #[cfg(test)]
 mod test {
     use super::*;
-    use std::serialize::Encodable;
-    use std;
+    use extra::serialize::Encodable;
+    use extra;
     use core::io;
     use core::option::Some;
     use core::option::None;
@@ -365,9 +365,9 @@ mod test {
     }
 
 
-    #[cfg(test)] fn to_json_str<E : Encodable<std::json::Encoder>>(val: @E) -> ~str {
+    #[cfg(test)] fn to_json_str<E : Encodable<extra::json::Encoder>>(val: @E) -> ~str {
         do io::with_str_writer |writer| {
-            let mut encoder = std::json::Encoder(writer);
+            let mut encoder = extra::json::Encoder(writer);
             val.encode(&mut encoder);
         }
     }
diff --git a/src/libsyntax/syntax.rc b/src/libsyntax/syntax.rc
index 1b9b7b2c8c3..8ec281a6bc1 100644
--- a/src/libsyntax/syntax.rc
+++ b/src/libsyntax/syntax.rc
@@ -27,6 +27,10 @@
 #[no_std];
 
 extern mod core(name = "std");
+extern mod extra(name = "extra");
+
+// For deriving(Encodable) purposes...
+#[cfg(stage0)]
 extern mod std(name = "extra");
 
 use core::prelude::*;