Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Detect asynchronous exceptions via their types haskell#187
This commit uses the same async-exception detection mechanism as is used by the safe-exceptions package, via checking if the given exception is cast to a SomeAsyncException. (On older GHCs without SomeAsyncException, it contains a hard-coded list of async exception types.) It then ensures that: * Throwing via throwChecked always generates a synchronous exception * Catching via catchChecked (et al) never catches an asynchronous exception Unfortunately, I don't currently have a reliable test case to ensure that this fixes the problems described in haskell#187. Hopefully with this patch available we can begin testing cabal-install and Stack against the change and see if it resolves the issues.
- Loading branch information