error: trait implementation can only be restricted to ancestor modules --> $DIR/restriction_resolution_errors.rs:16:21 | LL | pub impl(in ::std) trait T2 {} | ^^^^^ error: trait implementation can only be restricted to ancestor modules --> $DIR/restriction_resolution_errors.rs:18:21 | LL | pub impl(in self::c) trait T3 {} | ^^^^^^^ error: trait implementation can only be restricted to ancestor modules --> $DIR/restriction_resolution_errors.rs:20:21 | LL | pub impl(in super::d) trait T4 {} | ^^^^^^^^ error[E0433]: too many leading `super` keywords --> $DIR/restriction_resolution_errors.rs:26:35 | LL | pub impl(in super::super::super) trait T7 {} | ^^^^^ there are too many leading `super` keywords error: trait implementation can only be restricted to ancestor modules --> $DIR/restriction_resolution_errors.rs:36:21 | LL | pub impl(in self::f) trait L1 {} | ^^^^^^^ error: trait implementation can only be restricted to ancestor modules --> $DIR/restriction_resolution_errors.rs:40:21 | LL | pub impl(in super::h) trait L3 {} | ^^^^^^^^ error: trait implementation can only be restricted to ancestor modules --> $DIR/restriction_resolution_errors.rs:49:13 | LL | pub impl(in crate::a) trait T13 {} | ^^^^^^^^ error[E0433]: too many leading `super` keywords --> $DIR/restriction_resolution_errors.rs:56:10 | LL | pub impl(super) trait T17 {} | ^^^^^ there are too many leading `super` keywords error: trait implementation can only be restricted to ancestor modules --> $DIR/restriction_resolution_errors.rs:58:13 | LL | pub impl(in external) trait T18 {} | ^^^^^^^^ error: trait implementation can only be restricted to ancestor modules --> $DIR/restriction_resolution_errors.rs:61:13 | LL | pub impl(in crate::j) trait L4 {} | ^^^^^^^^ error: trait implementation can only be restricted to ancestor modules --> $DIR/restriction_resolution_errors.rs:77:21 | LL | pub impl(in crate::m2) trait U2 {} | ^^^^^^^^^ error: trait implementation can only be restricted to ancestor modules --> $DIR/restriction_resolution_errors.rs:79:21 | LL | pub impl(in m6::m5) trait U4 {} | ^^^^^^ error[E0433]: cannot find module or crate `a` in this scope --> $DIR/restriction_resolution_errors.rs:14:21 | LL | pub impl(in a::b) trait T1 {} | ^ use of unresolved module or unlinked crate `a` | help: there is a crate or module with a similar name | LL - pub impl(in a::b) trait T1 {} LL + pub impl(in c::b) trait T1 {} | help: consider importing this module | LL + use a; | error[E0433]: cannot find module `c` in the crate root --> $DIR/restriction_resolution_errors.rs:22:28 | LL | pub impl(in crate::c) trait T5 {} | ^ not found in the crate root error[E0577]: expected module, found enum `super::E` --> $DIR/restriction_resolution_errors.rs:24:21 | LL | pub impl(in super::E) trait T6 {} | ^^^^^^^^ not a module error[E0577]: expected module, found enum `super::G` --> $DIR/restriction_resolution_errors.rs:38:21 | LL | pub impl(in super::G) trait L2 {} | ^^^^^^^^ not a module error[E0577]: expected module, found enum `crate::a::E` --> $DIR/restriction_resolution_errors.rs:51:13 | LL | pub mod b { | --------- similarly named module `b` defined here ... LL | pub impl(in crate::a::E) trait T14 {} | ^^^^^^^^^^^ | help: a module with a similar name exists | LL - pub impl(in crate::a::E) trait T14 {} LL + pub impl(in crate::a::b) trait T14 {} | error[E0577]: expected module, found enum `crate::I` --> $DIR/restriction_resolution_errors.rs:63:13 | LL | pub mod a { | --------- similarly named module `a` defined here ... LL | pub impl(in crate::I) trait L5 {} | ^^^^^^^^ | help: a module with a similar name exists | LL - pub impl(in crate::I) trait L5 {} LL + pub impl(in crate::a) trait L5 {} | error[E0577]: expected module, found enum `m7` --> $DIR/restriction_resolution_errors.rs:80:21 | LL | pub impl(in m7) trait U5 {} | ^^ not a module error: aborting due to 19 previous errors Some errors have detailed explanations: E0433, E0577. For more information about an error, try `rustc --explain E0433`.