Hi,
I'm trying to fix issue
https://github.com/jckarter/clay/issues/494(I need it fixed for another issue, but it is not important right now).
AFAIU, problem is that clay compiler has no Object representation of static object. There is no Object subclass that represents #123. Type of #123 can be represented as StaticType with ValueHolder holding 123. EValue for #123 uses StaticType and ignores addr field.
RecordType constructor takes type parameters as ArrayRef of ObjectPtr.
https://github.com/jckarter/clay/blob/cb0dadeeb467496c1a89c7caff758c7573f94a2c/compiler/types.cpp#L57So it is not possible to pass #123 to RecordType constructor, because there is no Object for #123.
Am I correct?
What is a proper way to deal with the issue? I think, another ObjectKind, STATIC_VALUE (and StaticValue subclass of Object) should be added.
--
Stepan