Eliot Miranda uploaded a new version of Compiler to project The Trunk:
http://source.squeak.org/trunk/Compiler-eem.157.mcz==================== Summary ====================
Name: Compiler-eem.157
Author: eem
Time: 14 August 2010, 8:26:40.54 pm
UUID: 3ac53cb6-e964-4315-b7ad-262434f9870e
Ancestors: Compiler-eem.156
Log class def on declare inst and class var.
Fix typo in ParseNodeVisitor>>visitMessageNode:
=============== Diff against Compiler-eem.156 ===============
Item was changed:
----- Method: Parser>>declareClassVar: (in category 'error correction') -----
declareClassVar: name
| sym class |
sym := name asSymbol.
class := encoder classEncoding.
class := class theNonMetaClass. "not the metaclass"
class addClassVarName: name.
+ Smalltalk logChange: class definition.
^ encoder global: (class classPool associationAt: sym)
name: sym!
Item was changed:
----- Method: Parser>>declareInstVar: (in category 'error correction') -----
declareInstVar: name
"Declare an instance variable. Since the variable will get added after any existing
inst vars its index is the instSize."
encoder classEncoding addInstVarName: name.
+ Smalltalk logChange: encoder classEncoding definition.
^InstanceVariableNode new name: name index: encoder classEncoding instSize
!
Item was changed:
----- Method: ParseNodeVisitor>>visitMessageNode: (in category 'visiting') -----
+ visitMessageNode: aMessageNode
- visitMessageNode: aMessageNode.
aMessageNode receiver accept: self.
"receiver notNil ifTrue: ''receiver is nil for cascades''
[receiver accept: self]."
aMessageNode selector accept: self.
aMessageNode argumentsInEvaluationOrder do:
[:argument| argument accept: self]!