error[E0423]: expected value, found enum `n::Z`
  --> $DIR/privacy-enum-ctor.rs:23:9
   |
LL |         n::Z;
   |         ^^^^
   |
note: the enum is defined here
  --> $DIR/privacy-enum-ctor.rs:11:9
   |
LL | /         pub(in m) enum Z {
LL | |             Fn(u8),
LL | |             Struct {
LL | |                 s: u8,
LL | |             },
LL | |             Unit,
LL | |         }
   | |_________^
help: you might have meant to use the following enum variant
   |
LL |         m::Z::Unit;
   |         ~~~~~~~~~~
help: alternatively, the following enum variant is available
   |
LL |         (m::Z::Fn(/* fields */));
   |         ~~~~~~~~~~~~~~~~~~~~~~~~

error[E0423]: expected value, found enum `Z`
  --> $DIR/privacy-enum-ctor.rs:25:9
   |
LL |         Z;
   |         ^
   |
note: the enum is defined here
  --> $DIR/privacy-enum-ctor.rs:11:9
   |
LL | /         pub(in m) enum Z {
LL | |             Fn(u8),
LL | |             Struct {
LL | |                 s: u8,
LL | |             },
LL | |             Unit,
LL | |         }
   | |_________^
help: you might have meant to use the following enum variant
   |
LL |         m::Z::Unit;
   |         ~~~~~~~~~~
help: alternatively, the following enum variant is available
   |
LL |         (m::Z::Fn(/* fields */));
   |         ~~~~~~~~~~~~~~~~~~~~~~~~

error[E0423]: expected value, found enum `m::E`
  --> $DIR/privacy-enum-ctor.rs:41:16
   |
