[FIX] Re: Compiler+Decompiler together have a serious 'bad
case' bug
Klaus D. Witzel
klaus.witzel at cobss.com
Tue Jul 25 09:29:37 UTC 2006
Died (in 3.9b-7048) with the attached
(ByteString(Object)>>doesNotUnderstand: #between:and:), with temps
aStream: a LimitedWriteStream 'isRoot: t1 '
kwd: 'isRoot:'
arg: {t1}
temp: nil
each: <primitive: 'primitiveIsRoot'>
Does it make sense to check other builds / releases, is recompileAllTest
up-to-date?
/Klaus
On Tue, 25 Jul 2006 10:32:47 +0200, Bert Freudenberg wrote:
> Decompiler recompileAllTest
>
> - Bert -
>
> Am 23.07.2006 um 23:16 schrieb Klaus D. Witzel:
>
>> It works, your and my example no longer fail.
>>
>> Is there a routine to check the modified Decompiler against all source
>> coded methods?
>>
>> /Klaus
>>
>> On Sun, 23 Jul 2006 16:23:31 +0200, Bert Freudenberg wrote:
>>
>>> Simpler test case - in a Browser, add this method:
>>>
>>> test
>>> (self foo; bar)
>>> ifTrue: [1]
>>> ifFalse: [2]
>>>
>>> Then switch to "decompile" instead of "source".
>>>
>>> If the receiver of an ifTrue:ifFalse: is a cascade, the decompiler
>>> mistakes it for a case statement. I attached a fix for that, could
>>> someone please verify?
>>>
>>> - Bert -
>>>
>>>
>>> Am 22.07.2006 um 23:42 schrieb Klaus D. Witzel:
>>>
>>>> Sorry, hyperlink is
>>>>
>>>> - http://bugs.impara.de/view.php?id=4313
>>>>
>>>> /Klaus
>>>>
>>>> On Sat, 22 Jul 2006 23:37:07 +0200, Klaus D. Witzel
>>>> <klaus.witzel at cobss.com> wrote:
>>>>
>>>>> http://bugs.impara.de/view.php?id=2921
>>>>>
>>>>> You can provoke the emergency console by having Decompiler fail
>>>>> with self error:'bad case' in #send:super:numargs.
>>>>>
>>>>> The following trivial, innocent looking code snippet does it in
>>>>> 3.8 and 3.9:
>>>>>
>>>>> | x y |
>>>>> x := y := 0.
>>>>> {'a'. 'b'. 'c'} do: [:c|
>>>>> (c string halt; endsWith: 'd')
>>>>> ifTrue: [x:= 1 + x]
>>>>> ifFalse: [y:= 1 + y]]
>>>>>
>>>>> Strange, why should Decompiler be involved in a halt situation,
>>>>> and then, why should it refuse to decompile code?
>>>>>
>>>>> /Klaus
>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>>
>>>
>>
>>
>>
>
>
>
>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: SqueakDebug.log
Type: application/octet-stream
Size: 4367 bytes
Desc: not available
Url : http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20060725/ae3f88fc/SqueakDebug.obj
More information about the Squeak-dev
mailing list
|