~ chicken-core (chicken-5) bf5c355fd8f3e81798d0072370fd51459d38a2f1
commit bf5c355fd8f3e81798d0072370fd51459d38a2f1
Author: unknown <felix@.(none)>
AuthorDate: Thu Nov 5 09:53:42 2009 +0100
Commit: unknown <felix@.(none)>
CommitDate: Thu Nov 5 09:53:42 2009 +0100
fixed bug in optimizer (#99) (reported by Joerg Wittenberger) related to inlining
diff --git a/support.scm b/support.scm
index 8cac05bd..7501f664 100644
--- a/support.scm
+++ b/support.scm
@@ -608,7 +608,12 @@
[params (node-parameters n)]
[class (node-class n)] )
(case class
- [(##core#variable) (varnode (rename (first params) rl))]
+ [(##core#variable)
+ (let ((var (first params)))
+ (when (get db var 'contractable)
+ (debugging 'x "un-marking contractable" var)
+ (put! db var 'contractable #f) )
+ (varnode (rename var rl))) ]
[(set!)
(make-node
'set! (list (rename (first params) rl))
Trap