Update win32.api to current cvs.

Add __RPC_USER as a calling convention in winapi.
This commit is contained in:
Vincent Béron 2005-11-30 12:03:03 +01:00 committed by Alexandre Julliard
parent 0e68b671f4
commit 74ce0d363a
5 changed files with 172 additions and 46 deletions

View File

@ -1195,7 +1195,6 @@ LPARAM
LRESULT
POINT16
UINT
int
%ptr

View File

@ -105,7 +105,9 @@ MD5_CTX *
PACCESS_MASK
PACL
PACL *
PACTRL_ACCESSA *
PACTRL_ACCESSW *
PACTRL_AUDITA *
PACTRL_AUDITW *
PBOOL
PDWORD
@ -224,6 +226,7 @@ BOOL
DWORD
HINSTANCE
HRESULT
HWND
%long --pointer
@ -605,6 +608,7 @@ DWORD
HANDLE
HCERTSTORE
HCRYPTPROV
HMODULE
LONG
ULONG
@ -614,11 +618,15 @@ BYTE *
CERT_EXTENSION[]
CRYPTPROTECT_PROMPTSTRUCT *
CRYPT_ATTRIBUTE[]
CRYPT_OID_FUNC_ENTRY[]
DATA_BLOB *
DWORD *
GUID *
HCRYPTKEY *
HCRYPTOIDFUNCADDR *
HCRYPTOIDFUNCSET
HLRUCACHE
HLRUCACHE *
LPFILETIME
LPVOID
LPWSTR *
@ -656,6 +664,7 @@ void
%wstr
LPCWSTR
LPWSTR
%%ctl3d32.dll
@ -746,6 +755,7 @@ ULONG64
DWORD64 *
LPAPI_VERSION
LPSTACKFRAME
LPSTACKFRAME64
LPVOID
PDWORD
PENUMDIRTREE_CALLBACK
@ -753,26 +763,36 @@ PENUMLOADED_MODULES_CALLBACK
PFIND_DEBUG_FILE_CALLBACK
PFINDFILEINPATHCALLBACK
PFUNCTION_TABLE_ACCESS_ROUTINE
PFUNCTION_TABLE_ACCESS_ROUTINE64
PGET_MODULE_BASE_ROUTINE
PGET_MODULE_BASE_ROUTINE64
PIMAGE_DEBUG_INFORMATION
PIMAGEHLP_CONTEXT
PIMAGEHLP_LINE
PIMAGEHLP_LINE64
PIMAGEHLP_MODULE
PIMAGEHLP_MODULE64
PIMAGEHLP_SYMBOL
PIMAGEHLP_STACK_FRAME
PMINIDUMP_CALLBACK_INFORMATION
PMINIDUMP_DIRECTORY *
PMINIDUMP_EXCEPTION_INFORMATION
PMINIDUMP_USER_STREAM_INFORMATION
PMODLOAD_DATA
PREAD_PROCESS_MEMORY_ROUTINE
PREAD_PROCESS_MEMORY_ROUTINE64
PSYM_ENUMERATESYMBOLS_CALLBACK
PSYM_ENUMLINES_CALLBACK
PSYM_ENUMMODULES_CALLBACK
PSYM_ENUMSOURCEFILES_CALLBACK
PSYM_ENUMSYMBOLS_CALLBACK
PSYMBOL_REGISTERED_CALLBACK
PSYMBOL_FUNCENTRY_CALLBACK
PSYMBOL_FUNCENTRY_CALLBACK64
PSYMBOL_INFO
PSYMBOL_REGISTERED_CALLBACK
PSYMBOL_REGISTERED_CALLBACK64
PTRANSLATE_ADDRESS_ROUTINE
PTRANSLATE_ADDRESS_ROUTINE64
PVOID
ULONG *
char **
@ -1297,12 +1317,15 @@ LPCWSTR
%long
DWORD
HDRVR
LONG
LPARAM
LRESULT
UINT
%long --pointer
DWORD_PTR
%%icmp.dll
%long
@ -1335,12 +1358,15 @@ LPVOID
%long
DWORD
HDRVR
LPARAM
LRESULT
UINT
%long --pointer
DWORD_PTR
%%imagehlp.dll
%long
@ -1489,9 +1515,14 @@ REFIID
%long
DWORD
HDRVR
LONG
LPARAM
LRESULT
UINT
%long --pointer
DWORD_PTR
%%kernel32.dll
@ -1796,33 +1827,53 @@ LPWSTR
%long
DWORD
HDRVR
LONG
LPARAM
LRESULT
UINT
%long --pointer
DWORD_PTR
%%mcicda.dll
%long
DWORD
HDRVR
LONG
LPARAM
LRESULT
UINT
%long --pointer
DWORD_PTR
%%mciseq.dll
%long
DWORD
HDRVR
LONG
LPARAM
LRESULT
UINT
%long --pointer
DWORD_PTR
%%mciwave.drv
%long
DWORD
HDRVR
LONG
LPARAM
LRESULT
UINT
%long --pointer
DWORD_PTR
%%midimap.dll
@ -1830,9 +1881,14 @@ LONG
DWORD
HDRVR
LONG
LPARAM
LRESULT
UINT
%long --pointer
DWORD_PTR
%%mlang.dll
%long
@ -1945,10 +2001,15 @@ LPWSTR
DWORD
HDRVR
LONG
LPARAM
LRESULT
UINT
WORD
%long --pointer
DWORD_PTR
%%msacm32.dll
%long
@ -1965,6 +2026,10 @@ LRESULT
MMRESULT
UINT
%long --pointer
DWORD_PTR
%ptr
ACMDRIVERENUMCB
@ -2067,8 +2132,8 @@ unsigned long
%ptr
DMO_MEDIA_TYPE **
DMO_MEDIA_TYPE *
DMO_MEDIA_TYPE **
DMO_PARTIAL_MEDIATYPE *
IEnumDMO **
REFCLSID
@ -2084,12 +2149,15 @@ WCHAR *
%long
DWORD
HDRVR
LPARAM
LRESULT
UINT
%long --pointer
DWORD_PTR
%%mshtml.dll
%long
@ -2194,12 +2262,15 @@ REFCLSID
%long
DWORD
HDRVR
LRESULT
LPARAM
UINT
%long --pointer
DWORD_PTR
%%msnet32.dll
%long
@ -2413,12 +2484,15 @@ LPCWSTR
%long
DWORD
HDRVR
LONG
LPARAM
LRESULT
UINT
%long --pointer
DWORD_PTR
%%mswsock.dll
%long
@ -2439,8 +2513,8 @@ struct sockaddr **
%void
void
VOID
void
%%msxml3.dll
@ -2458,6 +2532,7 @@ REFIID
%long
DSROLE_PRIMARY_DOMAIN_INFO_LEVEL
DWORD
NET_API_STATUS
UCHAR
@ -2475,8 +2550,13 @@ PBYTE *
PDWORD
PNCB
PNETSETUP_JOIN_STATUS
PVOID
PVOID *
%void
void
%wstr
LMSTR
@ -2816,6 +2896,7 @@ LONG
UINT
ULONG
int
unsigned long
%ptr
@ -2827,7 +2908,11 @@ DWORD *
FILETIME *
FMTID *
GUID *
HBITMAP *
HDC *
HENHMETAFILE *
HGLOBAL *
HPALETTE *
HRESULT *
ICreateErrorInfo **
IDataObject *
@ -2891,11 +2976,14 @@ REFCLSID
REFGUID
REFIID
SNB
SNB *
SOLE_AUTHENTICATION_SERVICE *
STGMEDIUM *
STGOPTIONS *
ULONG *
WORD *
unsigned char *
unsigned long *
void *
void **
@ -3454,6 +3542,7 @@ UUID *
UUID_VECTOR *
unsigned char *
unsigned char **
unsigned long *
unsigned short *
unsigned short **
void *
@ -4502,30 +4591,45 @@ LPSTR
DWORD
HDRVR
LONG
LPARAM
LRESULT
UINT
WORD
%long --pointer
DWORD_PTR
%%winearts.drv
%long
DWORD
HDRVR
LONG
LPARAM
LRESULT
UINT
WORD
%long --pointer
DWORD_PTR
%%wineaudioio.drv
%long
DWORD
HDRVR
LONG
LPARAM
LRESULT
UINT
WORD
%long --pointer
DWORD_PTR
%%wined3d.dll
%long
@ -4568,29 +4672,42 @@ void
DWORD
HDRVR
LONG
LPARAM
LRESULT
UINT
WORD
%long --pointer
DWORD_PTR
%%winejack.drv
%long
DWORD
HDRVR
LONG
UINT
WORD
%%winemp3.acm
%long
DWORD
HDRVR
LPARAM
LRESULT
UINT
WORD
%long --pointer
DWORD_PTR
%%winemp3.acm
%long
HDRVR
LPARAM
LRESULT
UINT
%long --pointer
DWORD_PTR
%%winenas.drv
@ -4598,20 +4715,30 @@ UINT
DWORD
HDRVR
LONG
LPARAM
LRESULT
WORD
UINT
%long --pointer
DWORD_PTR
%%wineoss.drv
%long
DWORD
HDRVR
LONG
LPARAM
LRESULT
UINT
WORD
%long --pointer
DWORD_PTR
%%wineps.drv
%long

