diff options
Diffstat (limited to '')
-rw-r--r-- | src/test/ui/issues/auxiliary/issue-11225-2.rs | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/src/test/ui/issues/auxiliary/issue-11225-2.rs b/src/test/ui/issues/auxiliary/issue-11225-2.rs new file mode 100644 index 000000000..4381f0a4e --- /dev/null +++ b/src/test/ui/issues/auxiliary/issue-11225-2.rs @@ -0,0 +1,28 @@ +use inner::Trait; + +mod inner { + pub struct Foo; + pub trait Trait { + fn f(&self); + fn f_ufcs(&self); + } + + impl Trait for Foo { + fn f(&self) { } + fn f_ufcs(&self) { } + } +} + +pub trait Outer { + fn foo<T: Trait>(&self, t: T) { t.f(); } + fn foo_ufcs<T: Trait>(&self, t: T) { T::f(&t); } +} + +impl Outer for isize {} + +pub fn foo<T: Outer>(t: T) { + t.foo(inner::Foo); +} +pub fn foo_ufcs<T: Outer>(t: T) { + T::foo_ufcs(&t, inner::Foo) +} |