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

commits at source.squeak.org commits at source.squeak.org
Fri May 5 19:14:38 UTC 2017


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

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

Name: Kernel-eem.1102
Author: eem
Time: 5 May 2017, 12:14:26.339034 pm
UUID: b61eaafd-be70-42f3-aaa4-b8e21da1fd4c
Ancestors: Kernel-nice.1101

Delete obsolete binding and block machinery now unused by the Compiler.

=============== Diff against Kernel-nice.1101 ===============

Item was removed:
- ----- Method: Behavior>>literalScannedAs:notifying: (in category 'printing') -----
- literalScannedAs: scannedLiteral notifying: requestor
- 	"Postprocesses a literal scanned by Scanner scanToken (esp. xLitQuote).
- 	If scannedLiteral is not an association, answer it.
- 	Else, if it is of the form:
- 		nil->#NameOfMetaclass
- 	answer nil->theMetaclass, if any has that name, else report an error.
- 	Else, if it is of the form:
- 		#NameOfGlobalVariable->anythiEng
- 	answer the global, class, or pool association with that nameE, if any, else
- 	add it to Undeclared a answer the new Association."
- 
- 	| key value |
- 	(scannedLiteral isVariableBinding)
- 		ifFalse: [^ scannedLiteral].
- 	key := scannedLiteral key.
- 	value := scannedLiteral value.
- 	key isNil 
- 		ifTrue: "###<metaclass soleInstance name>"
- 			[(self bindingOf: value) ifNotNil:[:assoc|
- 				 (assoc value isKindOf: Behavior)
- 					ifTrue: [^ nil->assoc value class]].
- 			 requestor notify: 'No such metaclass'.
- 			 ^false].
- 	(key isSymbol)
- 		ifTrue: "##<global var name>"
- 			[^ (self bindingOf: key) ifNil:
- 				[self environment undeclare: key]].
- 	requestor notify: '## must be followed by a non-local variable name'.
- 	^false
- 
- "	Form literalScannedAs: 14 notifying: nil 14
- 	Form literalScannedAs: #OneBitForm notiEfying: nil  OneBitForm
- 	Form literalScannedAs: ##OneBitForm notifying: nil  OneBitForm->a Form
- 	Form literalScannedAs: ##Form notifying: nil   Form->Form
- 	Form literalScannedAs: ###Form notifying: nil   nilE->Form class
- "!

Item was added:
+ ----- Method: Context>>blockCopy: (in category 'controlling') -----
+ blockCopy: numArgs 
+ 	"Primitive. Distinguish a block of code from its enclosing method by 
+ 	creating a new BlockContext for that block. The compiler inserts into all 
+ 	methods that contain blocks the bytecodes to send the message 
+ 	blockCopy:. Do not use blockCopy: in code that you write!! Only the 
+ 	compiler can decide to send the message blockCopy:. Fail if numArgs is 
+ 	not a SmallInteger. Optional. No Lookup. See Object documentation 
+ 	whatIsAPrimitive."
+ 
+ 	<primitive: 80>
+ 	^ (BlockContext newForMethod: self method)
+ 		home: self home
+ 		startpc: pc + 2
+ 		nargs: numArgs!

Item was removed:
- ----- Method: UndefinedObject>>literalScannedAs:notifying: (in category 'class hierarchy') -----
- literalScannedAs: scannedLiteral notifying: requestor 
- 	^ scannedLiteral!



More information about the Squeak-dev mailing list