--- a/MessageNode.st Sun Feb 23 04:23:50 2014 +0100
+++ b/MessageNode.st Tue Feb 25 15:30:06 2014 +0100
@@ -1520,7 +1520,9 @@
eachCaseArg isMessage ifFalse:[ ^ false].
eachCaseArg selector == #'->' ifFalse:[ ^ false].
eachCaseArg receiver isBlock ifFalse:[ ^ false].
- (caseBlock := eachCaseArg arg1) isBlock ifFalse:[ ^ false].
+ (caseBlock := eachCaseArg arg1) isBlock ifFalse:[
+ caseBlock isVariable ifFalse:[ ^ false].
+ ].
"the case-value-block must consist of a single expression"
eachCaseArg receiver isSingleExpressionBlock ifFalse:[ ^ false].
(caseValueExpression := eachCaseArg receiver simpleSendBlockExpression) notNil ifFalse:[ ^ false].
@@ -1563,7 +1565,9 @@
].
argArray size > 1 ifTrue:[
otherwiseArg := argArray at:2.
- otherwiseArg isBlock ifFalse:[^ false]
+ otherwiseArg isBlock ifFalse:[
+ otherwiseArg isVariable ifFalse:[^ false]
+ ]
].
"compile as a nested if"
@@ -3392,11 +3396,11 @@
!MessageNode class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libcomp/MessageNode.st,v 1.207 2014-02-12 23:47:06 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libcomp/MessageNode.st,v 1.208 2014-02-25 14:30:06 cg Exp $'
!
version_CVS
- ^ '$Header: /cvs/stx/stx/libcomp/MessageNode.st,v 1.207 2014-02-12 23:47:06 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libcomp/MessageNode.st,v 1.208 2014-02-25 14:30:06 cg Exp $'
!
version_SVN