diff options
Diffstat (limited to 'src/test/ui/mir/issue-99852.rs')
-rw-r--r-- | src/test/ui/mir/issue-99852.rs | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/src/test/ui/mir/issue-99852.rs b/src/test/ui/mir/issue-99852.rs new file mode 100644 index 000000000..1c675788e --- /dev/null +++ b/src/test/ui/mir/issue-99852.rs @@ -0,0 +1,24 @@ +// check-pass +// compile-flags: -Z validate-mir +#![feature(let_chains)] + +fn lambda<T, U>() -> U +where + T: Default, + U: Default, +{ + let foo: Result<T, ()> = Ok(T::default()); + let baz: U = U::default(); + + if let Ok(foo) = foo && let Ok(bar) = transform(foo) { + bar + } else { + baz + } +} + +fn transform<T, U>(input: T) -> Result<U, ()> { + todo!() +} + +fn main() {} |