error[E0599]: no method named `trait_method` found for struct `FooStruct` in the current scope
  --> $DIR/issue-56175.rs:5:33
   |
LL |     reexported_trait::FooStruct.trait_method();
   |                                 ^^^^^^^^^^^^
   |
  ::: $DIR/auxiliary/reexported-trait.rs:3:12
   |
LL |         fn trait_method(&self) {
   |            ------------ the method is available for `FooStruct` here
   |
   = help: items from traits can only be used if the trait is in scope
help: trait `Trait` which provides `trait_method` is implemented but not in scope; perhaps you want to import it
   |
LL + use reexported_trait::Trait;
   |
help: there is a method `trait_method_b` with a similar name
   |
LL |     reexported_trait::FooStruct.trait_method_b();
   |                                 ~~~~~~~~~~~~~~

error[E0599]: no method named `trait_method_b` found for struct `FooStruct` in the current scope
  --> $DIR/issue-56175.rs:7:33
   |
LL |     reexported_trait::FooStruct.trait_method_b();
   |                                 ^^^^^^^^^^^^^^
   |
  ::: $DIR/auxiliary/reexported-trait.rs:7:12
   |
LL |         fn trait_method_b(&self) {
   |            -------------- the method is available for `FooStruct` here
   |
   = help: items from traits can only be used if the trait is in scope
help: trait `TraitB` which provides `trait_method_b` is implemented but not in scope; perhaps you want to import it
   |
LL + use reexported_trait::TraitBRename;
   |
help: there is a method `trait_method` with a similar name
   |
LL |     reexported_trait::FooStruct.trait_method();
   |                                 ~~~~~~~~~~~~

error: aborting due to 2 previous errors

For more information about this error, try `rustc --explain E0599`.
