Of course, i understand what complicate is for you guess what's wrong.
But having to limit the problem my presumption " a priori " it is that
the problem is not in the code that is working well in Linux, Mac and
Windows (the same code compiled with GCC and is also compiled ok with
TCC). The problem (for me) is in/related the TCC' DLL :
1) Generating the DLL without " - rdynamic" tiny_impdef fails, and
scripts (TCL) also fails (do not find libxyz_init).
2) With " - rdynamics" tiny_imdef generates def ok, scripts work ok but
they lose the text in the windows
3) Comparing both DLL (GCC & TCC versions) according to "dependency
walker" TCC's DLL lacking kernel32 in the first level, missing three
functions (as mentioned in previous mail).
4) Comparing both .def, the DLL generated by GCC has the lines:
.idata$4 .idata$5 .idata$6 _IMPORT_DESCRIPTOR_tcl85
_NULL_IMPORT_DESCRIPTOR that are not in the TCC version and TCC's has
address@hidden __ashldi3 __ashrdi3 __chkstk __divdi3 address@hidden
__fini_array_end __fini_array_start __fixunsdfdi __fixunssfdi
__fixunsxfdi __floatundidf __floatundisf __floatundixf __init_array_end
__init_array_start __lshrdi3 __moddi3 __preinit_array_end
__preinit_array_start __tcc_fpu_control __tcc_int_fpu_control __udivdi3
__umoddi3 _edata _end _etext
that are not in the generated by GCC.
The rest (functions of the library) is the same.
Something of this help you?. I hope ...