Hello. Just played with and found what calling somEnvironmentEnd twice raises exception in somFree, but OK in IBM SOM (both 2.1 and 3.0). clsmgr:=somEnvironmentNew; somEnvironmentEnd; somEnvironmentEnd; Also, if try reinit environmet then also exception raises. clsmgr:=somEnvironmentNew; somEnvironmentEnd; clsmgr:=somEnvironmentNew; somEnvironmentEnd;
Hello. Just played with and found what calling somEnvironmentEnd twice raises exception in somFree, but OK in IBM SOM (both 2.1 and 3.0).
Thank you
Hello. Is it correct: somva_ is a SOMLINK, va_ is a OPTLINK. And it is only difference? And it is only true for Win32, other platform both are cdecl?
BTW, I have another problem. Variadic function support. For example, Delphi support them starting from Delphi 6, IIRC. Virtual Pascal doesn't support them at all. For now I'll limit somPrintf and related things by Delphi 6 and FPC. Or need to create some wrappers BTW, because I have a plan to finish Emitter Framework it will be possible to add some new features to it. But this is not fast process, I think... Not sure I'll have free time after NY.
Well, it is not possible to know about includes because somcpp process file before call somipc. But source line number in the place. I don't think it is required to know something about source files. Class information is only required thing. Calling convention is a compiler specific thing. Watcom also has some problems, for example. I'll look at this problems later. By the way, is it correct that you hold some position in Novosibirsk university? It WAS correct. I'm changing work now.
You about circular reference here... Well, no good solution for pascal here...
Hi, Ivan. May be for Emitter IR help will be required. I just restore my old archives and trying to make things work. First is a attempt to make three base classes mappers suitable for client usage. I want to produce classical mapping like in C (mostly done), and produce class wrappers (mostly works). Next question is a multiple inheritance. Here I'll need to add Delphi interfaces support, I think. After producing set of manual wrappers I have a plan to look at Emitter Framework and check is it enough...