VarArgCheapBlock.st
changeset 5351 f9529bd6b6e4
parent 2247 3e227e6ea1fb
child 5353 286dbcd4c605
--- a/VarArgCheapBlock.st	Sat Apr 01 15:05:54 2000 +0200
+++ b/VarArgCheapBlock.st	Sat Apr 01 15:28:48 2000 +0200
@@ -12,7 +12,9 @@
 
 
 
-CheapBlock subclass:#VarArgCheapBlock
+"{ Package: 'stx:libbasic' }"
+
+CheapBlock variableSubclass:#VarArgCheapBlock
 	instanceVariableNames:''
 	classVariableNames:''
 	poolDictionaries:''
@@ -50,6 +52,24 @@
 "
 ! !
 
+!VarArgCheapBlock class methodsFor:'initialization'!
+
+initialize
+    "must clear the is-block flag bit in the class
+     (otherwise, the VM might try to inline value-messages)"
+
+    flags := flags bitClear:(Behavior flagBlock).
+    flags := flags bitOr:(Behavior flagBlockLike).
+
+    "
+     self flags.       
+     self initialize.
+     self flags.      
+    "
+
+
+! !
+
 !VarArgCheapBlock methodsFor:'evaluation'!
 
 value
@@ -179,5 +199,6 @@
 !VarArgCheapBlock class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libbasic/VarArgCheapBlock.st,v 1.1 1997-01-23 14:23:52 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libbasic/VarArgCheapBlock.st,v 1.2 2000-04-01 13:28:34 cg Exp $'
 ! !
+VarArgCheapBlock initialize!