ENH: Added function call argument to module function to make sure calling convention matches on lookup. Fixed for Watcom.
This commit is contained in:
parent
16be80b7b4
commit
03dfb39bd0
|
@ -44,8 +44,12 @@ int main()
|
|||
<< kwsys_ios::endl;
|
||||
return 1;
|
||||
}
|
||||
int(*f)() = reinterpret_cast<int(*)()>(sym);
|
||||
if(f() != (123+456))
|
||||
#ifdef __WATCOMC__
|
||||
int(__cdecl *f)(int) = (int(__cdecl *)(int))(sym);
|
||||
#else
|
||||
int(*f)(int) = reinterpret_cast<int(*)(int)>(sym);
|
||||
#endif
|
||||
if(f(456) != (123+456))
|
||||
{
|
||||
kwsys_ios::cerr << "Incorrect return value from plugin!"
|
||||
<< kwsys_ios::endl;
|
||||
|
|
|
@ -8,9 +8,15 @@
|
|||
# define MODULE_EXPORT
|
||||
#endif
|
||||
|
||||
MODULE_EXPORT int example_mod_1_function()
|
||||
#ifdef __WATCOMC__
|
||||
# define MODULE_CCONV __cdecl
|
||||
#else
|
||||
# define MODULE_CCONV
|
||||
#endif
|
||||
|
||||
MODULE_EXPORT int MODULE_CCONV example_mod_1_function(int n)
|
||||
{
|
||||
int result = example_exe_function() + 456;
|
||||
int result = example_exe_function() + n;
|
||||
printf("world\n");
|
||||
return result;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue