At 08:36 AM 10/24/2003 +0200, Leopold Toetsch wrote:
Melvin Smith <[EMAIL PROTECTED]> wrote:

> Basically all metadata has to be collected before any code can be emitted.
> I was thinking of generating an _init routine that creates the classes,
> so we have several possibilities.

Why? A class definition should AFAIK end up in the constant table as a
class PMC specifying the inheritance and attributes. So a .class
directive is from parsing POV a constant definition, like a string
constant.

True, but something has to change. Either the loader has to know how to load a class (long term solution) or I have to write an _init routine.

I was aiming for a short term kludge to get classes working. Freeze/thaw
can break my kludge whenever it is done. (Unless you have a secret
patch ready)

We have to rearange all imcc globals anyway - there can't be globals or
multi-threading will break horribly.

Well, Bison C++ parsers are reentrant by default *pokes Dan*.... :)


-Melvin




Reply via email to