diff options
author | Ben Gamari <bgamari.foss@gmail.com> | 2015-08-05 14:21:28 +0200 |
---|---|---|
committer | Ben Gamari <ben@smart-cactus.org> | 2015-08-05 14:45:16 +0200 |
commit | 4c55f14d0ab0f2b099c475a9810012f645bb059e (patch) | |
tree | 9258b99ca02347dd157f80fa74e0e6cdd7657f8f /docs | |
parent | dd7e1880ae078a2d9f254dc5d8f330121e0ec291 (diff) | |
download | haskell-4c55f14d0ab0f2b099c475a9810012f645bb059e.tar.gz |
users_guide: Add note about #367 to Bugs section
This is a long-standing bug and should be mentioned in the users guide,
as noted in #10639.
Test Plan: Carefully check language.
Reviewers: simonpj, rwbarton, austin
Subscribers: rwbarton, thomie
Differential Revision: https://phabricator.haskell.org/D1127
GHC Trac Issues: #10639, #367
Diffstat (limited to 'docs')
-rw-r--r-- | docs/users_guide/bugs.xml | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/docs/users_guide/bugs.xml b/docs/users_guide/bugs.xml index 8673d71f6b..1b4d5c93a2 100644 --- a/docs/users_guide/bugs.xml +++ b/docs/users_guide/bugs.xml @@ -476,6 +476,21 @@ checking for duplicates. The reason for this is efficiency, pure and simple. <itemizedlist> <listitem> + <para>GHC's runtime system implements cooperative multitasking, with + context switching potentially occurring only when a program allocates. + This means that programs that do not allocate may never context switch. + See + <ulink url="https://ghc.haskell.org/trac/ghc/ticket/367">Trac #367</ulink> + for further discussion. + </para> + <para>If you are hit by this, you may want to compile the affected module + with <literal>-fno-omit-yields</literal>. This flag ensures that yield points + are inserted at every function entrypoint (at the expense of a bit of + performance). + </para> + </listitem> + + <listitem> <para> GHC can warn about non-exhaustive or overlapping patterns (see <xref linkend="options-sanity"/>), and usually does so correctly. But not always. It gets confused by |