// Test that methods defined in another crate are resolved correctly their // names differ only in `SyntaxContext`. This also checks that any name // resolution done when monomorphizing is correct. // run-pass // aux-build:methods.rs extern crate methods; use methods::*; struct A; struct B; struct C; impl MyTrait for A {} test_trait!(impl for B); test_trait2!(impl for C); fn main() { check_crate_local(); check_crate_local_generic(A, B); check_crate_local_generic(A, C); test_trait!(check_resolutions); test_trait2!(check_resolutions); test_trait!(assert_no_override A); test_trait2!(assert_no_override A); test_trait!(assert_override B); test_trait2!(assert_override B); test_trait!(assert_override C); test_trait2!(assert_override C); }