@@ -3651,23 +3651,23 @@ specialized further. Erroneous code example:
3651
3651
```compile_fail
3652
3652
#![feature(specialization)]
3653
3653
3654
- trait SpaceLama {
3654
+ trait SpaceLlama {
3655
3655
fn fly(&self);
3656
3656
}
3657
3657
3658
3658
// applies to all T
3659
- impl<T> SpaceLama for T {
3659
+ impl<T> SpaceLlama for T {
3660
3660
default fn fly(&self) {}
3661
3661
}
3662
3662
3663
3663
// non-default impl
3664
3664
// applies to all `Clone` T and overrides the previous impl
3665
- impl<T: Clone> SpaceLama for T {
3665
+ impl<T: Clone> SpaceLlama for T {
3666
3666
fn fly(&self) {}
3667
3667
}
3668
3668
3669
3669
// since `i32` is clone, this conflicts with the previous implementation
3670
- impl SpaceLama for i32 {
3670
+ impl SpaceLlama for i32 {
3671
3671
default fn fly(&self) {}
3672
3672
// error: item `fly` is provided by an `impl` that specializes
3673
3673
// another, but the item in the parent `impl` is not marked
@@ -3684,23 +3684,23 @@ Example:
3684
3684
```
3685
3685
#![feature(specialization)]
3686
3686
3687
- trait SpaceLama {
3687
+ trait SpaceLlama {
3688
3688
fn fly(&self);
3689
3689
}
3690
3690
3691
3691
// applies to all T
3692
- impl<T> SpaceLama for T {
3692
+ impl<T> SpaceLlama for T {
3693
3693
default fn fly(&self) {} // This is a parent implementation.
3694
3694
}
3695
3695
3696
3696
// applies to all `Clone` T; overrides the previous impl
3697
- impl<T: Clone> SpaceLama for T {
3697
+ impl<T: Clone> SpaceLlama for T {
3698
3698
default fn fly(&self) {} // This is a parent implementation but was
3699
3699
// previously not a default one, causing the error
3700
3700
}
3701
3701
3702
3702
// applies to i32, overrides the previous two impls
3703
- impl SpaceLama for i32 {
3703
+ impl SpaceLlama for i32 {
3704
3704
fn fly(&self) {} // And now that's ok!
3705
3705
}
3706
3706
```
0 commit comments