PR# 13833 Things to check for the dynamic types
Problem Report Summary
Environment: Mozilla/5.0 (Windows; U; Windows NT 5.2; en-US; rv:126.96.36.199) Gecko/20071127 Firefox/188.8.131.52
Synopsis: Things to check for the dynamic types
As part of my rewrite of the object HEADER so that the dynamic type for objects can be configurable in size, I've found a few places in the runtime where it would not work. To see them, simply define EIF_TYPE_INDEX to be the same as a EIF_NATURAL_64 and recompile the runtime. 1 - in C/ipc/shared/stack.c line 282, there is a comment that says that we fit 2 types into an integer 32-bit. This needs to be redone so that it uses EIF_TYPE_INDEX for those dynamic type. 2 - EIF_TYPED_VALUE possibly needs to be changed so that it distinguish the SK_ part from the actual dynamic type. It is also possible that the SK things, needs to be rewritten to be only a char and then followed by a dynamic type id when needed (SK_EXP and sometime SK_REF). This will make things more compact in the general case. 3 - In many places, we extract the dynamic type of the object and assign it to an integer 32-bit, this needs to be analyzed on a case by case basis.