This one looks strange and seems indeed to be dead code. Maybe it was an attempt to make a specific class definition keyword for CompiledMethod / CompiledCode / CompiledBlock. Right now there is a specific case in the code somewhere to use the specific compiledCode layout for those 3 classes instead of the byte layout which is normally used for the keyword variableByteSubclass: that those 3 classes use.
I am not sure immediateByteSubclass: makes sense though. I would rather have compiledCodeSubclass, variablePointerAndByteSubclass or something like that. On Fri, May 12, 2017 at 5:39 PM, Stephane Ducasse <[email protected]> wrote: > Hi > > with guille we are working on a class parser and our game is to make sure > that we can parse all the crazy class definitions among which > > variableWordSubclass: > ephemeronSubclass: > weakSubclass: > variableByteSubclass: > variableSubclass: > immediateSubclass: > subclass: aSubclassSymbol layout: > > And we found this method definition and it has no senders and we wonder if > it is just plain deadcode? > > immediateByteSubclass: className instanceVariableNames: instvarNames > classVariableNames: classVarNames package: package > "Added to allow for a simplified subclass creation experience. " > > ^ self > immediateSubclass: className > instanceVariableNames: instvarNames > classVariableNames: classVarNames > package: package > > S & G >
