[commit: ghc] wip/ghc-8.0-det: Make inert_model and inert_eqs deterministic sets (fbccc0b)

git at git.haskell.org git at git.haskell.org
Mon Jul 25 14:58:51 UTC 2016


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

On branch  : wip/ghc-8.0-det
Link       : http://ghc.haskell.org/trac/ghc/changeset/fbccc0b61184bf93c1135b87c2dc0687ca4a6976/ghc

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

commit fbccc0b61184bf93c1135b87c2dc0687ca4a6976
Author: Bartosz Nitka <niteria at gmail.com>
Date:   Tue May 17 05:45:43 2016 -0700

    Make inert_model and inert_eqs deterministic sets
    
    The order inert_model and intert_eqs fold affects the order that the
    typechecker looks at things. I've been able to experimentally confirm
    that the order of equalities and the order of the model matter for
    determinism. This is just a straigthforward replacement of
    nondeterministic VarEnv for deterministic DVarEnv.
    
    Test Plan: ./validate
    
    Reviewers: simonpj, goldfire, austin, bgamari, simonmar
    
    Reviewed By: simonmar
    
    Subscribers: thomie
    
    Differential Revision: https://phabricator.haskell.org/D2232
    
    GHC Trac Issues: #4012
    
    (cherry picked from commit fffe3a25adab41d44943ed1be0191cf570d3e154)


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

fbccc0b61184bf93c1135b87c2dc0687ca4a6976
 compiler/basicTypes/VarEnv.hs                      | 28 +++++++++--
 compiler/typecheck/TcFlatten.hs                    |  4 +-
 compiler/typecheck/TcInteract.hs                   |  2 +-
 compiler/typecheck/TcSMonad.hs                     | 58 +++++++++++-----------
 compiler/utils/UniqDFM.hs                          | 22 +++++++-
 .../tests/indexed-types/should_fail/T3330a.stderr  |  5 +-
 .../tests/indexed-types/should_fail/T4174.stderr   |  4 +-
 .../tests/indexed-types/should_fail/T4179.stderr   |  6 +--
 .../tests/indexed-types/should_fail/T9662.stderr   |  4 +-
 testsuite/tests/polykinds/T9017.stderr             |  4 +-
 testsuite/tests/typecheck/should_fail/T7869.stderr |  8 ++-
 11 files changed, 93 insertions(+), 52 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 fbccc0b61184bf93c1135b87c2dc0687ca4a6976


More information about the ghc-commits mailing list