Issue http://code.google.com/p/pharo/issues/detail?id=743

2009/4/15 Nicolas Cellier <[email protected]>:
> 2009/4/15 Damien Cassou <[email protected]>:
>> 2009/4/15 Dennis Schetinin <[email protected]>:
>>> [: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
>> [email protected]
>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>
>

_______________________________________________
Pharo-project mailing list
[email protected]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

Reply via email to