IcompatibleLayoutConflict: Class with PointerLayout cannot be extended as byte is the error i am getting using the very latest pharo 3.0 image while trying to load NBOpengl (ConfigurationOfNBOpenGL project version: '2.0') load. here is the full trace http://pastebin.com/an4KFVrH I get the same error in macos and ubuntu, I suspect windoom is same too. -- View this message in context: http://forum.world.st/NBOpengl-Error-IcompatibleLayoutConflict-tp4707721.htm... Sent from the Pharo Smalltalk Developers mailing list archive at Nabble.com.
yeah we have to have solve this somehow, it is a side-effect of the new class-builder which actually properly validates the layouts of classes. If you modify classes with monticello they might end up in an invalid state for a short period. Previously this went undetected, the SlotClassBuilder is very picky about this :(. Maybe an intermediate solution for this is to disable any kind of validation while we load stuff with Monticello... On 2013-09-11, at 15:13, kilon <thekilon@yahoo.co.uk> wrote:
IcompatibleLayoutConflict: Class with PointerLayout cannot be extended as byte
is the error i am getting using the very latest pharo 3.0 image while trying to load NBOpengl
(ConfigurationOfNBOpenGL project version: '2.0') load.
here is the full trace
I get the same error in macos and ubuntu, I suspect windoom is same too.
-- View this message in context: http://forum.world.st/NBOpengl-Error-IcompatibleLayoutConflict-tp4707721.htm... Sent from the Pharo Smalltalk Developers mailing list archive at Nabble.com.
So this mean this is more of a warning than an error and it does not really affect the installation of NBOpenGL ? and what it means by "invalid state for a small period" ? is that a bytecode issue or an object issue ? Camillo Bruni-3 wrote
yeah we have to have solve this somehow, it is a side-effect of the new class-builder which actually properly validates the layouts of classes.
If you modify classes with monticello they might end up in an invalid state for a short period. Previously this went undetected, the SlotClassBuilder is very picky about this :(.
Maybe an intermediate solution for this is to disable any kind of validation while we load stuff with Monticello...
On 2013-09-11, at 15:13, kilon <
thekilon@.co
> wrote:
IcompatibleLayoutConflict: Class with PointerLayout cannot be extended as byte
is the error i am getting using the very latest pharo 3.0 image while trying to load NBOpengl
(ConfigurationOfNBOpenGL project version: '2.0') load.
here is the full trace
I get the same error in macos and ubuntu, I suspect windoom is same too.
-- View this message in context: http://forum.world.st/NBOpengl-Error-IcompatibleLayoutConflict-tp4707721.htm... Sent from the Pharo Smalltalk Developers mailing list archive at Nabble.com.
signature.asc (457 bytes) <http://forum.world.st/attachment/4707735/0/signature.asc>
-- View this message in context: http://forum.world.st/NBOpengl-Error-IcompatibleLayoutConflict-tp4707721p470... Sent from the Pharo Smalltalk Developers mailing list archive at Nabble.com.
Well no it is an error since the classes are in an invalid state. It is not possible to do all migrations with Monticello and keep all classes in a sane condition all the time. Just image moving an instance variable from a subclass which is in one monticello package B to a superclass which is in another package A. If the default load order is A - B then you will have all of a sudden a double variable declaration. In any case, the old class builder was very permissive and it even let you continue to work with classes with invalid layout states (for instance the duplicate variables, or incompatibly subclass layouts). For as long as you don't have instances and you do not use these classes there is not really a problem. On 2013-09-11, at 16:31, kilon <thekilon@yahoo.co.uk> wrote:
So this mean this is more of a warning than an error and it does not really affect the installation of NBOpenGL ?
and what it means by "invalid state for a small period" ? is that a bytecode issue or an object issue ?
Camillo Bruni-3 wrote
yeah we have to have solve this somehow, it is a side-effect of the new class-builder which actually properly validates the layouts of classes.
If you modify classes with monticello they might end up in an invalid state for a short period. Previously this went undetected, the SlotClassBuilder is very picky about this :(.
Maybe an intermediate solution for this is to disable any kind of validation while we load stuff with Monticello...
On 2013-09-11, at 15:13, kilon <
thekilon@.co
> wrote:
IcompatibleLayoutConflict: Class with PointerLayout cannot be extended as byte
is the error i am getting using the very latest pharo 3.0 image while trying to load NBOpengl
(ConfigurationOfNBOpenGL project version: '2.0') load.
here is the full trace
I get the same error in macos and ubuntu, I suspect windoom is same too.
-- View this message in context: http://forum.world.st/NBOpengl-Error-IcompatibleLayoutConflict-tp4707721.htm... Sent from the Pharo Smalltalk Developers mailing list archive at Nabble.com.
signature.asc (457 bytes) <http://forum.world.st/attachment/4707735/0/signature.asc>
-- View this message in context: http://forum.world.st/NBOpengl-Error-IcompatibleLayoutConflict-tp4707721p470... Sent from the Pharo Smalltalk Developers mailing list archive at Nabble.com.
ok so you talk about live objects, i see. Nonetheless I assume that it will still install NBOpenGL fully without any problems. The problem is instance objects that I may be using at the time. -- View this message in context: http://forum.world.st/NBOpengl-Error-IcompatibleLayoutConflict-tp4707721p470... Sent from the Pharo Smalltalk Developers mailing list archive at Nabble.com.
This should be fixed. It easy to fix, just had no time to update things in all projects. Basically, what needed is to save package version, which has no subclasses of NBExternalStructure, and then take new image and manually reintroduce all NBExternalStructure subclasses (use fileout/filein mechanism) and then save a new MC packages, where these classes in right format. Please read details here: https://groups.google.com/forum/#!topic/nativeboost/3Ik3UtLGMGo On 12 September 2013 09:34, kilon <thekilon@yahoo.co.uk> wrote:
ok so you talk about live objects, i see. Nonetheless I assume that it will still install NBOpenGL fully without any problems. The problem is instance objects that I may be using at the time.
-- View this message in context: http://forum.world.st/NBOpengl-Error-IcompatibleLayoutConflict-tp4707721p470... Sent from the Pharo Smalltalk Developers mailing list archive at Nabble.com.
-- Best regards, Igor Stasenko.
participants (3)
-
Camillo Bruni -
Igor Stasenko -
kilon