diff options
author | Simon Marlow <marlowsd@gmail.com> | 2009-10-12 15:42:13 +0000 |
---|---|---|
committer | Simon Marlow <marlowsd@gmail.com> | 2009-10-12 15:42:13 +0000 |
commit | 0e1c226ee99011d9af202de78e2a7a37511f4b72 (patch) | |
tree | c005c2826d0805bcfbb0119be70397c4801f8b75 /docs | |
parent | 8a1f533adf691a008ba2ffd0487f9b9254517020 (diff) | |
download | haskell-0e1c226ee99011d9af202de78e2a7a37511f4b72.tar.gz |
Document that lazy I/O now throws exceptions
Diffstat (limited to 'docs')
-rw-r--r-- | docs/users_guide/6.12.1-notes.xml | 13 | ||||
-rw-r--r-- | docs/users_guide/bugs.xml | 24 |
2 files changed, 28 insertions, 9 deletions
diff --git a/docs/users_guide/6.12.1-notes.xml b/docs/users_guide/6.12.1-notes.xml index f1d1ed5c7b..9e0ecbfbf8 100644 --- a/docs/users_guide/6.12.1-notes.xml +++ b/docs/users_guide/6.12.1-notes.xml @@ -692,6 +692,19 @@ ghc --abi-hash M1 M2 ... <listitem> <para> + Lazy I/O now throws an exception if an error is + encountered, in a divergence from the Haskell 98 spec which + requires that errors are discarded (see Section 21.2.2 of + the Haskell 98 report). The exception thrown is the usual + IO exception that would be thrown if the failing IO + operation was performed in the IO monad, and can be caught + by <literal>System.IO.Error.catch</literal> + or <literal>Control.Exception.catch</literal>. + </para> + </listitem> + + <listitem> + <para> It is now possible to create your own handles. For more information, see the <literal>GHC.IO.Handle</literal> haddock docs. diff --git a/docs/users_guide/bugs.xml b/docs/users_guide/bugs.xml index 7fd47c9a20..6e25e68d14 100644 --- a/docs/users_guide/bugs.xml +++ b/docs/users_guide/bugs.xml @@ -192,15 +192,21 @@ checking for duplicates. The reason for this is efficiency, pure and simple. </listitem> </varlistentry> - <varlistentry> - <term>Strings treated as ISO-8859-1</term> - <listitem> - <para> - Various library functions, such as <literal>putStrLn</literal>, - treat Strings as if they were ISO-8859-1 rather than UTF-8. - </para> - </listitem> - </varlistentry> + <varlistentry> + <term><literal>hGetContents</literal></term> + <listitem> + <para> + Lazy I/O throws an exception if an error is + encountered, in contrast to the Haskell 98 spec which + requires that errors are discarded (see Section 21.2.2 + of the Haskell 98 report). The exception thrown is + the usual IO exception that would be thrown if the + failing IO operation was performed in the IO monad, and can + be caught by <literal>System.IO.Error.catch</literal> + or <literal>Control.Exception.catch</literal>. + </para> + </listitem> + </varlistentry> </variablelist> </sect3> </sect2> |