diff options
Diffstat (limited to 'src/test/ui/extern/extern-crate-visibility.rs')
-rw-r--r-- | src/test/ui/extern/extern-crate-visibility.rs | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/src/test/ui/extern/extern-crate-visibility.rs b/src/test/ui/extern/extern-crate-visibility.rs new file mode 100644 index 000000000..cda1227cc --- /dev/null +++ b/src/test/ui/extern/extern-crate-visibility.rs @@ -0,0 +1,24 @@ +mod foo { + extern crate core; +} + +// Check that private crates can be used from outside their modules, albeit with warnings +use foo::core::cell; //~ ERROR crate import `core` is private + +fn f() { + foo::core::cell::Cell::new(0); //~ ERROR crate import `core` is private + + use foo::*; + mod core {} // Check that private crates are not glob imported +} + +mod bar { + pub extern crate core; +} + +mod baz { + pub use bar::*; + use self::core::cell; // Check that public extern crates are glob imported +} + +fn main() {} |