Michael Kaply wrote:
> 
> We are looking at changing calling conventions of things so that they
> will be compatible between EMX and VACPP.
> 
> Our plan is to switch all public interfaces to _System.

I just did a simple experiment with a main() that calls foo() in
foo.dll, which prints "foo called". If I specify _System linkage and
compile foo.dll with icc, and dlltest.c with gcc, running dlltest.exe
results in:

"A non-recoverable error occurred.  The process ended."

Yet if I compile foo.dll with gcc and dlltest.c with icc and no
linkage-convention specifier, dlltest.exe works fine. Ditto if I rename
the srcs to foo.cpp and dlltest.cpp.

Also noticed that when _System is specified, icc doesn't mangle the name
so that foo.dll exports foo rather than foo_Fv, whereas gcc expects
foo_Fv for foo() in dlltest.cpp.

h~

Reply via email to