error[E0308]: `?` operator has incompatible types
  --> $DIR/issue-51632-try-desugar-incompatible-types.rs:8:5
   |
LL |     missing_discourses()?
   |     ^^^^^^^^^^^^^^^^^^^^^ expected enum `Result`, found `isize`
   |
   = note: `?` operator cannot convert from `isize` to `Result<isize, ()>`
   = note: expected enum `Result<isize, ()>`
              found type `isize`
help: try removing this `?`
   |
LL -     missing_discourses()?
LL +     missing_discourses()
   | 
help: try wrapping the expression in `Ok`
   |
LL |     Ok(missing_discourses()?)
   |     +++                     +

error: aborting due to previous error

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