error[E0407]: method `foo3` is not a member of trait `Trait` --> $DIR/explicit-paths.rs:49:9 | LL | reuse to_reuse::foo3; | ^^^^^^^^^^^^^^^^----^ | | | | | help: there is an associated function with a similar name: `foo1` | not a member of trait `Trait` error[E0407]: method `foo4` is not a member of trait `Trait` --> $DIR/explicit-paths.rs:51:9 | LL | reuse F::foo4 { &self.0 } | ^^^^^^^^^----^^^^^^^^^^^^ | | | | | help: there is an associated function with a similar name: `foo1` | not a member of trait `Trait` error[E0425]: cannot find function `foo4` in `S` --> $DIR/explicit-paths.rs:27:14 | LL | reuse S::foo4; | ^^^^ not found in `S` error[E0425]: cannot find function `foo4` in `F` --> $DIR/explicit-paths.rs:38:18 | LL | reuse F::foo4 { &self.0 } | ^^^^ not found in `F` | note: function `fn_to_other::foo4` exists but is inaccessible --> $DIR/explicit-paths.rs:27:5 | LL | reuse S::foo4; | ^^^^^^^^^^^^^^ not accessible error[E0425]: cannot find function `foo4` in `F` --> $DIR/explicit-paths.rs:51:18 | LL | reuse F::foo4 { &self.0 } | ^^^^ not found in `F` | note: function `fn_to_other::foo4` exists but is inaccessible --> $DIR/explicit-paths.rs:27:5 | LL | reuse S::foo4; | ^^^^^^^^^^^^^^ not accessible error[E0425]: cannot find function `foo4` in `F` --> $DIR/explicit-paths.rs:65:18 | LL | reuse F::foo4 { &F } | ^^^^ not found in `F` | note: function `fn_to_other::foo4` exists but is inaccessible --> $DIR/explicit-paths.rs:27:5 | LL | reuse S::foo4; | ^^^^^^^^^^^^^^ not accessible error[E0119]: conflicting implementations of trait `Trait` for type `S` --> $DIR/explicit-paths.rs:74:5 | LL | impl Trait for S { | ---------------- first implementation here ... LL | impl Trait for S { | ^^^^^^^^^^^^^^^^ conflicting implementation for `S` error[E0308]: mismatched types --> $DIR/explicit-paths.rs:61:36 | LL | trait Trait2 : Trait { | -------------------- found this type parameter LL | reuse ::foo1 { self } | ---- ^^^^ expected `&F`, found `&Self` | | | arguments to this function are incorrect | = note: expected reference `&F` found reference `&Self` note: method defined here --> $DIR/explicit-paths.rs:5:8 | LL | fn foo1(&self, x: i32) -> i32 { x } | ^^^^ ----- error[E0277]: the trait bound `S2: Trait` is not satisfied --> $DIR/explicit-paths.rs:76:16 | LL | reuse ::foo1; | ^^ the trait `Trait` is not implemented for `S2` | = help: the following other types implement trait `Trait`: F S error[E0308]: mismatched types --> $DIR/explicit-paths.rs:76:30 | LL | reuse ::foo1; | ^^^^ | | | expected `&S2`, found `&S` | arguments to this function are incorrect | = note: expected reference `&S2` found reference `&S` note: method defined here --> $DIR/explicit-paths.rs:5:8 | LL | fn foo1(&self, x: i32) -> i32 { x } | ^^^^ ----- error: aborting due to 10 previous errors Some errors have detailed explanations: E0119, E0277, E0308, E0407, E0425. For more information about an error, try `rustc --explain E0119`.