warning: unreachable `pub` item
  --> $DIR/unreachable_pub.rs:8:13
   |
LL |     pub use std::fmt;
   |     ---     ^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`
   |
   = help: or consider exporting it for use by other crates
note: the lint level is defined here
  --> $DIR/unreachable_pub.rs:4:9
   |
LL | #![warn(unreachable_pub)]
   |         ^^^^^^^^^^^^^^^

warning: unreachable `pub` item
  --> $DIR/unreachable_pub.rs:9:24
   |
LL |     pub use std::env::{Args}; // braced-use has different item spans than unbraced
   |     ---                ^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`
   |
   = help: or consider exporting it for use by other crates

warning: unreachable `pub` item
  --> $DIR/unreachable_pub.rs:13:5
   |
LL |     pub struct Hydrogen {
   |     ---^^^^^^^^^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`
   |
   = help: or consider exporting it for use by other crates

warning: unreachable `pub` item
  --> $DIR/unreachable_pub.rs:24:9
   |
LL |         pub fn count_neutrons(&self) -> usize { self.neutrons }
   |         ---^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   |         |
   |         help: consider restricting its visibility: `pub(crate)`

warning: unreachable `pub` item
  --> $DIR/unreachable_pub.rs:33:5
   |
LL |     pub enum Helium {}
   |     ---^^^^^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`
   |
   = help: or consider exporting it for use by other crates

warning: unreachable `pub` item
  --> $DIR/unreachable_pub.rs:34:5
   |
LL |     pub union Lithium { c1: usize, c2: u8 }
   |     ---^^^^^^^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`
   |
   = help: or consider exporting it for use by other crates

warning: unreachable `pub` item
  --> $DIR/unreachable_pub.rs:35:5
   |
LL |     pub fn beryllium() {}
   |     ---^^^^^^^^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`
   |
   = help: or consider exporting it for use by other crates

warning: unreachable `pub` item
  --> $DIR/unreachable_pub.rs:36:5
   |
LL |     pub trait Boron {}
   |     ---^^^^^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`
   |
   = help: or consider exporting it for use by other crates

warning: unreachable `pub` item
  --> $DIR/unreachable_pub.rs:37:5
   |
LL |     pub const CARBON: usize = 1;
   |     ---^^^^^^^^^^^^^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`
   |
   = help: or consider exporting it for use by other crates

warning: unreachable `pub` item
  --> $DIR/unreachable_pub.rs:38:5
   |
LL |     pub static NITROGEN: usize = 2;
   |     ---^^^^^^^^^^^^^^^^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`
   |
   = help: or consider exporting it for use by other crates

warning: unreachable `pub` item
  --> $DIR/unreachable_pub.rs:39:5
   |
LL |     pub type Oxygen = bool;
   |     ---^^^^^^^^^^^^
   |     |
   |     help: consider restricting its visibility: `pub(crate)`
   |
   = help: or consider exporting it for use by other crates

warning: unreachable `pub` item
  --> $DIR/unreachable_pub.rs:42:47
   |
LL |         ($visibility: vis, $name: ident) => { $visibility struct $name {} }
   |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^
...
LL |     define_empty_struct_with_visibility!(pub, Fluorine);
   |     ---------------------------------------------------
   |     |                                    |
   |     |                                    help: consider restricting its visibility: `pub(crate)`
   |     in this macro invocation
   |
   = help: or consider exporting it for use by other crates
   = note: this warning originates in the macro `define_empty_struct_with_visibility` (in Nightly builds, run with -Z macro-backtrace for more info)

warning: unreachable `pub` item
  --> $DIR/unreachable_pub.rs:48:9
   |
LL |         pub fn catalyze() -> bool;
   |         ---^^^^^^^^^^^^^^^^^^^^^^^
   |         |
   |         help: consider restricting its visibility: `pub(crate)`
   |
   = help: or consider exporting it for use by other crates

warning: 13 warnings emitted

