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 <camille.teruel@gmail.com> 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?