2 fn main() { let _ = g(Some(E::F(K))); }
4 type R
= Result
<(), ()>;
8 F(K
), // must not be built-in type
13 fn translate(x
: R
) -> R { x }
15 fn g(mut status
: Option
<E
>) -> R
{
18 Some(infix_or_postfix
) => match infix_or_postfix
{
19 E
::F(_op
) => { // <- must be captured by value
21 Err(err
) => return Err(err
),
27 _
=> match translate(Err(())) {
28 Err(err
) => return Err(err
),