error[E0412]: cannot find type `FromOutside` in this scope
  --> $DIR/generate-mod.rs:9:1
   |
LL | generate_mod::check!();
   | ^^^^^^^^^^^^^^^^^^^^^^ not found in this scope
   |
   = help: consider importing this struct:
           FromOutside
   = note: this error originates in the macro `generate_mod::check` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0412]: cannot find type `Outer` in this scope
  --> $DIR/generate-mod.rs:9:1
   |
LL | generate_mod::check!();
   | ^^^^^^^^^^^^^^^^^^^^^^ not found in this scope
   |
   = help: consider importing this struct:
           Outer
   = note: this error originates in the macro `generate_mod::check` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0412]: cannot find type `FromOutside` in this scope
  --> $DIR/generate-mod.rs:12:1
   |
LL | #[generate_mod::check_attr]
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ not found in this scope
   |
   = help: consider importing this struct:
           FromOutside
   = note: this error originates in the attribute macro `generate_mod::check_attr` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0412]: cannot find type `OuterAttr` in this scope
  --> $DIR/generate-mod.rs:12:1
   |
LL | #[generate_mod::check_attr]
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ not found in this scope
   |
   = help: consider importing this struct:
           OuterAttr
   = note: this error originates in the attribute macro `generate_mod::check_attr` (in Nightly builds, run with -Z macro-backtrace for more info)

error: cannot find type `FromOutside` in this scope
  --> $DIR/generate-mod.rs:16:10
   |
LL | #[derive(generate_mod::CheckDerive)]
   |          ^^^^^^^^^^^^^^^^^^^^^^^^^ names from parent modules are not accessible without an explicit import
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
   = note: for more information, see issue #83583 <https://github.com/rust-lang/rust/issues/83583>
   = note: `#[deny(proc_macro_derive_resolution_fallback)]` on by default
   = note: this error originates in the derive macro `generate_mod::CheckDerive` (in Nightly builds, run with -Z macro-backtrace for more info)

error: cannot find type `OuterDerive` in this scope
  --> $DIR/generate-mod.rs:16:10
   |
LL | #[derive(generate_mod::CheckDerive)]
   |          ^^^^^^^^^^^^^^^^^^^^^^^^^ names from parent modules are not accessible without an explicit import
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
   = note: for more information, see issue #83583 <https://github.com/rust-lang/rust/issues/83583>
   = note: this error originates in the derive macro `generate_mod::CheckDerive` (in Nightly builds, run with -Z macro-backtrace for more info)

error: cannot find type `FromOutside` in this scope
  --> $DIR/generate-mod.rs:23:14
   |
LL |     #[derive(generate_mod::CheckDerive)]
   |              ^^^^^^^^^^^^^^^^^^^^^^^^^ names from parent modules are not accessible without an explicit import
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
   = note: for more information, see issue #83583 <https://github.com/rust-lang/rust/issues/83583>
   = note: this error originates in the derive macro `generate_mod::CheckDerive` (in Nightly builds, run with -Z macro-backtrace for more info)

error: cannot find type `OuterDerive` in this scope
  --> $DIR/generate-mod.rs:23:14
   |
LL |     #[derive(generate_mod::CheckDerive)]
   |              ^^^^^^^^^^^^^^^^^^^^^^^^^ names from parent modules are not accessible without an explicit import
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
   = note: for more information, see issue #83583 <https://github.com/rust-lang/rust/issues/83583>
   = note: this error originates in the derive macro `generate_mod::CheckDerive` (in Nightly builds, run with -Z macro-backtrace for more info)

error: aborting due to 8 previous errors

For more information about this error, try `rustc --explain E0412`.
Future incompatibility report: Future breakage diagnostic:
error: cannot find type `FromOutside` in this scope
  --> $DIR/generate-mod.rs:16:10
   |
LL | #[derive(generate_mod::CheckDerive)]
   |          ^^^^^^^^^^^^^^^^^^^^^^^^^ names from parent modules are not accessible without an explicit import
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
   = note: for more information, see issue #83583 <https://github.com/rust-lang/rust/issues/83583>
   = note: `#[deny(proc_macro_derive_resolution_fallback)]` on by default
   = note: this error originates in the derive macro `generate_mod::CheckDerive` (in Nightly builds, run with -Z macro-backtrace for more info)

Future breakage diagnostic:
error: cannot find type `OuterDerive` in this scope
  --> $DIR/generate-mod.rs:16:10
   |
LL | #[derive(generate_mod::CheckDerive)]
   |          ^^^^^^^^^^^^^^^^^^^^^^^^^ names from parent modules are not accessible without an explicit import
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
   = note: for more information, see issue #83583 <https://github.com/rust-lang/rust/issues/83583>
   = note: `#[deny(proc_macro_derive_resolution_fallback)]` on by default
   = note: this error originates in the derive macro `generate_mod::CheckDerive` (in Nightly builds, run with -Z macro-backtrace for more info)

Future breakage diagnostic:
error: cannot find type `FromOutside` in this scope
  --> $DIR/generate-mod.rs:23:14
   |
LL |     #[derive(generate_mod::CheckDerive)]
   |              ^^^^^^^^^^^^^^^^^^^^^^^^^ names from parent modules are not accessible without an explicit import
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
   = note: for more information, see issue #83583 <https://github.com/rust-lang/rust/issues/83583>
   = note: `#[deny(proc_macro_derive_resolution_fallback)]` on by default
   = note: this error originates in the derive macro `generate_mod::CheckDerive` (in Nightly builds, run with -Z macro-backtrace for more info)

Future breakage diagnostic:
error: cannot find type `OuterDerive` in this scope
  --> $DIR/generate-mod.rs:23:14
   |
LL |     #[derive(generate_mod::CheckDerive)]
   |              ^^^^^^^^^^^^^^^^^^^^^^^^^ names from parent modules are not accessible without an explicit import
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
   = note: for more information, see issue #83583 <https://github.com/rust-lang/rust/issues/83583>
   = note: `#[deny(proc_macro_derive_resolution_fallback)]` on by default
   = note: this error originates in the derive macro `generate_mod::CheckDerive` (in Nightly builds, run with -Z macro-backtrace for more info)

Future breakage diagnostic:
warning: cannot find type `FromOutside` in this scope
  --> $DIR/generate-mod.rs:30:10
   |
LL | #[derive(generate_mod::CheckDeriveLint)] // OK, lint is suppressed
   |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ names from parent modules are not accessible without an explicit import
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
   = note: for more information, see issue #83583 <https://github.com/rust-lang/rust/issues/83583>
note: the lint level is defined here
  --> $DIR/generate-mod.rs:30:10
   |
LL | #[derive(generate_mod::CheckDeriveLint)] // OK, lint is suppressed
   |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   = note: this warning originates in the derive macro `generate_mod::CheckDeriveLint` (in Nightly builds, run with -Z macro-backtrace for more info)

Future breakage diagnostic:
warning: cannot find type `OuterDeriveLint` in this scope
  --> $DIR/generate-mod.rs:30:10
   |
LL | #[derive(generate_mod::CheckDeriveLint)] // OK, lint is suppressed
   |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ names from parent modules are not accessible without an explicit import
   |
   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
   = note: for more information, see issue #83583 <https://github.com/rust-lang/rust/issues/83583>
note: the lint level is defined here
  --> $DIR/generate-mod.rs:30:10
   |
LL | #[derive(generate_mod::CheckDeriveLint)] // OK, lint is suppressed
   |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   = note: this warning originates in the derive macro `generate_mod::CheckDeriveLint` (in Nightly builds, run with -Z macro-backtrace for more info)

