| //@ check-pass | |
| // If we allow the parent generics here without using lazy normalization | |
| // this results in a cycle error. | |
| struct Foo<T, U>(T, U); | |
| impl<T> From<[u8; 1 + 1]> for Foo<T, [u8; 1 + 1]> { | |
| fn from(value: [u8; 1 + 1]) -> Foo<T, [u8; 1 + 1]> { | |
| todo!(); | |
| } | |
| } | |
| fn break_me<T>() | |
| where | |
| [u8; 1 + 1]: From<[u8; 1 + 1]> | |
| {} | |
| fn main() {} |