On 24 October 2011 12:44, Marcus Denker <marcus.denker@inria.fr> wrote:
On Oct 24, 2011, at 12:40 PM, Marcus Denker wrote:
While looking I found
[:a :b :c| ] method tempNames  #('[a' 'b' 'c]')
For me there are two errors.
yes, this is wrong.
The real problem is that the CompiledMethod does not store any info about temp names, so you need to either go to the source text or (better) AST... and than there is Dan's clever hack that can save temp names in the method trailer to allow decompiling without sources, complicating the logic in addition.
Ah, and the temp-names embedded in the trailer is used excactly for DoIts... because normally the #tempNames should always return an empty list.
It only has meaning when using Dan's embedded temp-names in the trailer hack, which for the whole image nobody ever uses since years.
yes, i think this is too much effort(s) for displaying a do-it temp names in debugger. As you said, it is possible to embed temps into compiled method, but it is largely unused in system, and used only for doits. Definitely, the way how (often) we using it in our system(s) was not worth spending manhours implementing it.
    Marcus
-- Marcus Denker -- http://marcusdenker.de
-- Best regards, Igor Stasenko.