diff --git a/compiler/GHC/Driver/Flags.hs b/compiler/GHC/Driver/Flags.hs index 71a76e262d259faf5b37c86bb77383b38987fd8b..85d1354d51a62bc9589dffb23c890fe0b7e4c753 100644 --- a/compiler/GHC/Driver/Flags.hs +++ b/compiler/GHC/Driver/Flags.hs @@ -330,7 +330,7 @@ impliedXFlags , (LangExt.RecordWildCards, On LangExt.DisambiguateRecordFields) , (LangExt.ParallelArrays, On LangExt.ParallelListComp) - + , (LangExt.MonadComprehensions, On LangExt.ParallelListComp) , (LangExt.JavaScriptFFI, On LangExt.InterruptibleFFI) , (LangExt.DeriveTraversable, On LangExt.DeriveFunctor) diff --git a/docs/users_guide/9.14.1-notes.rst b/docs/users_guide/9.14.1-notes.rst index 112c04597a9de62362730d29270aae6fb22a36ba..81e787385908fdbf4568020073a9275d0a271e92 100644 --- a/docs/users_guide/9.14.1-notes.rst +++ b/docs/users_guide/9.14.1-notes.rst @@ -78,6 +78,8 @@ Language This causes the constructor to have type ``Rec :: Int %'Many -> Char %1 -> Record``. +* The :extension:`MonadComprehensions` extension now implies :extension:`ParallelListComp` as was originally intended (see `Monad Comprehensions <https://ghc.gitlab.haskell.org/ghc/doc/users_guide/exts/monad_comprehensions.html>`_). + Compiler ~~~~~~~~ diff --git a/docs/users_guide/exts/monad_comprehensions.rst b/docs/users_guide/exts/monad_comprehensions.rst index 260d8305ba89c6c29ec4c8f95c365d9d8b9a92bc..2bb6de10d0b2cda3c26daa7d08175db61037730f 100644 --- a/docs/users_guide/exts/monad_comprehensions.rst +++ b/docs/users_guide/exts/monad_comprehensions.rst @@ -9,6 +9,8 @@ Monad comprehensions .. extension:: MonadComprehensions :shortdesc: Allow list comprehension syntax to be used at monads other than ``List``. + :implies: :extension:`ParallelListComp` + :since: 7.2.1 Enable list comprehension syntax for arbitrary monads. diff --git a/docs/users_guide/exts/parallel_list_comprehensions.rst b/docs/users_guide/exts/parallel_list_comprehensions.rst index 2e1863dc9f9875b4da753d4577781f82a7b3ff05..b4f0614ced6a05377d76b86613562fd96f0ecd81 100644 --- a/docs/users_guide/exts/parallel_list_comprehensions.rst +++ b/docs/users_guide/exts/parallel_list_comprehensions.rst @@ -10,6 +10,8 @@ Parallel List Comprehensions .. extension:: ParallelListComp :shortdesc: Allow parallel list comprehension syntax. + :implied by: :extension:`MonadComprehensions` + :since: 6.8.1 Allow parallel list comprehension syntax. diff --git a/testsuite/tests/parser/should_fail/readFail038.stderr b/testsuite/tests/parser/should_fail/readFail038.stderr index 5e637dfe259936c825b532b4e61ccf563e6cb518..4370d81c2a1b3f5b806e16eb7cb2ce3b83134087 100644 --- a/testsuite/tests/parser/should_fail/readFail038.stderr +++ b/testsuite/tests/parser/should_fail/readFail038.stderr @@ -2,4 +2,4 @@ readFail038.hs:5:9: error: [GHC-42026] Unexpected parallel statement in a list comprehension Suggested fix: - Perhaps you intended to use the ‘ParallelListComp’ extension (implied by ‘ParallelArrays’) + Perhaps you intended to use the ‘ParallelListComp’ extension (implied by ‘ParallelArrays’ and ‘MonadComprehensions’)