[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