[commit: ghc] master: Make Arrow desugaring deterministic (9d06ef1)

git at git.haskell.org git at git.haskell.org
Tue May 24 12:41:40 UTC 2016


Repository : ssh://git@git.haskell.org/ghc

On branch  : master
Link       : http://ghc.haskell.org/trac/ghc/changeset/9d06ef1ae451a145607301dc7556931b537a7d83/ghc

>---------------------------------------------------------------

commit 9d06ef1ae451a145607301dc7556931b537a7d83
Author: Bartosz Nitka <niteria at gmail.com>
Date:   Tue May 24 04:44:37 2016 -0700

    Make Arrow desugaring deterministic
    
    This kills two instances of varSetElems that turned out to be
    nondeterministic. I've tried to untangle this before, but it's
    a bit hard with the fixDs in the middle. Fortunately I now have
    a test case that proves that we need determinism here.
    
    Test Plan: ./validate, new testcase
    
    Reviewers: simonpj, simonmar, austin, bgamari
    
    Reviewed By: bgamari
    
    Subscribers: thomie
    
    Differential Revision: https://phabricator.haskell.org/D2258
    
    GHC Trac Issues: #4012


>---------------------------------------------------------------

9d06ef1ae451a145607301dc7556931b537a7d83
 compiler/coreSyn/CoreFVs.hs                        | 33 ++++++++++++
 compiler/deSugar/DsArrows.hs                       | 63 +++++++++++-----------
 compiler/utils/UniqDFM.hs                          |  7 ++-
 testsuite/driver/extra_files.py                    |  1 +
 testsuite/tests/determinism/determ018/A.hs         | 32 +++++++++++
 .../determinism/{determ010 => determ018}/Makefile  |  6 +--
 .../determinism/{determ003 => determ018}/all.T     |  4 +-
 .../determ018.stdout}                              |  0
 8 files changed, 109 insertions(+), 37 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 9d06ef1ae451a145607301dc7556931b537a7d83


More information about the ghc-commits mailing list