[squeak-dev] The Trunk: Kernel-eem.1195.mcz

commits at source.squeak.org commits at source.squeak.org
Mon Nov 12 03:07:44 UTC 2018


Eliot Miranda uploaded a new version of Kernel to project The Trunk:
http://source.squeak.org/trunk/Kernel-eem.1195.mcz

==================== Summary ====================

Name: Kernel-eem.1195
Author: eem
Time: 11 November 2018, 7:06:29.274108 pm
UUID: 4269620a-8eb7-4581-a65a-33bf2ea1aa10
Ancestors: Kernel-eem.1194

Eliminate a confusing shadowing in Context>>send:super:numArgs:

=============== Diff against Kernel-eem.1194 ===============

Item was changed:
  ----- Method: Context>>send:super:numArgs: (in category 'instruction decoding') -----
  send: selector super: superFlag numArgs: numArgs
  	"Simulate the action of bytecodes that send a message with selector, 
+ 	 selector. The argument, superFlag, tells whether the receiver of the 
+ 	 message was specified with 'super' in the source method. The arguments 
+ 	 of the message are found in the top numArgs locations on the stack and 
+ 	 the receiver just below them."
- 	selector. The argument, superFlag, tells whether the receiver of the 
- 	message was specified with 'super' in the source method. The arguments 
- 	of the message are found in the top numArgs locations on the stack and 
- 	the receiver just below them."
  
+ 	| thisReceiver arguments lookupClass |
- 	| receiver arguments lookupClass |
  	arguments := Array new: numArgs.
  	numArgs to: 1 by: -1 do: [ :i | arguments at: i put: self pop].
+ 	thisReceiver := self pop.
- 	receiver := self pop.
  	lookupClass := superFlag
  					ifTrue: [method methodClassAssociation value superclass]
+ 					ifFalse: [self objectClass: thisReceiver].
- 					ifFalse: [self objectClass: receiver].
  	QuickStep == self ifTrue:
  		[QuickStep := nil.
+ 		^self quickSend: selector to: thisReceiver with: arguments lookupIn: lookupClass].
+ 	^self send: selector to: thisReceiver with: arguments lookupIn: lookupClass!
- 		^self quickSend: selector to: receiver with: arguments lookupIn: lookupClass].
- 	^self send: selector to: receiver with: arguments lookupIn: lookupClass!



More information about the Squeak-dev mailing list