From 83e19d2eada77ded543cd6edf5a4b6351a79a0f9 Mon Sep 17 00:00:00 2001 From: "Felix S. Klock II" Date: Wed, 4 Sep 2013 04:39:14 +0200 Subject: [PATCH 1/3] Added explicit pub to several conditions. Enables completion of #6009. --- src/librustpkg/conditions.rs | 16 ++++++++-------- src/librustpkg/package_source.rs | 1 + src/libstd/c_str.rs | 6 +++--- src/libstd/rt/io/mod.rs | 8 +++----- src/libstd/str.rs | 2 +- 5 files changed, 16 insertions(+), 17 deletions(-) diff --git a/src/librustpkg/conditions.rs b/src/librustpkg/conditions.rs index 16ee9c1afb4..4cb103deba7 100644 --- a/src/librustpkg/conditions.rs +++ b/src/librustpkg/conditions.rs @@ -14,33 +14,33 @@ pub use std::path::Path; pub use package_id::PkgId; condition! { - bad_path: (Path, ~str) -> Path; + pub bad_path: (Path, ~str) -> Path; } condition! { - nonexistent_package: (PkgId, ~str) -> Path; + pub nonexistent_package: (PkgId, ~str) -> Path; } condition! { - copy_failed: (Path, Path) -> (); + pub copy_failed: (Path, Path) -> (); } condition! { - missing_pkg_files: (PkgId) -> (); + pub missing_pkg_files: (PkgId) -> (); } condition! { - bad_pkg_id: (Path, ~str) -> PkgId; + pub bad_pkg_id: (Path, ~str) -> PkgId; } condition! { - no_rust_path: (~str) -> Path; + pub no_rust_path: (~str) -> Path; } condition! { - not_a_workspace: (~str) -> Path; + pub not_a_workspace: (~str) -> Path; } condition! { - failed_to_create_temp_dir: (~str) -> Path; + pub failed_to_create_temp_dir: (~str) -> Path; } diff --git a/src/librustpkg/package_source.rs b/src/librustpkg/package_source.rs index ae2083f1b22..8f2d8877cf9 100644 --- a/src/librustpkg/package_source.rs +++ b/src/librustpkg/package_source.rs @@ -34,6 +34,7 @@ pub struct PkgSrc { } condition! { + // #6009: should this be pub or not, when #8215 is fixed? build_err: (~str) -> (); } diff --git a/src/libstd/c_str.rs b/src/libstd/c_str.rs index 8e7129578ee..6f12e219c3c 100644 --- a/src/libstd/c_str.rs +++ b/src/libstd/c_str.rs @@ -28,10 +28,10 @@ pub enum NullByteResolution { } condition! { - // this should be &[u8] but there's a lifetime issue + // This should be &[u8] but there's a lifetime issue (#5370). // NOTE: this super::NullByteResolution should be NullByteResolution - // Change this next time the snapshot it updated. - null_byte: (~[u8]) -> super::NullByteResolution; + // Change this next time the snapshot is updated. + pub null_byte: (~[u8]) -> super::NullByteResolution; } /// The representation of a C String. diff --git a/src/libstd/rt/io/mod.rs b/src/libstd/rt/io/mod.rs index 75af7ff8444..3b979cc2266 100644 --- a/src/libstd/rt/io/mod.rs +++ b/src/libstd/rt/io/mod.rs @@ -384,19 +384,17 @@ impl ToStr for IoErrorKind { // XXX: Can't put doc comments on macros // Raised by `I/O` operations on error. condition! { - // FIXME (#6009): uncomment `pub` after expansion support lands. // NOTE: this super::IoError should be IoError - // Change this next time the snapshot it updated. - /*pub*/ io_error: super::IoError -> (); + // Change this next time the snapshot is updated. + pub io_error: super::IoError -> (); } // XXX: Can't put doc comments on macros // Raised by `read` on error condition! { - // FIXME (#6009): uncomment `pub` after expansion support lands. // NOTE: this super::IoError should be IoError // Change this next time the snapshot it updated. - /*pub*/ read_error: super::IoError -> (); + pub read_error: super::IoError -> (); } pub trait Reader { diff --git a/src/libstd/str.rs b/src/libstd/str.rs index e4d1b324e73..471ac409cbb 100644 --- a/src/libstd/str.rs +++ b/src/libstd/str.rs @@ -42,7 +42,7 @@ Section: Conditions */ condition! { - not_utf8: (~str) -> ~str; + pub not_utf8: (~str) -> ~str; } /* From 6fbb64acbe0b833ac44e80b9bf2f0d6c779c5ec1 Mon Sep 17 00:00:00 2001 From: "Felix S. Klock II" Date: Wed, 4 Sep 2013 04:39:57 +0200 Subject: [PATCH 2/3] Make non-pub condition! expand to non-pub mod. Fix #6009. --- src/libsyntax/ext/expand.rs | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/libsyntax/ext/expand.rs b/src/libsyntax/ext/expand.rs index 202d75db399..7e48fe4d419 100644 --- a/src/libsyntax/ext/expand.rs +++ b/src/libsyntax/ext/expand.rs @@ -909,8 +909,7 @@ pub fn std_macros() -> @str { { $c:ident: $input:ty -> $out:ty; } => { - // FIXME (#6009): remove mod's `pub` below once variant above lands. - pub mod $c { + mod $c { #[allow(unused_imports)]; #[allow(non_uppercase_statics)]; From c326ff0c2839862e8307fcbfec84afd288168051 Mon Sep 17 00:00:00 2001 From: "Felix S. Klock II" Date: Wed, 4 Sep 2013 18:07:56 +0200 Subject: [PATCH 3/3] Another followup on #6009. Odd that my earlier make checks did not catch this. --- src/libstd/condition.rs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/libstd/condition.rs b/src/libstd/condition.rs index 4d8857c9d1b..9cd2ad79d18 100644 --- a/src/libstd/condition.rs +++ b/src/libstd/condition.rs @@ -193,7 +193,8 @@ mod test { // Issue #6009 mod m { condition! { - sadness: int -> int; + // #6009, #8215: should this truly need a `pub` for access from n? + pub sadness: int -> int; } mod n {