[commit: ghc] master: Trac #9878: Make the static form illegal in interpreted mode. (fffbf06)

git at git.haskell.org git at git.haskell.org
Fri Jan 16 16:14:51 UTC 2015


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

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

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

commit fffbf0627c2c2ee4bc49f9d26a226b39a066945e
Author: Alexander Vershilov <alexander.vershilov at tweag.io>
Date:   Wed Jan 14 17:58:30 2015 -0600

    Trac #9878: Make the static form illegal in interpreted mode.
    
    Summary:
    The entries of the static pointers table are expected to exist as
    object code. Thus we have ghci complain with an intelligible error
    message if the static form is used in interpreted mode.
    
    It also includes a fix to keysHashTable in Hash.c which could cause a
    crash. The iteration of the hashtable internals was incorrect. This
    patch has the function keysHashTable imitate the iteration in
    freeHashTable.
    
    Finally, we submit here some minor edits to comments and
    GHC.StaticPtr.StaticPtrInfo field names.
    
    Authored-by: Alexander Vershilov <alexander.vershilov at tweag.
    Authored-by: Facundo Domínguez <facundo.dominguez at tweag.io>
    
    Test Plan: ./validate
    
    Reviewers: simonpj, hvr, austin
    
    Reviewed By: austin
    
    Subscribers: carter, thomie, qnikst, mboes
    
    Differential Revision: https://phabricator.haskell.org/D586
    
    GHC Trac Issues: #9878


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

fffbf0627c2c2ee4bc49f9d26a226b39a066945e
 compiler/deSugar/DsExpr.hs                         |  4 ++--
 compiler/rename/RnExpr.hs                          |  9 ++++++++
 includes/rts/StaticPtrTable.h                      |  4 ++--
 libraries/base/GHC/StaticPtr.hs                    |  4 ++--
 rts/Hash.c                                         | 24 ++++++++++++++--------
 .../deSugar/should_run/DsStaticPointers.stdout     | 10 ++++-----
 testsuite/tests/ghci/scripts/T9878.hs              |  6 ++++++
 testsuite/tests/ghci/scripts/T9878.script          |  1 +
 testsuite/tests/ghci/scripts/T9878.stderr          |  4 ++++
 testsuite/tests/ghci/scripts/T9878b.script         |  2 ++
 .../tests/ghci/scripts/T9878b.stdout               |  0
 testsuite/tests/ghci/scripts/all.T                 |  7 +++++++
 12 files changed, 56 insertions(+), 19 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 fffbf0627c2c2ee4bc49f9d26a226b39a066945e


More information about the ghc-commits mailing list