Mercurial > pub > dyncall > dyncall
changeset 365:1d03a3a4220d
- fixing issue after having aliased gnu thiscalls to cdecl with a duped switch label
author | Tassilo Philipp |
---|---|
date | Tue, 14 Apr 2020 19:58:31 +0200 |
parents | 3bdd326dc269 |
children | ad5f9803f52f |
files | doc/manual/manual_dyncall_api.tex dyncall/dyncall_callvm_x86.c dynload/dynload_unix.c |
diffstat | 3 files changed, 3 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/doc/manual/manual_dyncall_api.tex Tue Apr 14 19:35:30 2020 +0200 +++ b/doc/manual/manual_dyncall_api.tex Tue Apr 14 19:58:31 2020 +0200 @@ -162,7 +162,7 @@ \lstinline@DC_CALL_C_X86_WIN32_FAST_MS@ & C x86 Windows Microsoft fast call\\ \lstinline@DC_CALL_C_X86_WIN32_FAST_GNU@ & C x86 Windows GCC fast call\\ \lstinline@DC_CALL_C_X86_WIN32_THIS_MS@ & C x86 Windows Microsoft this call\\ -\lstinline@DC_CALL_C_X86_WIN32_THIS_GNU@ & C x86 Windows GCC this call (identical to CDECL w/ this-ptr as 1st arg)\\ +\lstinline@DC_CALL_C_X86_WIN32_THIS_GNU@ & alias for DC\_CALL\_C\_X86\_CDECL (GNU thiscalls identical to cdecl)\\ \lstinline@DC_CALL_C_X86_PLAN9@ & C x86 Plan9 call\\ \lstinline@DC_CALL_C_X64_WIN64@ & C x64 Windows standard call\\ \lstinline@DC_CALL_C_X64_SYSV@ & C x64 System V standard call\\
--- a/dyncall/dyncall_callvm_x86.c Tue Apr 14 19:35:30 2020 +0200 +++ b/dyncall/dyncall_callvm_x86.c Tue Apr 14 19:58:31 2020 +0200 @@ -586,12 +586,11 @@ #if defined(DC_PLAN9) case DC_CALL_C_X86_PLAN9: vt = &gVT_x86_plan9; break; #else - case DC_CALL_C_X86_CDECL: vt = &gVT_x86_cdecl; break; + case DC_CALL_C_X86_CDECL: vt = &gVT_x86_cdecl; break; // also handles DC_CALL_C_X86_WIN32_THIS_GNU case DC_CALL_C_X86_WIN32_STD: vt = &gVT_x86_win32_std; break; case DC_CALL_C_X86_WIN32_FAST_MS: vt = &gVT_x86_win32_fast_ms; break; case DC_CALL_C_X86_WIN32_THIS_MS: vt = &gVT_x86_win32_this_ms; break; case DC_CALL_C_X86_WIN32_FAST_GNU: vt = &gVT_x86_win32_fast_gnu; break; - case DC_CALL_C_X86_WIN32_THIS_GNU: vt = &gVT_x86_cdecl; break; case DC_CALL_SYS_DEFAULT: # if defined DC_UNIX # if defined DC__OS_Linux
--- a/dynload/dynload_unix.c Tue Apr 14 19:35:30 2020 +0200 +++ b/dynload/dynload_unix.c Tue Apr 14 19:58:31 2020 +0200 @@ -105,6 +105,7 @@ #include <link.h> +/* @@@ if called from within a .so, passing NULL will return .so name, whereas passing result of dlLoadLibrary(NULL) returns process' name */ int dlGetLibraryPath(DLLib* pLib, char* sOut, int bufSize) { struct link_map* p = NULL;