• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // check-pass
2 // compile-flags: -Z validate-mir
3 #![feature(let_chains)]
4 
lambda<T, U>() -> U where T: Default, U: Default,5 fn lambda<T, U>() -> U
6 where
7     T: Default,
8     U: Default,
9 {
10     let foo: Result<T, ()> = Ok(T::default());
11     let baz: U = U::default();
12 
13     if let Ok(foo) = foo && let Ok(bar) = transform(foo) {
14         bar
15     } else {
16         baz
17     }
18 }
19 
transform<T, U>(input: T) -> Result<U, ()>20 fn transform<T, U>(input: T) -> Result<U, ()> {
21     todo!()
22 }
23 
main()24 fn main() {}
25