Yet another show stopper in Squeak:
http://bugs.impara.de/view.php?id=4636 Quite a dangerous thing, if you are not aware of it. Cheers, Lukas -- Lukas Renggli http://www.lukas-renggli.ch |
Isn't this a direct consequence of the fact that block arguments are just temps in disguise? Oscar On Aug 24, 2006, at 9:59, Lukas Renggli wrote: > Yet another show stopper in Squeak: > > http://bugs.impara.de/view.php?id=4636 > > Quite a dangerous thing, if you are not aware of it. > > Cheers, > Lukas > > -- > Lukas Renggli > http://www.lukas-renggli.ch |
In reply to this post by Lukas Renggli
Hi Lukas,
the issue is well known, has been complained about in squeak-dev times and again, and is addressed by the new compiler. The latter might be worth a try in your situation. /Klaus On Thu, 24 Aug 2006 09:59:49 +0200, Lukas Renggli <[hidden email]> wrote: > Yet another show stopper in Squeak: > > http://bugs.impara.de/view.php?id=4636 > > Quite a dangerous thing, if you are not aware of it. > > Cheers, > Lukas > |
In reply to this post by Oscar Nierstrasz
No, it works if you rename the block arguments.
Philippe 2006/8/24, Oscar Nierstrasz <[hidden email]>: > > Isn't this a direct consequence of the fact that block arguments are > just temps in disguise? > > Oscar > > On Aug 24, 2006, at 9:59, Lukas Renggli wrote: > > > Yet another show stopper in Squeak: > > > > http://bugs.impara.de/view.php?id=4636 > > > > Quite a dangerous thing, if you are not aware of it. > > > > Cheers, > > Lukas > > > > -- > > Lukas Renggli > > http://www.lukas-renggli.ch > > > |
In reply to this post by Oscar Nierstrasz
On Thu, 24 Aug 2006 11:02:23 +0200, Oscar Nierstrasz wrote:
> Isn't this a direct consequence of the fact that block arguments are > just temps in disguise? Exactly. But they have to be so for the reconstruction procedure in the "old" Decompiler: a design decision which can be seen as the cause of the mess (no critique at all, I love decompiled code ;-) /Klaus > Oscar > > On Aug 24, 2006, at 9:59, Lukas Renggli wrote: > >> Yet another show stopper in Squeak: >> >> http://bugs.impara.de/view.php?id=4636 >> >> Quite a dangerous thing, if you are not aware of it. >> >> Cheers, >> Lukas >> >> --Lukas Renggli >> http://www.lukas-renggli.ch > > > |
In reply to this post by Philippe Marschall
Yes. And if the compiler/parser where running on a COMPUTER, an
appropriate error message could be issued: 'arg name cannot be resused' ;-) /Klaus On Thu, 24 Aug 2006 11:01:41 +0200, Philippe Marschall wrote: > No, it works if you rename the block arguments. > > Philippe > > 2006/8/24, Oscar Nierstrasz <[hidden email]>: >> >> Isn't this a direct consequence of the fact that block arguments are >> just temps in disguise? >> >> Oscar >> >> On Aug 24, 2006, at 9:59, Lukas Renggli wrote: >> >> > Yet another show stopper in Squeak: >> > >> > http://bugs.impara.de/view.php?id=4636 >> > >> > Quite a dangerous thing, if you are not aware of it. >> > >> > Cheers, >> > Lukas >> > >> > -- >> > Lukas Renggli >> > http://www.lukas-renggli.ch >> >> >> > > |
> Yes. And if the compiler/parser where running on a COMPUTER, an
> appropriate error message could be issued: 'arg name cannot be resused' ;-) It doesn't make sense that the two arguments that are declared in different scopes are mapped to the same memory slot, even-tough they have the same name. Sorry, if this has been already reported before. I know that is is probably difficult to fix in the old compiler, I just wanted to make people aware of it. There are other critical concurrency issues in Squeak I reported before, this is just another one my friends discovered yesterday. This morning I wrote a test for it, so that the community knows when it is fixed. I would suggest to add such tests to the collection of Kernel Tests even if there are no fixes to be expected soon, so that everybody is aware that there are things in Squeak that are simply broken (by design). > >> Isn't this a direct consequence of the fact that block arguments are > >> just temps in disguise? Exactly, if you have a look at the byte-code it reads the same temp-var. In VisualWorks it is using a different temp-var and this is, I think, what everybody would expect. Lukas -- Lukas Renggli http://www.lukas-renggli.ch |
Free forum by Nabble | Edit this page |