diff --git a/src/vm/jvm/runtime/org/perl6/nqp/sixmodel/reprs/P6Opaque.java b/src/vm/jvm/runtime/org/perl6/nqp/sixmodel/reprs/P6Opaque.java index 150ed22a76..defa2c32fd 100644 --- a/src/vm/jvm/runtime/org/perl6/nqp/sixmodel/reprs/P6Opaque.java +++ b/src/vm/jvm/runtime/org/perl6/nqp/sixmodel/reprs/P6Opaque.java @@ -517,6 +517,18 @@ public void change_type(ThreadContext tc, SixModelObject obj, SixModelObject new obj.st = newType.st; } + public StorageSpec get_storage_spec(ThreadContext tc, STable st) { + P6OpaqueREPRData rd = (P6OpaqueREPRData)st.REPRData; + StorageSpec ss = new StorageSpec(); + if (rd.unboxIntSlot >= 0) + ss.can_box += StorageSpec.CAN_BOX_INT; + if (rd.unboxNumSlot >= 0) + ss.can_box += StorageSpec.CAN_BOX_NUM; + if (rd.unboxStrSlot >= 0) + ss.can_box += StorageSpec.CAN_BOX_STR; + return ss; + } + private class ByteClassLoader extends ClassLoader { private byte[] bytes;