diff options
Diffstat (limited to 'tests/ui/associated-consts/assoc-const-eq-ambiguity.rs')
-rw-r--r-- | tests/ui/associated-consts/assoc-const-eq-ambiguity.rs | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/tests/ui/associated-consts/assoc-const-eq-ambiguity.rs b/tests/ui/associated-consts/assoc-const-eq-ambiguity.rs new file mode 100644 index 000000000..ac085864f --- /dev/null +++ b/tests/ui/associated-consts/assoc-const-eq-ambiguity.rs @@ -0,0 +1,19 @@ +// We used to say "ambiguous associated type" on ambiguous associated consts. +// Ensure that we now use the correct label. + +#![feature(associated_const_equality)] + +trait Trait0: Parent0<i32> + Parent0<u32> {} +trait Parent0<T> { const K: (); } + +fn take0(_: impl Trait0<K = { () }>) {} +//~^ ERROR ambiguous associated constant `K` in bounds of `Trait0` + +trait Trait1: Parent1 + Parent2 {} +trait Parent1 { const C: i32; } +trait Parent2 { const C: &'static str; } + +fn take1(_: impl Trait1<C = "?">) {} +//~^ ERROR ambiguous associated constant `C` in bounds of `Trait1` + +fn main() {} |