diff --git a/lib/register/assembler.rb b/lib/register/assembler.rb index 3321be3a..21800397 100644 --- a/lib/register/assembler.rb +++ b/lib/register/assembler.rb @@ -110,7 +110,7 @@ module Register end def assemble_BootSpace(space) - assemble_self(space , [space.classes,space.objects, space.symbols,space.messages,space.frames] ) + assemble_self(space , [space.classes,space.objects, space.symbols,space.messages,space.next_message,space.next_frame] ) end def assemble_BootClass(clazz) @@ -185,7 +185,8 @@ module Register add_object(space.objects) add_object(space.symbols) add_object(space.messages) - add_object(space.frames) + add_object(space.next_message) + add_object(space.next_frame) end def add_BootClass(clazz) diff --git a/lib/virtual/boot_space.rb b/lib/virtual/boot_space.rb index 1a0aa368..6a2bc287 100644 --- a/lib/virtual/boot_space.rb +++ b/lib/virtual/boot_space.rb @@ -21,13 +21,13 @@ module Virtual #global objects (data) @objects = [] @symbols = [] - @messages = 100.times.collect{ ::Message.new } - @frames = 100.times.collect{ ::Frame.new } + frames = 100.times.collect{ ::Frame.new } + @messages = 100.times.collect{ ::Message.new } + frames @next_message = @messages.first - @next_frame = @frames.first + @next_frame = frames.first @passes = [ Virtual::SendImplementation ] end - attr_reader :main , :classes , :objects , :symbols,:messages,:frames + attr_reader :main , :classes , :objects , :symbols,:messages, :next_message , :next_frame def run_passes @passes.each do |pass|