Breakpoints

Pepe Iborra mnislaih at gmail.com
Wed Dec 20 05:00:18 EST 2006


Thanks Simon, I will be looking into these asap. I'm taking a plane  
back home tomorrow morning after some weeks abroad, so it might take  
me a few days to catch up.

See some more comments inlined below

On 20/12/2006, at 10:49, Simon Marlow wrote:

> Hi Pepe,
>
> I played around with breakpoints a little today, they seem to work  
> pretty well - nice going!  I discovered a few minor issues that you  
> might be able to clear up:
>
>   - I can't seem to set a breakpoint on 'main'.  In fact, in a file  
> that
>     contains only 'main', I get:
> *Main> :break add Main 1
> *** Exception: Module main:Main was not loaded under debugging  
> mode. Enable debugging mode and reload it
>
>     even though I have -fdebugging turned on.
>

This might be due to breakpoint coalescing. If there are no local  
bindings at a site, the breakpoint is not inserted at instrumentation  
time.
And there is a possible explanation for the error message. It might  
be that in a file with no breakpoints at all, ghci erroneously  
reports that the file was not loaded under debugging mode, when in  
fact it was.
Should we disable this form of coalescing to minimize end user  
confusion, or include a bold disclaimer in the manual and/or the  
error message?

>   - we should really let you say ':break add M.f' to add a  
> breakpoint to
>     a top-level binding.  It shouldn't be too hard to do this.
>   - when GHCi stops at a breakpoint, it should announce the fact, eg.
>     "stopped at breakpoint N, module M, M.hs:38:20"
>
>   - really minor one: the help text for :sprint goes over 80 columns
>
> Cheers,
> 	Simon



More information about the Cvs-ghc mailing list