[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