summaryrefslogtreecommitdiffstats
path: root/src/test/ui/lint/unreachable_pub.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/lint/unreachable_pub.rs')
-rw-r--r--src/test/ui/lint/unreachable_pub.rs66
1 files changed, 0 insertions, 66 deletions
diff --git a/src/test/ui/lint/unreachable_pub.rs b/src/test/ui/lint/unreachable_pub.rs
deleted file mode 100644
index a50467ce8..000000000
--- a/src/test/ui/lint/unreachable_pub.rs
+++ /dev/null
@@ -1,66 +0,0 @@
-// check-pass
-
-#![allow(unused)]
-#![warn(unreachable_pub)]
-
-mod private_mod {
- // non-leaked `pub` items in private module should be linted
- pub use std::fmt; //~ WARNING unreachable_pub
- pub use std::env::{Args}; // braced-use has different item spans than unbraced
- //~^ WARNING unreachable_pub
-
- pub struct Hydrogen { //~ WARNING unreachable_pub
- // `pub` struct fields, too
- pub neutrons: usize, //~ WARNING unreachable_pub
- // (... but not more-restricted fields)
- pub(crate) electrons: usize
- }
- impl Hydrogen {
- // impls, too
- pub fn count_neutrons(&self) -> usize { self.neutrons } //~ WARNING unreachable_pub
- pub(crate) fn count_electrons(&self) -> usize { self.electrons }
- }
- impl Clone for Hydrogen {
- fn clone(&self) -> Hydrogen {
- Hydrogen { neutrons: self.neutrons, electrons: self.electrons }
- }
- }
-
- pub enum Helium {} //~ WARNING unreachable_pub
- pub union Lithium { c1: usize, c2: u8 } //~ WARNING unreachable_pub
- pub fn beryllium() {} //~ WARNING unreachable_pub
- pub trait Boron {} //~ WARNING unreachable_pub
- pub const CARBON: usize = 1; //~ WARNING unreachable_pub
- pub static NITROGEN: usize = 2; //~ WARNING unreachable_pub
- pub type Oxygen = bool; //~ WARNING unreachable_pub
-
- macro_rules! define_empty_struct_with_visibility {
- ($visibility: vis, $name: ident) => { $visibility struct $name {} }
- //~^ WARNING unreachable_pub
- }
- define_empty_struct_with_visibility!(pub, Fluorine);
-
- extern "C" {
- pub fn catalyze() -> bool; //~ WARNING unreachable_pub
- }
-
- // items leaked through signatures (see `get_neon` below) are OK
- pub struct Neon {}
-
- // crate-visible items are OK
- pub(crate) struct Sodium {}
-}
-
-pub mod public_mod {
- // module is public: these are OK, too
- pub struct Magnesium {}
- pub(crate) struct Aluminum {}
-}
-
-pub fn get_neon() -> private_mod::Neon {
- private_mod::Neon {}
-}
-
-fn main() {
- let _ = get_neon();
-}