1 error[E0308]: `if` and `else` have incompatible types
2 --> $DIR/opaque-type-error.rs:20:9
4 LL | fn thing_two() -> impl Future<Output = Result<(), ()>> {
5 | ------------------------------------ the found opaque type
9 | | ----------- expected because of this
12 | | ^^^^^^^^^^^ expected opaque type, found a different opaque type
14 | |_____- `if` and `else` have incompatible types
16 = note: expected type `impl Future<Output = Result<(), ()>>` (opaque type at <$DIR/opaque-type-error.rs:8:19>)
17 found opaque type `impl Future<Output = Result<(), ()>>` (opaque type at <$DIR/opaque-type-error.rs:12:19>)
18 = note: distinct uses of `impl Trait` result in different opaque types
19 help: consider `await`ing on both `Future`s
21 LL ~ thing_one().await
23 LL ~ thing_two().await
26 error: aborting due to previous error
28 For more information about this error, try `rustc --explain E0308`.