David T. Lewis uploaded a new version of Monticello to project The Trunk: http://source.squeak.org/trunk/Monticello-dtl.672.mcz
==================== Summary ====================
Name: Monticello-dtl.672 Author: dtl Time: 6 August 2017, 12:25:45.326051 pm UUID: dfe33bfa-dc27-4c01-a1db-234bd7e4433c Ancestors: Monticello-eem.671
CompiledCode and its subclasses are a special case, and are identified as class type #compiledMethod rather than #bytes. An MCClassDefinition should identify this type correctly, otherwise changes to these classes may not be saved and reloaded correctly.
See MCClassDefinitionTest.
=============== Diff against Monticello-eem.671 ===============
Item was changed: ----- Method: MCClassDefinition>>initializeWithName:superclassName:category:instVarNames:classVarNames:poolDictionaryNames:classInstVarNames:type:comment:commentStamp: (in category 'initializing') ----- initializeWithName: nameString superclassName: superclassString category: categoryString instVarNames: ivarArray classVarNames: cvarArray poolDictionaryNames: poolArray classInstVarNames: civarArray type: typeSymbol comment: commentString commentStamp: stampStringOrNil name := nameString asSymbol. superclassName := superclassString ifNil: ['nil'] ifNotNil: [superclassString asSymbol]. category := categoryString. + (self isCompiledCode: name) ifTrue: [type := #compiledMethod] ifFalse: [type := typeSymbol]. - name = #CompiledMethod ifTrue: [type := #compiledMethod] ifFalse: [type := typeSymbol]. comment := commentString withSqueakLineEndings. commentStamp := stampStringOrNil ifNil: [self defaultCommentStamp]. variables := OrderedCollection new. self addVariables: ivarArray ofType: MCInstanceVariableDefinition. self addVariables: cvarArray sorted ofType: MCClassVariableDefinition. self addVariables: poolArray sorted ofType: MCPoolImportDefinition. self addVariables: civarArray ofType: MCClassInstanceVariableDefinition.!
Item was changed: ----- Method: MCClassDefinition>>initializeWithName:superclassName:traitComposition:classTraitComposition:category:instVarNames:classVarNames:poolDictionaryNames:classInstVarNames:type:comment:commentStamp: (in category 'initializing') ----- initializeWithName: nameString superclassName: superclassString traitComposition: traitCompositionString classTraitComposition: classTraitCompositionString category: categoryString instVarNames: ivarArray classVarNames: cvarArray poolDictionaryNames: poolArray classInstVarNames: civarArray type: typeSymbol comment: commentString commentStamp: stampStringOrNil name := nameString asSymbol. superclassName := superclassString ifNil: ['nil'] ifNotNil: [superclassString asSymbol]. traitComposition := traitCompositionString. classTraitComposition := classTraitCompositionString. category := categoryString. + (self isCompiledCode: name) ifTrue: [type := #compiledMethod] ifFalse: [type := typeSymbol]. - name = #CompiledMethod ifTrue: [type := #compiledMethod] ifFalse: [type := typeSymbol]. comment := commentString withSqueakLineEndings. commentStamp := stampStringOrNil ifNil: [self defaultCommentStamp]. variables := OrderedCollection new. self addVariables: ivarArray ofType: MCInstanceVariableDefinition. self addVariables: cvarArray sorted ofType: MCClassVariableDefinition. self addVariables: poolArray sorted ofType: MCPoolImportDefinition. self addVariables: civarArray ofType: MCClassInstanceVariableDefinition.!
Item was added: + ----- Method: MCClassDefinition>>isCompiledCode: (in category 'initializing') ----- + isCompiledCode: className + "Classes of type #compiledMethod are treated specially. CompiledCode + and all of its subclasses, including CompiledMethod, should have this + special type." + + CompiledCode + withAllSubclassesDo: [ :cls | (className = cls name) + ifTrue: [ ^true ]]. + ^ false + !
packages@lists.squeakfoundation.org