MessageNode.st
changeset 2343 e3c3dad6a800
parent 2331 471a6febf163
child 2344 4cfbc5060382
equal deleted inserted replaced
2342:d598edf31ef3 2343:e3c3dad6a800
   728         ].
   728         ].
   729     ].
   729     ].
   730 
   730 
   731     (nargs == 1) ifTrue:[
   731     (nargs == 1) ifTrue:[
   732         (recType == #ThisContext) ifTrue:[
   732         (recType == #ThisContext) ifTrue:[
   733             valueNeeded ifFalse:[
   733             (selector == #return:) ifTrue:[
   734                 (selector == #return:) ifTrue:[
   734                 arg1 codeOn:aStream inBlock:b for:aCompiler.  "^ value"
   735                     arg1 codeOn:aStream inBlock:b for:aCompiler.  "^ value"
   735                 aStream nextPut:#retTop.
   736                     aStream nextPut:#retTop.
   736                 valueNeeded ifTrue:[
   737                     ^ self
   737                     "/ although we know, that it is useless, we generate a push-nil
       
   738                     "/ to make any stack-checkers happy.
       
   739                     aStream nextPut:#pushNil.
   738                 ].
   740                 ].
       
   741                 ^ self.
   739              ].
   742              ].
   740         ].
   743         ].
   741 
   744 
   742         ((selector == #ifNil:) or:[selector == #ifNotNil:]) ifTrue:[
   745         ((selector == #ifNil:) or:[selector == #ifNotNil:]) ifTrue:[
   743             receiver isBlock ifFalse:[
   746             receiver isBlock ifFalse:[
  2990 ! !
  2993 ! !
  2991 
  2994 
  2992 !MessageNode class methodsFor:'documentation'!
  2995 !MessageNode class methodsFor:'documentation'!
  2993 
  2996 
  2994 version
  2997 version
  2995     ^ '$Header: /cvs/stx/stx/libcomp/MessageNode.st,v 1.171 2010-02-01 16:20:44 cg Exp $'
  2998     ^ '$Header: /cvs/stx/stx/libcomp/MessageNode.st,v 1.172 2010-04-13 09:49:37 cg Exp $'
  2996 !
  2999 !
  2997 
  3000 
  2998 version_CVS
  3001 version_CVS
  2999     ^ '$Header: /cvs/stx/stx/libcomp/MessageNode.st,v 1.171 2010-02-01 16:20:44 cg Exp $'
  3002     ^ '$Header: /cvs/stx/stx/libcomp/MessageNode.st,v 1.172 2010-04-13 09:49:37 cg Exp $'
  3000 ! !
  3003 ! !