The Trunk: Kernel-ar.320.mcz

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

The Trunk: Kernel-ar.320.mcz

commits-2
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!