summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRyan Scott <ryan.gl.scott@gmail.com>2018-04-13 12:54:31 -0400
committerRyan Scott <ryan.gl.scott@gmail.com>2018-04-13 12:54:32 -0400
commitce27c7d5fe3c335dcc354b70fdfc17831a6848f6 (patch)
treefde13bcf363a9de639fb3c420a3a45678377935f
parent9430901df1428e9ea512d136648e1eba3c9b9a1c (diff)
downloadhaskell-ce27c7d5fe3c335dcc354b70fdfc17831a6848f6.tar.gz
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
-rw-r--r--libraries/base/GHC/IO/Exception.hs7
-rw-r--r--libraries/base/changelog.md4
2 files changed, 9 insertions, 2 deletions
diff --git a/libraries/base/GHC/IO/Exception.hs b/libraries/base/GHC/IO/Exception.hs
index f6b60a44e8..7479a4266c 100644
--- a/libraries/base/GHC/IO/Exception.hs
+++ b/libraries/base/GHC/IO/Exception.hs
@@ -273,12 +273,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 56d8ffc9d4..157c7dfb2e 100644
--- a/libraries/base/changelog.md
+++ b/libraries/base/changelog.md
@@ -95,6 +95,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