about summary refs log tree commit diff
path: root/src/libstd
diff options
context:
space:
mode:
authorGraydon Hoare <graydon@mozilla.com>2012-09-21 18:10:45 -0700
committerGraydon Hoare <graydon@mozilla.com>2012-09-21 18:11:43 -0700
commitdffe188991325b4e803fdd0da7c1563ce0fa27f4 (patch)
treee8f65929b804a38550dc9fdcf24021e6a7920304 /src/libstd
parent60443d48881bfbc7a305e807390e74b327f100b8 (diff)
downloadrust-dffe188991325b4e803fdd0da7c1563ce0fa27f4.tar.gz
rust-dffe188991325b4e803fdd0da7c1563ce0fa27f4.zip
Install new pub/priv/export rules as defaults, old rules accessible under #[legacy_exports];
Diffstat (limited to 'src/libstd')
-rw-r--r--src/libstd/arc.rs1
-rw-r--r--src/libstd/arena.rs2
-rw-r--r--src/libstd/base64.rs1
-rw-r--r--src/libstd/bitv.rs1
-rw-r--r--src/libstd/c_vec.rs1
-rw-r--r--src/libstd/comm.rs1
-rw-r--r--src/libstd/dbg.rs1
-rw-r--r--src/libstd/deque.rs1
-rw-r--r--src/libstd/getopts.rs1
-rw-r--r--src/libstd/json.rs1
-rw-r--r--src/libstd/list.rs1
-rw-r--r--src/libstd/map.rs3
-rw-r--r--src/libstd/net_ip.rs3
-rw-r--r--src/libstd/net_tcp.rs5
-rw-r--r--src/libstd/net_url.rs1
-rw-r--r--src/libstd/rope.rs7
-rw-r--r--src/libstd/sha1.rs1
-rw-r--r--src/libstd/sort.rs3
-rw-r--r--src/libstd/std.rc42
-rw-r--r--src/libstd/sync.rs1
-rw-r--r--src/libstd/test.rs2
-rw-r--r--src/libstd/time.rs2
-rw-r--r--src/libstd/timer.rs1
-rw-r--r--src/libstd/treemap.rs1
-rw-r--r--src/libstd/unicode.rs3
-rw-r--r--src/libstd/uv_global_loop.rs2
-rw-r--r--src/libstd/uv_iotask.rs1
-rw-r--r--src/libstd/uv_ll.rs11
28 files changed, 101 insertions, 0 deletions
diff --git a/src/libstd/arc.rs b/src/libstd/arc.rs
index 5c4e1097fe2..c5b1aafc020 100644
--- a/src/libstd/arc.rs
+++ b/src/libstd/arc.rs
@@ -444,6 +444,7 @@ impl<T: Const Send> &RWReadMode<T> {
 
 #[cfg(test)]
 mod tests {
+    #[legacy_exports];
     use comm::*;
 
     #[test]
diff --git a/src/libstd/arena.rs b/src/libstd/arena.rs
index 10fdec44094..4af647aabf7 100644
--- a/src/libstd/arena.rs
+++ b/src/libstd/arena.rs
@@ -34,10 +34,12 @@ use libc::size_t;
 
 #[abi = "rust-intrinsic"]
 extern mod rusti {
+    #[legacy_exports];
     fn move_val_init<T>(&dst: T, -src: T);
     fn needs_drop<T>() -> bool;
 }
 extern mod rustrt {
+    #[legacy_exports];
     #[rust_stack]
     fn rust_call_tydesc_glue(root: *u8, tydesc: *TypeDesc, field: size_t);
 }
diff --git a/src/libstd/base64.rs b/src/libstd/base64.rs
index 00499895d56..d01aaab6723 100644
--- a/src/libstd/base64.rs
+++ b/src/libstd/base64.rs
@@ -137,6 +137,7 @@ impl ~str: FromBase64 {
 
 #[cfg(test)]
 mod tests {
+    #[legacy_exports];
     #[test]
     fn test_to_base64() {
         assert (~"").to_base64()       == ~"";
diff --git a/src/libstd/bitv.rs b/src/libstd/bitv.rs
index 6aef0464830..21864ec0e7f 100644
--- a/src/libstd/bitv.rs
+++ b/src/libstd/bitv.rs
@@ -563,6 +563,7 @@ impl Bitv: ops::Index<uint,bool> {
 
 #[cfg(test)]
 mod tests {
+    #[legacy_exports];
     #[test]
     fn test_to_str() {
         let zerolen = Bitv(0u, false);
diff --git a/src/libstd/c_vec.rs b/src/libstd/c_vec.rs
index c02fb9d75fc..fde9df858d7 100644
--- a/src/libstd/c_vec.rs
+++ b/src/libstd/c_vec.rs
@@ -138,6 +138,7 @@ unsafe fn ptr<T>(t: CVec<T>) -> *mut T {
 
 #[cfg(test)]
 mod tests {
+    #[legacy_exports];
     use libc::*;
 
     fn malloc(n: size_t) -> CVec<u8> {
diff --git a/src/libstd/comm.rs b/src/libstd/comm.rs
index 8bf0b629f54..e2d4646d670 100644
--- a/src/libstd/comm.rs
+++ b/src/libstd/comm.rs
@@ -66,6 +66,7 @@ fn DuplexStream<T: Send, U: Send>()
 
 #[cfg(test)]
 mod test {
+    #[legacy_exports];
     #[test]
     fn DuplexStream1() {
         let (left, right) = DuplexStream();
diff --git a/src/libstd/dbg.rs b/src/libstd/dbg.rs
index 01136341571..2b9df33b2d4 100644
--- a/src/libstd/dbg.rs
+++ b/src/libstd/dbg.rs
@@ -14,6 +14,7 @@ export breakpoint;
 
 #[abi = "cdecl"]
 extern mod rustrt {
+    #[legacy_exports];
     fn debug_tydesc(td: *sys::TypeDesc);
     fn debug_opaque(td: *sys::TypeDesc, x: *());
     fn debug_box(td: *sys::TypeDesc, x: *());
diff --git a/src/libstd/deque.rs b/src/libstd/deque.rs
index 35b147e1940..9b34f455780 100644
--- a/src/libstd/deque.rs
+++ b/src/libstd/deque.rs
@@ -120,6 +120,7 @@ fn create<T: Copy>() -> Deque<T> {
 
 #[cfg(test)]
 mod tests {
+    #[legacy_exports];
     #[test]
     fn test_simple() {
         let d: deque::Deque<int> = deque::create::<int>();
diff --git a/src/libstd/getopts.rs b/src/libstd/getopts.rs
index 4a071dea879..6f827be2b8a 100644
--- a/src/libstd/getopts.rs
+++ b/src/libstd/getopts.rs
@@ -496,6 +496,7 @@ impl FailType : Eq {
 
 #[cfg(test)]
 mod tests {
+    #[legacy_exports];
     use opt = getopts;
     use result::{Err, Ok};
 
diff --git a/src/libstd/json.rs b/src/libstd/json.rs
index 79fee39a702..4d458db482b 100644
--- a/src/libstd/json.rs
+++ b/src/libstd/json.rs
@@ -858,6 +858,7 @@ impl Error: to_str::ToStr {
 
 #[cfg(test)]
 mod tests {
+    #[legacy_exports];
     fn mk_dict(items: &[(~str, Json)]) -> Json {
         let d = map::HashMap();
 
diff --git a/src/libstd/list.rs b/src/libstd/list.rs
index a9c5e1b0e77..26cc7764e7a 100644
--- a/src/libstd/list.rs
+++ b/src/libstd/list.rs
@@ -192,6 +192,7 @@ impl<T:Eq> List<T> : Eq {
 
 #[cfg(test)]
 mod tests {
+    #[legacy_exports];
 
     #[test]
     fn test_is_empty() {
diff --git a/src/libstd/map.rs b/src/libstd/map.rs
index 3fab62261fc..5373c1d336f 100644
--- a/src/libstd/map.rs
+++ b/src/libstd/map.rs
@@ -83,6 +83,7 @@ trait Map<K:Eq IterBytes Hash Copy, V: Copy> {
 }
 
 mod util {
+    #[legacy_exports];
     type Rational = {num: int, den: int}; // : int::positive(*.den);
 
     pure fn rational_leq(x: Rational, y: Rational) -> bool {
@@ -96,6 +97,7 @@ mod util {
 // FIXME (#2344): package this up and export it as a datatype usable for
 // external code that doesn't want to pay the cost of a box.
 mod chained {
+    #[legacy_exports];
     export T, mk, HashMap;
 
     const initial_capacity: uint = 32u; // 2^5
@@ -518,6 +520,7 @@ impl<K: Eq IterBytes Hash Copy, V: Copy> @Mut<LinearMap<K, V>>:
 
 #[cfg(test)]
 mod tests {
+    #[legacy_exports];
 
     #[test]
     fn test_simple() {
diff --git a/src/libstd/net_ip.rs b/src/libstd/net_ip.rs
index c840d320375..c52255d60ca 100644
--- a/src/libstd/net_ip.rs
+++ b/src/libstd/net_ip.rs
@@ -118,6 +118,7 @@ fn get_addr(node: &str, iotask: iotask)
 }
 
 mod v4 {
+    #[legacy_exports];
     /**
      * Convert a str to `ip_addr`
      *
@@ -204,6 +205,7 @@ mod v4 {
     }
 }
 mod v6 {
+    #[legacy_exports];
     /**
      * Convert a str to `ip_addr`
      *
@@ -310,6 +312,7 @@ extern fn get_addr_cb(handle: *uv_getaddrinfo_t, status: libc::c_int,
 
 #[cfg(test)]
 mod test {
+    #[legacy_exports];
     #[test]
     fn test_ip_ipv4_parse_and_format_ip() {
         let localhost_str = ~"127.0.0.1";
diff --git a/src/libstd/net_tcp.rs b/src/libstd/net_tcp.rs
index 8e72e92be99..a0a209eae52 100644
--- a/src/libstd/net_tcp.rs
+++ b/src/libstd/net_tcp.rs
@@ -26,6 +26,7 @@ export connect;
 
 #[nolink]
 extern mod rustrt {
+    #[legacy_exports];
     fn rust_uv_current_kernel_malloc(size: libc::c_uint) -> *libc::c_void;
     fn rust_uv_current_kernel_free(mem: *libc::c_void);
     fn rust_uv_helper_uv_tcp_t_size() -> libc::c_uint;
@@ -1222,13 +1223,16 @@ type TcpBufferedSocketData = {
 
 //#[cfg(test)]
 mod test {
+    #[legacy_exports];
     // FIXME don't run on fbsd or linux 32 bit (#2064)
     #[cfg(target_os="win32")]
     #[cfg(target_os="darwin")]
     #[cfg(target_os="linux")]
     mod tcp_ipv4_server_and_client_test {
+        #[legacy_exports];
         #[cfg(target_arch="x86_64")]
         mod impl64 {
+            #[legacy_exports];
             #[test]
             fn test_gl_tcp_server_and_client_ipv4() unsafe {
                 impl_gl_tcp_ipv4_server_and_client();
@@ -1253,6 +1257,7 @@ mod test {
         }
         #[cfg(target_arch="x86")]
         mod impl32 {
+            #[legacy_exports];
             #[test]
             #[ignore(cfg(target_os = "linux"))]
             fn test_gl_tcp_server_and_client_ipv4() unsafe {
diff --git a/src/libstd/net_url.rs b/src/libstd/net_url.rs
index b56d8471fbf..22fe049d03b 100644
--- a/src/libstd/net_url.rs
+++ b/src/libstd/net_url.rs
@@ -786,6 +786,7 @@ impl Url: IterBytes {
 
 #[cfg(test)]
 mod tests {
+    #[legacy_exports];
     #[test]
     fn test_split_char_first() {
         let (u,v) = split_char_first(~"hello, sweet world", ',');
diff --git a/src/libstd/rope.rs b/src/libstd/rope.rs
index 30698b8db67..d26d0a484b2 100644
--- a/src/libstd/rope.rs
+++ b/src/libstd/rope.rs
@@ -431,7 +431,9 @@ fn loop_leaves(rope: Rope, it: fn(node::Leaf) -> bool) -> bool{
 }
 
 mod iterator {
+    #[legacy_exports];
     mod leaf {
+        #[legacy_exports];
         fn start(rope: Rope) -> node::leaf_iterator::T {
             match (rope) {
               node::Empty      => return node::leaf_iterator::empty(),
@@ -443,6 +445,7 @@ mod iterator {
         }
     }
     mod char {
+        #[legacy_exports];
         fn start(rope: Rope) -> node::char_iterator::T {
             match (rope) {
               node::Empty      => return node::char_iterator::empty(),
@@ -535,6 +538,7 @@ fn char_at(rope: Rope, pos: uint) -> char {
  Section: Implementation
 */
 mod node {
+    #[legacy_exports];
 
     /// Implementation of type `rope`
     enum Root {
@@ -1105,6 +1109,7 @@ mod node {
     }
 
     mod leaf_iterator {
+        #[legacy_exports];
         type T = {
             stack:            ~[mut @Node],
             mut stackpos: int
@@ -1142,6 +1147,7 @@ mod node {
     }
 
     mod char_iterator {
+        #[legacy_exports];
         type T = {
             leaf_iterator: leaf_iterator::T,
             mut leaf:  Option<Leaf>,
@@ -1219,6 +1225,7 @@ mod node {
 
 #[cfg(test)]
 mod tests {
+    #[legacy_exports];
 
     //Utility function, used for sanity check
     fn rope_to_string(r: Rope) -> ~str {
diff --git a/src/libstd/sha1.rs b/src/libstd/sha1.rs
index c16e29f2770..40c9589a651 100644
--- a/src/libstd/sha1.rs
+++ b/src/libstd/sha1.rs
@@ -262,6 +262,7 @@ fn sha1() -> Sha1 {
 
 #[cfg(test)]
 mod tests {
+    #[legacy_exports];
 
     #[test]
     fn test() unsafe {
diff --git a/src/libstd/sort.rs b/src/libstd/sort.rs
index c32f7413a92..afef3c5e5f9 100644
--- a/src/libstd/sort.rs
+++ b/src/libstd/sort.rs
@@ -171,6 +171,7 @@ impl<T: Copy Ord Eq> &[mut T] : Sort {
 
 #[cfg(test)]
 mod test_qsort3 {
+    #[legacy_exports];
     fn check_sort(v1: &[mut int], v2: &[mut int]) {
         let len = vec::len::<int>(v1);
         quick_sort3::<int>(v1);
@@ -210,6 +211,7 @@ mod test_qsort3 {
 
 #[cfg(test)]
 mod test_qsort {
+    #[legacy_exports];
     fn check_sort(v1: &[mut int], v2: &[mut int]) {
         let len = vec::len::<int>(v1);
         pure fn leual(a: &int, b: &int) -> bool { *a <= *b }
@@ -269,6 +271,7 @@ mod test_qsort {
 
 #[cfg(test)]
 mod tests {
+    #[legacy_exports];
 
     fn check_sort(v1: &[int], v2: &[int]) {
         let len = vec::len::<int>(v1);
diff --git a/src/libstd/std.rc b/src/libstd/std.rc
index d089791bdc3..422ff81b9fe 100644
--- a/src/libstd/std.rc
+++ b/src/libstd/std.rc
@@ -19,6 +19,7 @@ not required in or otherwise suitable for the core library.
 #[no_core];
 
 #[legacy_modes];
+#[legacy_exports];
 
 #[allow(vecs_implicitly_copyable)];
 #[deny(non_camel_case_types)];
@@ -41,66 +42,107 @@ export cell;
 
 // General io and system-services modules
 
+#[legacy_exports]
 mod net;
+#[legacy_exports]
 mod net_ip;
+#[legacy_exports]
 mod net_tcp;
+#[legacy_exports]
 mod net_url;
 
 // libuv modules
+#[legacy_exports]
 mod uv;
+#[legacy_exports]
 mod uv_ll;
+#[legacy_exports]
 mod uv_iotask;
+#[legacy_exports]
 mod uv_global_loop;
 
 
 // Utility modules
 
+#[legacy_exports]
 mod c_vec;
+#[legacy_exports]
 mod timer;
+#[legacy_exports]
 mod cell;
 
 // Concurrency
 
+#[legacy_exports]
 mod sync;
+#[legacy_exports]
 mod arc;
+#[legacy_exports]
 mod comm;
 
 // Collections
 
+#[legacy_exports]
 mod bitv;
+#[legacy_exports]
 mod deque;
+#[legacy_exports]
 mod fun_treemap;
+#[legacy_exports]
 mod list;
+#[legacy_exports]
 mod map;
+#[legacy_exports]
 mod rope;
+#[legacy_exports]
 mod smallintmap;
+#[legacy_exports]
 mod sort;
+#[legacy_exports]
 mod treemap;
+#[legacy_exports]
 
 // And ... other stuff
 
+#[legacy_exports]
 mod ebml;
+#[legacy_exports]
 mod dbg;
+#[legacy_exports]
 mod getopts;
+#[legacy_exports]
 mod json;
+#[legacy_exports]
 mod sha1;
+#[legacy_exports]
 mod md4;
+#[legacy_exports]
 mod tempfile;
+#[legacy_exports]
 mod term;
+#[legacy_exports]
 mod time;
+#[legacy_exports]
 mod prettyprint;
+#[legacy_exports]
 mod arena;
+#[legacy_exports]
 mod par;
+#[legacy_exports]
 mod cmp;
+#[legacy_exports]
 mod base64;
 
 #[cfg(unicode)]
+#[legacy_exports]
 mod unicode;
 
 
 // Compiler support modules
 
+#[legacy_exports]
 mod test;
+#[legacy_exports]
 mod serialization;
 
 // Local Variables:
diff --git a/src/libstd/sync.rs b/src/libstd/sync.rs
index f5528f7a79c..b2e9def6d73 100644
--- a/src/libstd/sync.rs
+++ b/src/libstd/sync.rs
@@ -670,6 +670,7 @@ impl &RWlockReadMode {
 
 #[cfg(test)]
 mod tests {
+    #[legacy_exports];
     /************************************************************************
      * Semaphore tests
      ************************************************************************/
diff --git a/src/libstd/test.rs b/src/libstd/test.rs
index 29d97a8918d..d01991bfec1 100644
--- a/src/libstd/test.rs
+++ b/src/libstd/test.rs
@@ -29,6 +29,7 @@ export run_tests_console;
 
 #[abi = "cdecl"]
 extern mod rustrt {
+    #[legacy_exports];
     fn rust_sched_threads() -> libc::size_t;
 }
 
@@ -428,6 +429,7 @@ fn calc_result(test: &TestDesc, task_succeeded: bool) -> TestResult {
 
 #[cfg(test)]
 mod tests {
+    #[legacy_exports];
 
     #[test]
     fn do_not_run_ignored_tests() {
diff --git a/src/libstd/time.rs b/src/libstd/time.rs
index f984f1b733f..3dca5540b82 100644
--- a/src/libstd/time.rs
+++ b/src/libstd/time.rs
@@ -22,6 +22,7 @@ export
 
 #[abi = "cdecl"]
 extern mod rustrt {
+    #[legacy_exports];
     fn get_time(&sec: i64, &nsec: i32);
     fn precise_time_ns(&ns: u64);
 
@@ -884,6 +885,7 @@ impl Tm {
 
 #[cfg(test)]
 mod tests {
+    #[legacy_exports];
 
     #[test]
     fn test_get_time() {
diff --git a/src/libstd/timer.rs b/src/libstd/timer.rs
index eca9a1fc8a8..1476d6bdf31 100644
--- a/src/libstd/timer.rs
+++ b/src/libstd/timer.rs
@@ -147,6 +147,7 @@ extern fn delayed_send_close_cb(handle: *uv::ll::uv_timer_t) unsafe {
 
 #[cfg(test)]
 mod test {
+    #[legacy_exports];
     #[test]
     fn test_gl_timer_simple_sleep_test() {
         let hl_loop = uv::global_loop::get();
diff --git a/src/libstd/treemap.rs b/src/libstd/treemap.rs
index a43821a0d37..598a680f706 100644
--- a/src/libstd/treemap.rs
+++ b/src/libstd/treemap.rs
@@ -87,6 +87,7 @@ fn traverse<K, V: Copy>(m: &const TreeEdge<K, V>, f: fn(K, V)) {
 
 #[cfg(test)]
 mod tests {
+    #[legacy_exports];
 
     #[test]
     fn init_treemap() { let _m = TreeMap::<int, int>(); }
diff --git a/src/libstd/unicode.rs b/src/libstd/unicode.rs
index 9136ad2708f..e76b8529730 100644
--- a/src/libstd/unicode.rs
+++ b/src/libstd/unicode.rs
@@ -2,6 +2,7 @@
 #[forbid(deprecated_pattern)];
 
 mod icu {
+    #[legacy_exports];
     type UBool = u8;
     type UProperty = int;
     type UChar32 = char;
@@ -151,6 +152,7 @@ mod icu {
     #[link_name = "icuuc"]
     #[abi = "cdecl"]
     extern mod libicu {
+        #[legacy_exports];
         pure fn u_hasBinaryProperty(c: UChar32, which: UProperty) -> UBool;
         pure fn u_isdigit(c: UChar32) -> UBool;
         pure fn u_islower(c: UChar32) -> UBool;
@@ -209,6 +211,7 @@ pure fn is_upper(c: char) -> bool {
 
 #[cfg(test)]
 mod tests {
+    #[legacy_exports];
 
     #[test]
     fn test_is_digit() {
diff --git a/src/libstd/uv_global_loop.rs b/src/libstd/uv_global_loop.rs
index 336d485cd01..cde88db031e 100644
--- a/src/libstd/uv_global_loop.rs
+++ b/src/libstd/uv_global_loop.rs
@@ -16,6 +16,7 @@ use task::TaskBuilder;
 use either::{Left, Right};
 
 extern mod rustrt {
+    #[legacy_exports];
     fn rust_uv_get_kernel_global_chan_ptr() -> *libc::uintptr_t;
 }
 
@@ -112,6 +113,7 @@ fn spawn_loop() -> IoTask {
 
 #[cfg(test)]
 mod test {
+    #[legacy_exports];
     extern fn simple_timer_close_cb(timer_ptr: *ll::uv_timer_t) unsafe {
         let exit_ch_ptr = ll::get_data_for_uv_handle(
             timer_ptr as *libc::c_void) as *comm::Chan<bool>;
diff --git a/src/libstd/uv_iotask.rs b/src/libstd/uv_iotask.rs
index adc3f89ec6e..2e008830558 100644
--- a/src/libstd/uv_iotask.rs
+++ b/src/libstd/uv_iotask.rs
@@ -171,6 +171,7 @@ extern fn tear_down_close_cb(handle: *ll::uv_async_t) unsafe {
 
 #[cfg(test)]
 mod test {
+    #[legacy_exports];
     extern fn async_close_cb(handle: *ll::uv_async_t) unsafe {
         log(debug, fmt!("async_close_cb handle %?", handle));
         let exit_ch = (*(ll::get_data_for_uv_handle(handle)
diff --git a/src/libstd/uv_ll.rs b/src/libstd/uv_ll.rs
index 09cded54977..6d212cd7e92 100644
--- a/src/libstd/uv_ll.rs
+++ b/src/libstd/uv_ll.rs
@@ -247,6 +247,7 @@ type sockaddr_in6 = {
 type addr_in = addr_in_impl::addr_in;
 #[cfg(unix)]
 mod addr_in_impl {
+    #[legacy_exports];
     #[cfg(target_arch="x86_64")]
     type addr_in = {
         a0: *u8, a1: *u8,
@@ -262,6 +263,7 @@ mod addr_in_impl {
 }
 #[cfg(windows)]
 mod addr_in_impl {
+    #[legacy_exports];
     type addr_in = {
         a0: *u8, a1: *u8,
         a2: *u8, a3: *u8
@@ -272,6 +274,7 @@ mod addr_in_impl {
 type addrinfo = addrinfo_impl::addrinfo;
 #[cfg(target_os="linux")]
 mod addrinfo_impl {
+    #[legacy_exports];
     #[cfg(target_arch="x86_64")]
     type addrinfo = {
         a00: *u8, a01: *u8, a02: *u8, a03: *u8,
@@ -286,6 +289,7 @@ mod addrinfo_impl {
 #[cfg(target_os="macos")]
 #[cfg(target_os="freebsd")]
 mod addrinfo_impl {
+    #[legacy_exports];
     type addrinfo = {
         a00: *u8, a01: *u8, a02: *u8, a03: *u8,
         a04: *u8, a05: *u8
@@ -293,6 +297,7 @@ mod addrinfo_impl {
 }
 #[cfg(windows)]
 mod addrinfo_impl {
+    #[legacy_exports];
     type addrinfo = {
         a00: *u8, a01: *u8, a02: *u8, a03: *u8,
         a04: *u8, a05: *u8
@@ -306,6 +311,7 @@ type uv_getaddrinfo_t = {
 };
 
 mod uv_ll_struct_stubgen {
+    #[legacy_exports];
     fn gen_stub_uv_tcp_t() -> uv_tcp_t {
         return gen_stub_os();
         #[cfg(target_os = "linux")]
@@ -561,6 +567,7 @@ mod uv_ll_struct_stubgen {
 
 #[nolink]
 extern mod rustrt {
+    #[legacy_exports];
     // libuv public API
     fn rust_uv_loop_new() -> *libc::c_void;
     fn rust_uv_loop_delete(lp: *libc::c_void);
@@ -1002,6 +1009,7 @@ unsafe fn addrinfo_as_sockaddr_in6(input: *addrinfo) -> *sockaddr_in6 {
 
 #[cfg(test)]
 mod test {
+    #[legacy_exports];
     enum tcp_read_data {
         tcp_read_eof,
         tcp_read_more(~[u8]),
@@ -1503,8 +1511,10 @@ mod test {
     #[cfg(target_os="darwin")]
     #[cfg(target_os="linux")]
     mod tcp_and_server_client_test {
+        #[legacy_exports];
         #[cfg(target_arch="x86_64")]
         mod impl64 {
+            #[legacy_exports];
             #[test]
             fn test_uv_ll_tcp_server_and_request() unsafe {
                 impl_uv_tcp_server_and_request();
@@ -1512,6 +1522,7 @@ mod test {
         }
         #[cfg(target_arch="x86")]
         mod impl32 {
+            #[legacy_exports];
             #[test]
             #[ignore(cfg(target_os = "linux"))]
             fn test_uv_ll_tcp_server_and_request() unsafe {