Hi, While using Fuel in a 2.0 image to serialize some objects (including CompiledMethods) I'm getting this error: SubscriptOutOfBounds: 27.
I spent hours in the debugger before writing this email, but I'm not able to figure out why this is happening. I attach the full stack of the error (STACK#1). I understood that it has something to do with a particular CompiledMethod in my image and/or a BlockClosure which for some reason cannot be printed (i.e., the printString returns <error in printString: evaluate "self printString" to debug>) and when I try to printString to debug I got the STACK#2 which in turn does not bring me to any possible solution. Hope some of you will have an intuition on that or at least tell me where to look or how to script a possible workaround. Thanks in advance, Roby ############################################################################################ ######################################### STACK#1 ########################################### ########################################################################################### CompiledMethod(Object)>>errorSubscriptBounds: CompiledMethod(Object)>>at: InstructionStream>>interpretNextInstructionFor: CompiledMethod>>abstractBytecodeMessageAt: in Block: [(InstructionStream new method: self pc: pc)... BlockClosure>>on:do: CompiledMethod>>abstractBytecodeMessageAt: BlockClosure>>blockCreationBytecodeMessage BlockClosure>>endPC BlockClosure>>abstractBytecodeMessagesDo: BlockClosure>>isClean BlockClosure>>shouldBeSubstitutedByCleanCopy BlockClosure>>fuelAccept: FLFullGeneralMapper(FLLightGeneralMapper)>>mapAndTrace: FLFullGlobalMapper>>mapAndTrace: in Block: [(anObject class == CompiledMethod... FLLargeIdentityDictionary>>at:ifAbsent: FLFullGlobalMapper>>mapAndTrace: FLPluggableSubstitutionMapper>>mapAndTrace: FLPluggableSubstitutionMapper>>mapAndTrace: FLAnalysis>>mapAndTrace: FLAnalysis>>run FLAnalyzer>>setDefaultAnalysis in Block: [:anObject | (FLAnalysis... FLAnalyzer>>analysisFor: FLSerialization>>analysisStep FLSerialization>>run DFSerializer(FLSerializer)>>setDefaultSerialization in Block: [:anObject :anEncoder | (FLSerialization... DFSerializer(FLSerializer)>>serialize:on: in Block: [:anEncoder | ... FLEncoder class>>on:globalEnvironment:do: in Block: [aBlock value: anEncoder] BlockClosure>>ensure: FLEncoder class>>on:globalEnvironment:do: DFSerializer(FLSerializer)>>serialize:on: ############################################################################################ ######################################### STACK#2 ########################################### ############################################################################################ Decompiler(Object)>>error: Decompiler>>decompileBlock: BlockClosure>>decompile BlockClosure>>printOn: BlockClosure(Object)>>printStringLimitedTo: in Block: [:s | self printOn: s] String class(SequenceableCollection class)>>streamContents:limitedTo: BlockClosure(Object)>>printStringLimitedTo: BlockClosure(Object)>>printString BlockClosure>>DoIt Compiler>>evaluate:in:to:notifying:ifFail:logged: SmalltalkEditor>>evaluateSelectionAndDo: in Block: [rcvr class evaluatorClass new... BlockClosure>>on:do: SmalltalkEditor>>evaluateSelectionAndDo: SmalltalkEditor>>evaluateSelection PluggableTextMorph>>doIt in Block: [textMorph editor evaluateSelection] PluggableTextMorph>>handleEdit: in Block: [result := editBlock value] TextMorphForEditView(TextMorph)>>handleEdit: PluggableTextMorph>>handleEdit: PluggableTextMorph>>doIt SmalltalkEditor class>>buildSmalltalkEditorKeymappingsOn: in Block: [:morph | morph doIt] BlockClosure>>cull: BlockClosure>>cull:cull: BlockClosure>>cull:cull:cull: KMCategoryTarget>>completeMatch:buffer: KMKeymap>>notifyCompleteMatchTo:buffer: in Block: [:l | l completeMatch: self buffer: aBuffer] Array(SequenceableCollection)>>do: KMKeymap>>notifyCompleteMatchTo:buffer: KMKeymap>>onMatchWith:notify:andDo: KMCategory>>onMatchWith:notify:andDo: in Block: [:entry | entry... Set>>do:
