[commit: ghc] ghc-8.4: Correct FixIOException's @since annotation retroactively (8147fa3)
git at git.haskell.org
git at git.haskell.org
Sat Apr 14 18:57:55 UTC 2018
Repository : ssh://git@git.haskell.org/ghc
On branch : ghc-8.4
Link : http://ghc.haskell.org/trac/ghc/changeset/8147fa3278d4a51d82d794d23c039289f6dd9446/ghc
>---------------------------------------------------------------
commit 8147fa3278d4a51d82d794d23c039289f6dd9446
Author: Ryan Scott <ryan.gl.scott at gmail.com>
Date: Fri Apr 13 12:54:31 2018 -0400
Correct FixIOException's @since annotation retroactively
Summary:
In D4113, a `FixIOException` data type was added with a
`@since TODO` annotation, but it seems that `TODO` made it out into
`base-4.11` itself. I've (retroactively) fixed this and added an
entry to the `base-4.11` entry in the `changelog`.
Test Plan: Read it
Reviewers: dfeuer, hvr, bgamari
Reviewed By: dfeuer
Subscribers: thomie, carter
GHC Trac Issues: #14356, #15025
Differential Revision: https://phabricator.haskell.org/D4578
(cherry picked from commit ce27c7d5fe3c335dcc354b70fdfc17831a6848f6)
>---------------------------------------------------------------
8147fa3278d4a51d82d794d23c039289f6dd9446
libraries/base/GHC/IO/Exception.hs | 7 +++++--
libraries/base/changelog.md | 4 ++++
2 files changed, 9 insertions(+), 2 deletions(-)
diff --git a/libraries/base/GHC/IO/Exception.hs b/libraries/base/GHC/IO/Exception.hs
index 020bc06..cb53432 100644
--- a/libraries/base/GHC/IO/Exception.hs
+++ b/libraries/base/GHC/IO/Exception.hs
@@ -269,12 +269,15 @@ instance Show ArrayException where
. (if not (null s) then showString ": " . showString s
else id)
--- | @since TODO
+-- | The exception thrown when an infinite cycle is detected in 'fixIO'.
+--
+-- @since 4.11.0.0
data FixIOException = FixIOException
--- | @since TODO
+-- | @since 4.11.0.0
instance Exception FixIOException
+-- | @since 4.11.0.0
instance Show FixIOException where
showsPrec _ FixIOException = showString "cyclic evaluation in fixIO"
diff --git a/libraries/base/changelog.md b/libraries/base/changelog.md
index 3977117..cb9519c 100644
--- a/libraries/base/changelog.md
+++ b/libraries/base/changelog.md
@@ -85,6 +85,10 @@
* Deprecated STM invariant checking primitives (`checkInv`, `always`, and
`alwaysSucceeds`) in `GHC.Conc.Sync` (#14324).
+ * Add a `FixIOException` data type to `Control.Exception.Base`, and change
+ `fixIO` to throw that instead of a `BlockedIndefinitelyOnMVar` exception
+ (#14356).
+
## 4.10.1.0 *November 2017*
* Bundled with GHC 8.2.2
More information about the ghc-commits
mailing list