In our previous episode, Sven Barth said: > It's not only the memory that needs to be shared. All DLLs need to use > the same RTL functions and the VMT pointers need to be equal as well. If > you have two DLLs and both use TObject than for a TObject variable of > DLL A "is" is not true for a TObject from DLL B. This is what runtime > packages solve correctly (in addition to dependency loading, etc).
I assume I don't have to tell you, but for the benefits of others: In general, there is only one copy of anything in a system with packages, so the unit's code and const parts (rtti/vmts) and its state (variables) only exist once. Both from RTL and user parts. And there already is much more crucial global state (locale, exception/synchronize system, unicode codepage stuff in trunk etc) than just memory manager. _______________________________________________ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal