[Pkg] The Trunk: Kernel-ar.320.mcz

commits at source.squeak.org commits at source.squeak.org
Fri Dec 4 22:14:42 UTC 2009


Andreas Raab uploaded a new version of Kernel to project The Trunk:
http://source.squeak.org/trunk/Kernel-ar.320.mcz

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

Name: Kernel-ar.320
Author: ar
Time: 4 December 2009, 2:14:06 am
UUID: 3be1d86a-629f-ef4a-ab4c-7b7643c2aab0
Ancestors: Kernel-ul.319

Signal OutOfMemory instead of calling signalLowSpace.

=============== Diff against Kernel-ul.319 ===============

Item was changed:
  ----- Method: Behavior>>basicNew (in category 'instance creation') -----
  basicNew
  	"Primitive. Answer an instance of the receiver (which is a class) with no 
  	indexable variables. Fail if the class is indexable. Essential. See Object 
  	documentation whatIsAPrimitive."
  
  	<primitive: 70>
  	self isVariable ifTrue: [ ^ self basicNew: 0 ].
  	"space must be low"
+ 	OutOfMemory signal.
- 	self environment signalLowSpace.
  	^ self basicNew  "retry if user proceeds"
  !

Item was changed:
  ----- Method: Behavior>>basicNew: (in category 'instance creation') -----
  basicNew: sizeRequested 
  	"Primitive. Answer an instance of this class with the number
  	of indexable variables specified by the argument, sizeRequested.
  	Fail if this class is not indexable or if the argument is not a
  	positive Integer, or if there is not enough memory available. 
  	Essential. See Object documentation whatIsAPrimitive."
  
  	<primitive: 71>
  	self isVariable ifFalse:
  		[self error: self printString, ' cannot have variable sized instances'].
  	(sizeRequested isInteger and: [sizeRequested >= 0]) ifTrue:
  		["arg okay; space must be low."
+ 		OutOfMemory signal.
- 		self environment signalLowSpace.
  		^ self basicNew: sizeRequested  "retry if user proceeds"].
  	self primitiveFailed!

Item was changed:
  ----- Method: CompiledMethod class>>newMethod:header: (in category 'instance creation') -----
  newMethod: numberOfBytes header: headerWord 
  	"Primitive. Answer an instance of me. The number of literals (and other 
  	information) is specified the headerWord. The first argument specifies 
  	the number of fields for bytecodes in the method. Fail if either 
  	argument is not a SmallInteger, or if numberOfBytes is negative. Once 
  	the header of a method is set by this primitive, it cannot be changed in 
  	any way. Essential. See Object documentation whatIsAPrimitive."
  
  	<primitive: 79>
  	(numberOfBytes isInteger and:
  	 [headerWord isInteger and:
  	 [numberOfBytes >= 0]]) ifTrue: [
  		"args okay; space must be low"
+ 		OutOfMemory signal.
- 		Smalltalk signalLowSpace.
  		"retry if user proceeds"
  		^ self newMethod: numberOfBytes header: headerWord
  	].
  	^self primitiveFailed!



More information about the Packages mailing list