Thanks clement for your steady push in that direction.


On Wed, 07 Dec 2016 19:17:26 +0100, Clément Bera <[email protected]> wrote:

Hi,

This will be fixed by using the alternative bytecode set, likely in the next few weeks in Pharo 6 alpha/beta. Basically control flow messages (ifTrue:, to:do:, etc.) cannot have too many >statements in their blocks (ifTrue: argument, to:do: second arguments, etc) or the compiler can't compile them due to bytecode set encoding limitation. The new bytecode set is encoded >differently and allows such code to be compiled.

As a temporary solution, you need to split your code in multiple methods to lower the number of statements inside blocks inside control flow messages. Sorry for the annoyance. We're working on integrating a solution and we believe that this will be integrated in Pharo 6 in the next few weeks.

Regards,

Clement

On Wed, Dec 7, 2016 at 4:14 PM, Davide Varvello via Pharo-dev <[email protected]> wrote:


---------- Forwarded message ----------
From: Davide Varvello <[email protected]>
To: [email protected]
Cc:Date: Wed, 7 Dec 2016 07:14:35 -0800 (PST)
Subject: genJumpLong: distance index 1043 is out of range -1024 to 1023
Hi,

Sometimes (and also today) after formatting and saving a method, an Error is
thrown.
Following a chunk of PharoDebug.log

TIA
Davide


---------------------
THERE_BE_DRAGONS_HERE
Error: genJumpLong: distance index 1043 is out of range -1024 to 1023
7 December 2016 4:21:53.0426 pm

VM: Mac OS - intel - 1096 - CoInterpreter
VMMaker.oscog-HolgerHansPeterFreyther.1880 uuid:
16138eb3-2390-40f5-a6c8-15f0494936f8 Sep 30 2016
StackToRegisterMappingCogit VMMaker.oscog-HolgerHansPeterFreyther.1880 uuid:
16138eb3-2390-40f5-a6c8-15f0494936f8 Sep 30 2016
https://github.com/pharo-project/pharo-vm.git Commit:
06744effac0f0aa3b4b32e17636448f9d51d6707 Date: 2016-09-30 08:40:43 +0200 By:
GitHub <[email protected]> Jenkins build #603

Image: Pharo5.0 [Latest update: #50763]

OpalEncoderForV3PlusClosures(Object)>>error:
       Receiver: an OpalEncoderForV3PlusClosures
       Arguments and temporary variables:
aString: 'genJumpLong: distance index 1043 is out of range -1024 to 1023'
       Receiver's instance variables:
               stream:         an IRBytecodeGenerator
               position:       nil
               rootNode:       nil
               blockExtentsToLocals:   nil


OpalEncoderForV3PlusClosures(OpalBytecodeEncoder)>>outOfRangeError:index:range:to:
       Receiver: an OpalEncoderForV3PlusClosures
       Arguments and temporary variables:
               string:         'distance'
               index:  1043
               rangeStart:     -1024
               rangeEnd:       1023
       Receiver's instance variables:
               stream:         an IRBytecodeGenerator
               position:       nil
               rootNode:       nil
               blockExtentsToLocals:   nil


OpalEncoderForV3PlusClosures(OpalEncoderForV3)>>genJumpLong:
       Receiver: an OpalEncoderForV3PlusClosures
       Arguments and temporary variables:
               distance:       1043
       Receiver's instance variables:
               stream:         an IRBytecodeGenerator
               position:       nil
               rootNode:       nil
               blockExtentsToLocals:   nil


OpalEncoderForV3PlusClosures(OpalEncoderForV3)>>genJump:
       Receiver: an OpalEncoderForV3PlusClosures
       Arguments and temporary variables:
               distance:       1043
       Receiver's instance variables:
               stream:         an IRBytecodeGenerator
               position:       nil
               rootNode:       nil
               blockExtentsToLocals:   nil



--
View this message in context: http://forum.world.st/genJumpLong-distance-index-1043-is-out-of-range-1024-to-1023-tp4926103.html Sent from the Pharo Smalltalk Developers mailing list archive at Nabble.com.






--
Using Opera's mail client: http://www.opera.com/mail/

Reply via email to