[GHC] #13184: :show bindings broken under -fexternal-interpreter

GHC ghc-devs at haskell.org
Tue Jul 17 00:47:34 UTC 2018


#13184: :show bindings broken under -fexternal-interpreter
-------------------------------------+-------------------------------------
        Reporter:  niteria           |                Owner:  (none)
            Type:  bug               |               Status:  new
        Priority:  low               |            Milestone:
       Component:  GHCi              |              Version:  8.0.1
      Resolution:                    |             Keywords:  RemoteGHCi
Operating System:  Unknown/Multiple  |         Architecture:
                                     |  Unknown/Multiple
 Type of failure:  None/Unknown      |            Test Case:
      Blocked By:                    |             Blocking:
 Related Tickets:                    |  Differential Rev(s):
       Wiki Page:                    |
-------------------------------------+-------------------------------------

Comment (by Ben Gamari <ben@…>):

 In [changeset:"3bdf0d01ff47977830ada30ce85f174098486e23/ghc" 3bdf0d0/ghc]:
 {{{
 #!CommitTicketReference repository="ghc"
 revision="3bdf0d01ff47977830ada30ce85f174098486e23"
 Support the GHCi debugger with -fexternal-interpreter

 * All the tests in tests/ghci.debugger now pass with
   -fexternal-interpreter. These tests are now run with the ghci-ext way
   in addition to the normal way so we won't break it in the future.

 * I removed all the unsafeCoerce# calls from RtClosureInspect. Yay!

 The main changes are:

 * New messages: GetClosure and Seq.  GetClosure is a remote interface to
   GHC.Exts.Heap.getClosureData, which required Binary instances for
   various datatypes. Fortunately this wasn't too painful thanks to
   DeriveGeneric.

 * No cheating by unsafeCoercing values when printing them. Now we have
   to turn the Closure representation back into the native representation
   when printing Int, Float, Double, Integer and Char. Of these, Integer
   was the most painful - we now have a dependency on integer-gmp due to
   needing access to the representation.

 * Fixed a bug in rts/Heap.c - it was bogusly returning stack content as
   pointers for an AP_STACK closure.

 Test Plan:
 * `cd testsuite/tests/ghci.debugger && make`
 * validate

 Reviewers: bgamari, patrickdoc, nomeata, angerman, hvr, erikd, goldfire

 Subscribers: alpmestan, snowleopard, rwbarton, thomie, carter

 GHC Trac Issues: #13184

 Differential Revision: https://phabricator.haskell.org/D4955
 }}}

-- 
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/13184#comment:2>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler


More information about the ghc-tickets mailing list