error[E0308]: mismatched types
  --> $DIR/issue-11844.rs:6:9
   |
LL |     match a {
   |           - this expression has type `Option<Box<{integer}>>`
LL |         Ok(a) =>
   |         ^^^^^ expected enum `Option`, found enum `Result`
   |
   = note: expected enum `Option<Box<{integer}>>`
              found enum `Result<_, _>`

error: aborting due to previous error

For more information about this error, try `rustc --explain E0308`.
