diff options
Diffstat (limited to 'src/test/ui/specialization/issue-70442.rs')
-rw-r--r-- | src/test/ui/specialization/issue-70442.rs | 23 |
1 files changed, 0 insertions, 23 deletions
diff --git a/src/test/ui/specialization/issue-70442.rs b/src/test/ui/specialization/issue-70442.rs deleted file mode 100644 index d41b5355c..000000000 --- a/src/test/ui/specialization/issue-70442.rs +++ /dev/null @@ -1,23 +0,0 @@ -#![feature(specialization)] //~ WARN the feature `specialization` is incomplete - -// check-pass - -trait Trait { - type Assoc; -} - -impl<T> Trait for T { - default type Assoc = bool; -} - -// This impl inherits the `Assoc` definition from above and "locks it in", or finalizes it, making -// child impls unable to further specialize it. However, since the specialization graph didn't -// correctly track this, we would refuse to project `Assoc` from this impl, even though that should -// happen for items that are final. -impl Trait for () {} - -fn foo<X: Trait<Assoc=bool>>() {} - -fn main() { - foo::<()>(); // `<() as Trait>::Assoc` is normalized to `bool` correctly -} |