Mantis - Squeak
Viewing Issue Advanced Details
7467 Compiler major always 02-27-10 15:11 04-18-10 21:58
leves  
nicolas cellier  
normal  
closed trunk  
fixed  
none    
none trunk  
0007467: Cannot open debugger, because an assertion is failing in the decompiler code
Evaluating the following code raises a debugger which is coming from the decompiler, before #halt:
'1 0' readStream in: [ :input |
    | i |
    [
    input skipSeparators.
    i := Integer readFrom: input.
    i = 0 ] whileFalse: [
        | k count digits |
        k := 1.
        count := 0.
        digits := Array new: 10 withAll: 0.
        [ count < i ] whileTrue: [
            | index1 ps |
            ps := k printString.
            ((index1 := ps indexOf: $1) = 0 or: [ (ps indexOf: $3 startingAt: index1) = 0 ]) ifTrue: [
                count := count + 1.
                ps do: [ :each | digits at: each asciiValue - 47 put: (digits at: each asciiValue - 47) + 1 ] ].
                k := k + 1 ].
        self halt ] ]

Notes
(0013520)
nicolas cellier   
03-01-10 22:26   
See my comments in response to
http://lists.squeakfoundation.org/pipermail/squeak-dev/2010-March/145280.html [^]

I think I caught this bug, but some other could remain...
(0013521)
nicolas cellier   
03-01-10 22:27   
fixed in
http://source.squeak.org/trunk/Compiler-nice.129.mcz [^]

TO DO: add a non regression test...