• Simon Marlow's avatar
    Various cleanups and improvements to the breakpoint support · 38e7ac3f
    Simon Marlow authored
      - move parts of the debugger implementation below the GHC API where
        they belong.  There is still more in Debugger that violates the
        layering, hopefully I'll get to that later.
    
      - instead of returning an IO action from runStmt for resuming,
        return a ResumeHandle that is passed to GHC.resume.
    
      - breakpoints now return [Name] which is displayed in the same
        way as when a binding statement is executed.
    
      - :load, :add, :reload now clear the active breakpoints and context
    
      - :break gives a sensible error when used on a non-interpreted module
    
      - export breakpoint-related types from GHC
    
      - remove a bunch of layer-violating imports from InteractiveUI
    
      - remove some more vestiges of the old breakpoint code (topLevel in
        the GHCi state).
    
      - remove TickTree and use a simple array instead, cached per module
    38e7ac3f
GHC.hs 83.5 KB