LL |     fn f() {
   |     ------ similarly named function `f` defined here
...
LL |     let _: E = m::E;
   |                ^^^^
   |
note: the enum is defined here
  --> $DIR/privacy-enum-ctor.rs:2:5
   |
LL | /     pub enum E {
LL | |         Fn(u8),
LL | |         Struct {
LL | |             s: u8,
LL | |         },
LL | |         Unit,
LL | |     }
   | |_____^
help: you might have meant to use the following enum variant
   |
LL |     let _: E = E::Unit;
   |                ~~~~~~~
help: alternatively, the following enum variant is available
   |
LL |     let _: E = (E::Fn(/* fields */));
   |                ~~~~~~~~~~~~~~~~~~~~~
help: a function with a similar name exists
   |
LL |     let _: E = m::f;
   |                   ~
help: consider importing one of these items instead
   |
LL + use std::f32::consts::E;
   |
LL + use std::f64::consts::E;
   |
help: if you import `E`, refer to it directly
   |
LL -     let _: E = m::E;
LL +     let _: E = E;
   |

error[E0423]: expected value, found enum `E`
  --> $DIR/privacy-enum-ctor.rs:49:16
   |
LL |     let _: E = E;
   |                ^
   |
note: the enum is defined here
  --> $DIR/privacy-enum-ctor.rs:2:5
   |
LL | /     pub enum E {
LL | |         Fn(u8),
LL | |         Struct {
LL | |             s: u8,
LL | |         },
LL | |         Unit,
LL | |     }
   | |_____^
help: you might have meant to use the following enum variant
   |
LL |     let _: E = E::Unit;
   |                ~~~~~~~
help: alternatively, the following enum variant is available
   |
LL |     let _: E = (E::Fn(/* fields */));
   |                ~~~~~~~~~~~~~~~~~~~~~
help: consider importing one of these items instead
   |
LL + use std::f32::consts::E;
   |
LL + use std::f64::consts::E;
   |

error[E0412]: cannot find type `Z` in this scope
  --> $DIR/privacy-enum-ctor.rs:57:12
   |
LL |     pub enum E {
   |     ---------- similarly named enum `E` defined here
...
LL |     let _: Z = m::n::Z;
   |            ^ help: an enum with a similar name exists: `E`
   |
note: enum `m::Z` exists but is inaccessible
  --> $DIR/privacy-enum-ctor.rs:11:9
   |
LL |         pub(in m) enum Z {
   |         ^^^^^^^^^^^^^^^^ not accessible

error[E0423]: expected value, found enum `m::n::Z`
  --> $DIR/privacy-enum-ctor.rs:57:16
   |
LL |     let _: Z = m::n::Z;
   |                ^^^^^^^
   |
note: the enum is defined here
  --> $DIR/privacy-enum-ctor.rs:11:9
   |
LL | /         pub(in m) enum Z {
LL | |             Fn(u8),
LL | |             Struct {
LL | |                 s: u8,
LL | |             },
LL | |             Unit,
LL | |         }
   | |_________^
help: you might have meant to use the following enum variant
   |
LL |     let _: Z = m::Z::Unit;
   |                ~~~~~~~~~~
help: alternatively, the following enum variant is available
   |
LL |     let _: Z = (m::Z::Fn(/* fields */));
   |                ~~~~~~~~~~~~~~~~~~~~~~~~

error[E0412]: cannot find type `Z` in this scope
  --> $DIR/privacy-enum-ctor.rs:61:12
   |
LL |     pub enum E {
   |     ---------- similarly named enum `E` defined here
...
LL |     let _: Z = m::n::Z::Fn;
   |            ^ help: an enum with a similar name exists: `E`
   |
note: enum `m::Z` exists but is inaccessible
  --> $DIR/privacy-enum-ctor.rs:11:9
   |
LL |         pub(in m) enum Z {
   |         ^^^^^^^^^^^^^^^^ not accessible

error[E0412]: cannot find type `Z` in this scope
  --> $DIR/privacy-enum-ctor.rs:64:12
   |
LL |     pub enum E {
   |     ---------- similarly named enum `E` defined here
...
LL |     let _: Z = m::n::Z::Struct;
   |            ^ help: an enum with a similar name exists: `E`
   |
note: enum `m::Z` exists but is inaccessible
  --> $DIR/privacy-enum-ctor.rs:11:9
   |
LL |         pub(in m) enum Z {
   |         ^^^^^^^^^^^^^^^^ not accessible

error[E0412]: cannot find type `Z` in this scope
  --> $DIR/privacy-enum-ctor.rs:68:12
   |
LL |     pub enum E {
   |     ---------- similarly named enum `E` defined here
...
LL |     let _: Z = m::n::Z::Unit {};
   |            ^ help: an enum with a similar name exists: `E`
   |
note: enum `m::Z` exists but is inaccessible
  --> $DIR/privacy-enum-ctor.rs:11:9
   |
LL |         pub(in m) enum Z {
   |         ^^^^^^^^^^^^^^^^ not accessible

error[E0603]: enum `Z` is private
  --> $DIR/privacy-enum-ctor.rs:57:22
   |
LL |     let _: Z = m::n::Z;
   |                      ^ private enum
   |
note: the enum `Z` is defined here
  --> $DIR/privacy-enum-ctor.rs:11:9
   |
LL |         pub(in m) enum Z {
   |         ^^^^^^^^^^^^^^^^

error[E0603]: enum `Z` is private
  --> $DIR/privacy-enum-ctor.rs:61:22
   |
LL |     let _: Z = m::n::Z::Fn;
   |                      ^ private enum
   |
note: the enum `Z` is defined here
  --> $DIR/privacy-enum-ctor.rs:11:9
   |
LL |         pub(in m) enum Z {
   |         ^^^^^^^^^^^^^^^^

error[E0603]: enum `Z` is private
  --> $DIR/privacy-enum-ctor.rs:64:22
   |
LL |     let _: Z = m::n::Z::Struct;
   |                      ^ private enum
   |
note: the enum `Z` is defined here
  --> $DIR/privacy-enum-ctor.rs:11:9
   |
LL |         pub(in m) enum Z {
   |         ^^^^^^^^^^^^^^^^

error[E0603]: enum `Z` is private
  --> $DIR/privacy-enum-ctor.rs:68:22
   |
LL |     let _: Z = m::n::Z::Unit {};
   |                      ^ private enum
   |
note: the enum `Z` is defined here
  --> $DIR/privacy-enum-ctor.rs:11:9
   |
LL |         pub(in m) enum Z {
   |         ^^^^^^^^^^^^^^^^

error[E0308]: mismatched types
  --> $DIR/privacy-enum-ctor.rs:27:20
   |
LL |             Fn(u8),
   |             -- `Fn` defines an enum variant constructor here, which should be called
...
LL |         let _: Z = Z::Fn;
   |                -   ^^^^^ expected `Z`, found enum constructor
   |                |
   |                expected due to this
   |
   = note:          expected enum `Z`
           found enum constructor `fn(u8) -> Z {Z::Fn}`
help: use parentheses to construct this tuple variant
   |
LL |         let _: Z = Z::Fn(/* u8 */);
   |                         ++++++++++

error[E0533]: expected value, found struct variant `Z::Struct`
  --> $DIR/privacy-enum-ctor.rs:29:20
   |
LL |         let _: Z = Z::Struct;
   |                    ^^^^^^^^^ not a value

error[E0618]: expected function, found enum variant `Z::Unit`
  --> $DIR/privacy-enum-ctor.rs:31:17
   |
LL |             Unit,
   |             ---- enum variant `Z::Unit` defined here
...
LL |         let _ = Z::Unit();
   |                 ^^^^^^^--
   |                 |
   |                 call expression requires function
   |
help: `Z::Unit` is a unit enum variant, and does not take parentheses to be constructed
   |
LL -         let _ = Z::Unit();
LL +         let _ = Z::Unit;
   |

error[E0308]: mismatched types
  --> $DIR/privacy-enum-ctor.rs:43:16
   |
LL |         Fn(u8),
   |         -- `Fn` defines an enum variant constructor here, which should be called
...
LL |     let _: E = m::E::Fn;
   |            -   ^^^^^^^^ expected `E`, found enum constructor
   |            |
   |            expected due to this
   |
   = note:          expected enum `E`
           found enum constructor `fn(u8) -> E {E::Fn}`
help: use parentheses to construct this tuple variant
   |
LL |     let _: E = m::E::Fn(/* u8 */);
   |                        ++++++++++

error[E0533]: expected value, found struct variant `m::E::Struct`
  --> $DIR/privacy-enum-ctor.rs:45:16
   |
LL |     let _: E = m::E::Struct;
   |                ^^^^^^^^^^^^ not a value

error[E0618]: expected function, found enum variant `m::E::Unit`
  --> $DIR/privacy-enum-ctor.rs:47:16
   |
LL |         Unit,
   |         ---- enum variant `m::E::Unit` defined here
...
LL |     let _: E = m::E::Unit();
   |                ^^^^^^^^^^--
   |                |
   |                call expression requires function
   |
help: `m::E::Unit` is a unit enum variant, and does not take parentheses to be constructed
   |
LL -     let _: E = m::E::Unit();
LL +     let _: E = m::E::Unit;
   |

error[E0308]: mismatched types
  --> $DIR/privacy-enum-ctor.rs:51:16
   |
LL |         Fn(u8),
   |         -- `Fn` defines an enum variant constructor here, which should be called
...
LL |     let _: E = E::Fn;
   |            -   ^^^^^ expected `E`, found enum constructor
   |            |
   |            expected due to this
   |
   = note:          expected enum `E`
           found enum constructor `fn(u8) -> E {E::Fn}`
help: use parentheses to construct this tuple variant
   |
LL |     let _: E = E::Fn(/* u8 */);
   |                     ++++++++++

error[E0533]: expected value, found struct variant `E::Struct`
  --> $DIR/privacy-enum-ctor.rs:53:16
   |
LL |     let _: E = E::Struct;
   |                ^^^^^^^^^ not a value

error[E0618]: expected function, found enum variant `E::Unit`
  --> $DIR/privacy-enum-ctor.rs:55:16
   |
LL |         Unit,
   |         ---- enum variant `E::Unit` defined here
...
LL |     let _: E = E::Unit();
   |                ^^^^^^^--
   |                |
   |                call expression requires function
   |
help: `E::Unit` is a unit enum variant, and does not take parentheses to be constructed
   |
LL -     let _: E = E::Unit();
LL +     let _: E = E::Unit;
   |

error[E0533]: expected value, found struct variant `m::n::Z::Struct`
  --> $DIR/privacy-enum-ctor.rs:64:16
   |
LL |     let _: Z = m::n::Z::Struct;
   |                ^^^^^^^^^^^^^^^ not a value

error: aborting due to 23 previous errors

Some errors have detailed explanations: E0308, E0412, E0423, E0533, E0603, E0618.
For more information about an error, try `rustc --explain E0308`.