View File

@ -309,7 +309,7 @@ sub calling_convention16($) {
} elsif(/^(?:VFWAPIV|WINAPIV)$/) {
if(!defined($suffix)) { return undef; }
return "pascal$suffix"; # FIXME: Is this correct?
} elsif(/^(?:__stdcall|__RPC_STUB|NET_API_FUNCTION|RPC_ENTRY|VFWAPI|WINAPI|CALLBACK)$/) {
} elsif(/^(?:__stdcall|__RPC_STUB|__RPC_USER|NET_API_FUNCTION|RPC_ENTRY|VFWAPI|WINAPI|CALLBACK)$/) {
if(!defined($suffix)) { return undef; }
return "pascal$suffix";
} elsif($_ eq "__asm") {
@ -327,7 +327,7 @@ sub calling_convention32($) {
return "cdecl";
} elsif(/^(?:VFWAPIV|WINAPIV)$/) {
return "varargs";
} elsif(/^(?:__stdcall|__RPC_STUB|NET_API_FUNCTION|RPC_ENTRY|VFWAPI|WINAPI|CALLBACK)$/) {
} elsif(/^(?:__stdcall|__RPC_STUB|__RPC_USER|NET_API_FUNCTION|RPC_ENTRY|VFWAPI|WINAPI|CALLBACK)$/) {
return "stdcall";
} elsif($_ eq "__asm") {
return "asm";

View File

@ -85,7 +85,7 @@ sub _check_function($$$$$$) {
$implemented_calling_convention = "cdecl";
} elsif($calling_convention =~ /^(?:VFWAPIV|WINAPIV)$/) {
$implemented_calling_convention = "varargs";
} elsif($calling_convention =~ /^(?:__stdcall|__RPC_STUB|NET_API_FUNCTION|RPC_ENTRY|VFWAPI|WINAPI|CALLBACK)$/) {
} elsif($calling_convention =~ /^(?:__stdcall|__RPC_STUB|__RPC_USER|NET_API_FUNCTION|RPC_ENTRY|VFWAPI|WINAPI|CALLBACK)$/) {
if(defined($implemented_return_kind) && $implemented_return_kind =~ /^(?:s_word|word|void)$/) {
$implemented_calling_convention = "pascal16";
} else {
@ -101,7 +101,7 @@ sub _check_function($$$$$$) {
$implemented_calling_convention = "cdecl";
} elsif($calling_convention =~ /^(?:VFWAPIV|WINAPIV)$/) {
$implemented_calling_convention = "varargs";
} elsif($calling_convention =~ /^(?:__stdcall|__RPC_STUB|NET_API_FUNCTION|RPC_ENTRY|VFWAPI|WINAPI|CALLBACK)$/) {
} elsif($calling_convention =~ /^(?:__stdcall|__RPC_STUB|__RPC_USER|NET_API_FUNCTION|RPC_ENTRY|VFWAPI|WINAPI|CALLBACK)$/) {
if(defined($implemented_return_kind) && $implemented_return_kind eq "longlong") {
$implemented_calling_convention = "stdcall"; # FIXME: Check entry flags
} else {

View File

@ -373,7 +373,7 @@ sub parse_c_file($$) {
}
next;
} elsif(/(extern\s+|static\s+)?((struct\s+|union\s+|enum\s+|signed\s+|unsigned\s+)?\w+((\s*\*)+\s*|\s+))
((__cdecl|__stdcall|__RPC_STUB|CDECL|NET_API_FUNCTION|RPC_ENTRY|VFWAPIV|VFWAPI|WINAPIV|WINAPI|CALLBACK)\s+)?
((__cdecl|__stdcall|__RPC_STUB|__RPC_USER|CDECL|NET_API_FUNCTION|RPC_ENTRY|VFWAPIV|VFWAPI|WINAPIV|WINAPI|CALLBACK)\s+)?
(\w+(\(\w+\))?)\s*\((.*?)\)\s*(\{|\;)/sx)
{
my @lines = split(/\n/, $&);
@ -449,8 +449,8 @@ sub parse_c_file($$) {
((?:struct\s+|union\s+|enum\s+|register\s+|(?:signed\s+|unsigned\s+)
(?:short\s+(?=int)|long\s+(?=int))?)?\w+)\s*
((?:const|volatile)?\s*(?:\*\s*(?:const|volatile)?\s*?)*)\s*
(?:__cdecl\s+|__stdcall\s+|__RPC_STUB\s+|CALLBACK\s+|CDECL\s+|NET_API_FUNCTION\s+|RPC_ENTRY\s+|STDMETHODCALLTYPE\s+|VFWAPIV\s+|VFWAPI\s+|WINAPIV\s+|WINAPI\s+)?
\(\s*(?:__cdecl|__stdcall|__RPC_STUB|CALLBACK|CDECL|NET_API_FUNCTION|RPC_ENTRY|STDMETHODCALLTYPE|VFWAPIV|VFWAPI|WINAPIV|WINAPI)?\s*\*\s*((?:\w+)?)\s*\)\s*
(?:__cdecl\s+|__stdcall\s+|__RPC_STUB\s+|__RPC_USER\s+|CALLBACK\s+|CDECL\s+|NET_API_FUNCTION\s+|RPC_ENTRY\s+|STDMETHODCALLTYPE\s+|VFWAPIV\s+|VFWAPI\s+|WINAPIV\s+|WINAPI\s+)?
\(\s*(?:__cdecl|__stdcall|__RPC_STUB|__RPC_USER\s+|CALLBACK|CDECL|NET_API_FUNCTION|RPC_ENTRY|STDMETHODCALLTYPE|VFWAPIV|VFWAPI|WINAPIV|WINAPI)?\s*\*\s*((?:\w+)?)\s*\)\s*
\(\s*(.*?)\s*\)$/x)
{
my $return_type = $1;