So with apparently removing the fifth line of MethodContext>>#sourceNode solves 
the problem, i.e by replacing:

sourceNode
        |  activePC |
        activePC := pc 
                ifNil: [ self startpc + 1]
                ifNotNil: [pc - 1].
        activePC <= self startpc ifTrue: [ activePC := pc ].
        ^(method sourceNodeForPC: activePC) methodOrBlockNode

with: 

sourceNode
        |  activePC |
        activePC := pc 
                ifNil: [ self startpc + 1]
                ifNotNil: [pc - 1].
        ^(method sourceNodeForPC: activePC) methodOrBlockNode

But I don't know of its correct, need an expert review :)


On 26 janv. 2014, at 10:07, Camille Teruel <[email protected]> wrote:

> [ [  ] ] 
> prints:
> [ ] 
> instead of: 
> [ [ ] ]
> 
> and
> [ :arg | [ arg ] ]
> prints:
> DoIt
>       ^ [ :arg | [ arg ] ] yourself
> instead of: 
> [ :arg | [ arg ] ]
> 
> 
> Apparently it's the print that is not correct because of problem in 
> #sourceNode.
> Any clue? Marcus? Clément?

Reply via email to