[commit: ghc] ghc-8.0: Fix desugaring of bang-pattern let-bindings (d6ea90a)
git at git.haskell.org
git at git.haskell.org
Thu Feb 18 21:41:26 UTC 2016
Repository : ssh://git@git.haskell.org/ghc
On branch : ghc-8.0
Link : http://ghc.haskell.org/trac/ghc/changeset/d6ea90a213fb32ea0af666dec25697228cc09a26/ghc
>---------------------------------------------------------------
commit d6ea90a213fb32ea0af666dec25697228cc09a26
Author: Simon Peyton Jones <simonpj at microsoft.com>
Date: Thu Feb 18 11:05:45 2016 +0000
Fix desugaring of bang-pattern let-bindings
When implementing Strict Haskell, the patch 46a03fbe didn't faithfully
implement the semantics given in the manual. In particular there was
an ad-hoc case in mkSelectorBinds for "strict and no binders" that
didn't work.
This patch fixes it, curing Trac #11572.
Howver it forced me to think about banged let-bindings, and I rather
think we do not have quite the right semantics yet, so I've opened
Trac #11601.
(cherry picked from commit 01449eb552daa082e46ceaaf8481708ee73dc2ad)
>---------------------------------------------------------------
d6ea90a213fb32ea0af666dec25697228cc09a26
compiler/deSugar/DsUtils.hs | 49 +-
docs/users_guide/glasgow_exts.rst | 3306 +++++++++++-----------
testsuite/tests/deSugar/should_run/T11572.hs | 6 +
testsuite/tests/deSugar/should_run/T11572.stderr | 4 +
testsuite/tests/deSugar/should_run/all.T | 1 +
5 files changed, 1674 insertions(+), 1692 deletions(-)
Diff suppressed because of size. To see it, use:
git diff-tree --root --patch-with-stat --no-color --find-copies-harder --ignore-space-at-eol --cc d6ea90a213fb32ea0af666dec25697228cc09a26
More information about the ghc-commits
mailing list