Mantis Bugtracker
  

Viewing Issue Simple Details Jump to Notes ] View Advanced ] Issue History ] Print ]
ID Category Severity Reproducibility Date Submitted Last Update
0006475 [Squeak] Kernel minor always 05-08-07 22:58 11-20-08 20:54
Reporter mathk View Status public  
Assigned To
Priority normal Resolution fixed  
Status closed   Product Version 3.10
Summary 0006475: BlockClosure comparaison goes to an infinit loop when closure inline himself
Description Taking this exemple:

A>>#foo
   i := 21. j := 0.
   b := [(i:= i-1) > 0 ifTrue: [j := j+1 . b value.] ifFalse:[j]] .
   b value

Use the NewCompiler and do: (A>>#foo) = (A>>#foo)

The attached patch fix the problem.

Thanks to Andrew to have discover the bug.
Edgar if you pass by don't worry I will add the test but now I need to go to sleep
Additional Information
Attached Files  FixComparingClosure.1.cs [^] (338 bytes) 05-08-07 22:58
 FixComparingClosure.2.cs [^] (1,491 bytes) 05-09-07 10:50
 FixComparingClosure.3.cs [^] (2,717 bytes) 05-10-07 09:32

- Relationships

- Notes
(0010687 - 32 - 32 - 32 - 32 - 32 - 32)
mathk
05-09-07 10:48

Attached file now have some test
 
(0010688 - 144 - 186 - 186 - 186 - 186 - 186)
mathk
05-10-07 09:34

Same bug for BlockClosure>>#hasLiteralThorough:

aBlockClosure hasLiteralThorough: #example

gose to an infinit loop

Attached file fix it
 
(0010898 - 62 - 62 - 62 - 62 - 62 - 62)
edgardec
07-19-07 20:21

Reminder sent to: mathk

Is safe I do one update ? Or yo wish work ont this some more ?
 
(0010906 - 56 - 80 - 80 - 80 - 80 - 80)
mathk
07-20-07 15:54
edited on: 07-20-07 15:54

Yes is should be safe.

It also fix some refactoring

 
(0010908 - 78 - 84 - 84 - 84 - 84 - 84)
edgardec
07-21-07 10:03

This now is 7129FixComparingClosure-3.cs and was in updates for 3.10
Thanks !
 
(0010964 - 86 - 98 - 226 - 226 - 226 - 226)
mathk
08-08-07 09:56

Hi my fix have one bugs.

I open a new issue http://bugs.squeak.org/view.php?id=6599 [^]
 
(0012793 - 55 - 55 - 55 - 55 - 55 - 55)
KenCausey
11-20-08 20:54

Harvested in update 7129 and released with Squeak 3.10.
 

- Issue History
Date Modified Username Field Change
05-08-07 22:58 mathk New Issue
05-08-07 22:58 mathk File Added: FixComparingClosure.1.cs
05-09-07 10:48 mathk Note Added: 0010687
05-09-07 10:50 mathk File Added: FixComparingClosure.2.cs
05-10-07 09:32 mathk File Added: FixComparingClosure.3.cs
05-10-07 09:34 mathk Note Added: 0010688
07-19-07 20:21 edgardec Note Added: 0010898
07-20-07 15:54 mathk Note Added: 0010906
07-20-07 15:54 mathk Note Edited: 0010906
07-21-07 10:03 edgardec Note Added: 0010908
07-28-07 23:04 wiz Status new => resolved
07-28-07 23:04 wiz Resolution open => fixed
07-28-07 23:04 wiz Fixed in Version  => 3.10
08-08-07 09:56 mathk Note Added: 0010964
08-11-07 04:39 wiz Status resolved => feedback
08-11-07 04:39 wiz Resolution fixed => reopened
11-20-08 20:54 KenCausey Status feedback => closed
11-20-08 20:54 KenCausey Note Added: 0012793
11-20-08 20:54 KenCausey Resolution reopened => fixed


Mantis 1.0.8[^]
Copyright © 2000 - 2007 Mantis Group
74 total queries executed.
44 unique queries executed.
Powered by Mantis Bugtracker