error[E0277]: the trait bound `Result<(), ()>: IntoJsResult` is not satisfied
  --> ui-tests/async-errors.rs:31:24
   |
31 | pub async fn bad1() -> Result<(), ()> { loop {} }
   |                        ^^^^^^^^^^^^^^ the trait `IntoJsResult` is not implemented for `Result<(), ()>`
   |
   = help: the following other types implement trait `IntoJsResult`:
             Result<(), E>
             Result<T, E>

error[E0277]: the trait bound `Result<(), BadType>: IntoJsResult` is not satisfied
  --> ui-tests/async-errors.rs:33:24
   |
33 | pub async fn bad2() -> Result<(), BadType> { loop {} }
   |                        ^^^^^^^^^^^^^^^^^^^ the trait `IntoJsResult` is not implemented for `Result<(), BadType>`
   |
   = help: the following other types implement trait `IntoJsResult`:
             Result<(), E>
             Result<T, E>

error[E0277]: the trait bound `wasm_bindgen::JsValue: From<BadType>` is not satisfied
  --> ui-tests/async-errors.rs:35:24
   |
35 | pub async fn bad3() -> BadType { loop {} }
   |                        ^^^^^^^ the trait `From<BadType>` is not implemented for `wasm_bindgen::JsValue`
   |
   = help: the following other types implement trait `From<T>`:
             <wasm_bindgen::JsValue as From<bool>>
             <wasm_bindgen::JsValue as From<isize>>
             <wasm_bindgen::JsValue as From<i8>>
             <wasm_bindgen::JsValue as From<i16>>
             <wasm_bindgen::JsValue as From<i32>>
             <wasm_bindgen::JsValue as From<i64>>
             <wasm_bindgen::JsValue as From<i128>>
             <wasm_bindgen::JsValue as From<usize>>
           and $N others
   = note: required for `BadType` to implement `Into<wasm_bindgen::JsValue>`
   = note: required for `BadType` to implement `IntoJsResult`

error[E0277]: the trait bound `Result<BadType, wasm_bindgen::JsValue>: IntoJsResult` is not satisfied
  --> ui-tests/async-errors.rs:37:24
   |
37 | pub async fn bad4() -> Result<BadType, JsValue> { loop {} }
   |                        ^^^^^^^^^^^^^^^^^^^^^^^^ the trait `IntoJsResult` is not implemented for `Result<BadType, wasm_bindgen::JsValue>`
   |
   = help: the following other types implement trait `IntoJsResult`:
             Result<(), E>
             Result<T, E>
