Mantis Bugtracker
  

Viewing Issue Advanced Details Jump to Notes ] View Simple ] 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 Platform
Status closed   OS
Projection none   OS Version
ETA none Fixed in Version 3.10 Product Version 3.10
  Product Build
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
Steps To Reproduce
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