CascadeNode.st
changeset 2700 f894f188aefc
parent 2693 7fbb7817a5e2
child 3155 5ab5d8ad71ed
--- a/CascadeNode.st	Mon Sep 12 17:27:58 2011 +0200
+++ b/CascadeNode.st	Wed Sep 14 10:45:34 2011 +0200
@@ -57,6 +57,7 @@
                                 receiverNode := self realReceiver "receiver" asTranslatorNodeIn: aTMethod.   
                                 receiverNode isLeaf ifFalse:
                                         [| varNode |
+
                                          varNode := aTMethod newCascadeTempFor: receiverNode.
                                          s nextPut: (Squeak::TAssignmentNode new
                                                                 setVariable: varNode
@@ -64,9 +65,9 @@
                                         receiverNode := varNode].
                                 self messages do:
                                         [ :msg | s nextPut: ((msg asTranslatorNodeIn: aTMethod) receiver: receiverNode)]]);
-                comment: (comments firstIfEmpty:nil)
+                comment: ((comments ? #()) firstIfEmpty:nil)
 
-    "Modified: / 12-09-2011 / 10:18:44 / cg"
+    "Modified: / 14-09-2011 / 10:41:14 / cg"
 !
 
 realReceiver
@@ -79,7 +80,7 @@
     [r isCascade] whileTrue:[
         r := r receiver.
     ].
-    ^ r
+    ^ r receiver
 
     "Created: / 12-09-2011 / 10:01:48 / cg"
 ! !
@@ -250,9 +251,9 @@
 !CascadeNode class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libcomp/CascadeNode.st,v 1.30 2011-09-12 08:18:55 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libcomp/CascadeNode.st,v 1.31 2011-09-14 08:45:34 cg Exp $'
 !
 
 version_CVS
-    ^ '$Header: /cvs/stx/stx/libcomp/CascadeNode.st,v 1.30 2011-09-12 08:18:55 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libcomp/CascadeNode.st,v 1.31 2011-09-14 08:45:34 cg Exp $'
 ! !