Issue http://code.google.com/p/pharo/issues/detail?id=743 2009/4/15 Nicolas Cellier <nicolas.cellier.aka.nice@gmail.com>:
2009/4/15 Damien Cassou <damien.cassou@gmail.com>:
2009/4/15 Dennis Schetinin <chaetal@gmail.com>:
[:a :b | a+b] decompile decompileString
gives '[:t1 :t2 | t1 + t2]'
(The same thing when I decompile block defined in method)
(In #decompileBlock:) the branch   method fileIndex ~~ 0 ifTrue: [...] finds all tempVar names including block's arguments but then they are eaten by  self initSymbols: homeClass where only tempVars defined by method itself survive...
... and I don't know how to fix it...
I think that is perfectly normal. The bytecode do not need the variable names, only their indices.
Yes but it is convenient to have a decompileString preserving those names. Also it would be interesting to check decompilation of nested blocks like:
[:i :j | (i to: j) collect: [:k | j-k+i]] decompile decompileString
'[:t1 :t2 | (t1 to: t2) Â Â Â Â Â Â Â Â collect: [:t1 | t2 - t1 + t1]]'
Argh a bug!
Nicolas
-- Damien Cassou http://damiencassou.seasidehosting.st
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project