- 19 Apr, 2007 7 commits
-
-
Simon Marlow authored
when stopped at a breakpoint we now get: [Test3.hs:2:17-30] *Main> when there is a stack of breakpoints, we get: ... [Test3.hs:2:17-30] *Main> showing just the topmost one. Better suggestions are welcome, but this seems not too bad to me.
-
Simon Marlow authored
-
Simon Marlow authored
-
Simon Marlow authored
":list" shows the code around the current breakpoint. Also it highlights the current expression in bold (the bold/unbold codes are hardwired to the ANSI codes right now, I'll provide a way to change them later). ":set stop <cmd>" causes <cmd> to be run each time we stop at a breakpoint. In particular, ":set stop :list" is particularly useful.
-
Simon Marlow authored
-
Simon Marlow authored
we shouldn't be binding 'it' until the computation has actually finished.
-
Simon Marlow authored
-
- 18 Apr, 2007 1 commit
-
-
Simon Marlow authored
-
- 19 Apr, 2007 2 commits
- 14 Apr, 2007 1 commit
-
-
mnislaih authored
-
- 30 Mar, 2007 1 commit
-
-
mnislaih authored
When I factored the GhciMonad out of InteractiveUI.hs, I forgot to expose it in the ghc package
-
- 18 Apr, 2007 14 commits
-
-
simonpj@microsoft.com authored
The bat-script generation was using the wrong paths, in ghc-inplace ghc-pkg hsc2hs plus there was a double-backslah in the latter two which was wrong. This patch fixes both. See "MSys Note 3" in compiler/Makefile
-
Ian Lynagh authored
-
Simon Marlow authored
This is a bit hacky; it grabs the source location from the Name and tries to set a breakpoint at that location, which in most cases should be the breakpoint covering the whole definition.
-
Simon Marlow authored
-
Simon Marlow authored
-
Simon Marlow authored
So that we don't accumulate bindings from previous breakpoints, which could lead to a space leak.
-
Simon Marlow authored
-
Simon Marlow authored
-
Simon Marlow authored
-
Simon Marlow authored
-
Ian Lynagh authored
-
Simon Marlow authored
-
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
-
Simon Marlow authored
-
- 17 Apr, 2007 1 commit
-
-
Simon Marlow authored
-
- 18 Apr, 2007 1 commit
-
-
Ian Lynagh authored
-
- 10 Apr, 2007 1 commit
-
-
twhitehe@uwo.ca authored
Distinguish between userError (i.e., deliberate failure) and other immediate and embedded exceptions for TH splices for trac #1265
-
- 17 Apr, 2007 3 commits
-
-
Simon Marlow authored
This is the result of Bernie Pope's internship work at MSR Cambridge, with some subsequent improvements by me. The main plan was to (a) Reduce the overhead for breakpoints, so we could enable the feature by default without incurrent a significant penalty (b) Scatter more breakpoint sites throughout the code Currently we can set a breakpoint on almost any subexpression, and the overhead is around 1.5x slower than normal GHCi. I hope to be able to get this down further and/or allow breakpoints to be turned off. This patch also fixes up :print following the recent changes to constructor info tables. (most of the :print tests now pass) We now support single-stepping, which just enables all breakpoints. :step <expr> executes <expr> with single-stepping turned on :step single-steps from the current breakpoint The mechanism is quite different to the previous implementation. We share code with the HPC (haskell program coverage) implementation now. The coverage pass annotates source code with "tick" locations which are tracked by the coverage tool. In GHCi, each "tick" becomes a potential breakpoint location. Previously breakpoints were compiled into code that magically invoked a nested instance of GHCi. Now, a breakpoint causes the current thread to block and control is returned to GHCi. See the wiki page for more details and the current ToDo list: http://hackage.haskell.org/trac/ghc/wiki/NewGhciDebugger
-
Simon Marlow authored
-
Simon Marlow authored
-
- 16 Apr, 2007 8 commits
-
-
Simon Marlow authored
-
Ian Lynagh authored
-
Ian Lynagh authored
-
Simon Marlow authored
now instead of setting GCC_EXEC_PREFIX, we just add the appropriate gcc-lib directory to the front of PATH before invoking gcc.
-
Simon Marlow authored
We changed the convention a while ago so that BaseReg is returned to the scheduler in R1, because BaseReg may change during the run of a thread, e.g. during a foreign call. A few places got missed, mostly for very rare events. Should fix concprog001, although I'm not able to reliably reproduce the failure.
-
Ian Lynagh authored
-
Ian Lynagh authored
-
Simon Marlow authored
See #1277
-