Replaced forwards by normal function declarations.
diff --git a/dlls/advapi32/advapi32.spec b/dlls/advapi32/advapi32.spec
index 0997215..356b81a 100644
--- a/dlls/advapi32/advapi32.spec
+++ b/dlls/advapi32/advapi32.spec
@@ -133,7 +133,7 @@
@ stub InitiateSystemShutdownW
@ stub InstallApplication
@ stub IsProcessRestricted
-@ forward IsTextUnicode ntdll.RtlIsTextUnicode
+@ stdcall IsTextUnicode(ptr long ptr) ntdll.RtlIsTextUnicode
@ stub IsTokenRestricted
@ stub IsValidAcl
@ stdcall IsValidSecurityDescriptor(ptr) IsValidSecurityDescriptor
diff --git a/dlls/dplay/dplay.spec b/dlls/dplay/dplay.spec
index 19ddc5d..9ee08c1 100644
--- a/dlls/dplay/dplay.spec
+++ b/dlls/dplay/dplay.spec
@@ -1,4 +1,4 @@
# First DirectPlay dll. Replaced by dplayx.dll.
-@ forward DirectPlayCreate dplayx.DirectPlayCreate
-@ forward DirectPlayEnumerate dplayx.DirectPlayEnumerate
+@ stdcall DirectPlayCreate(ptr ptr ptr) dplayx.DirectPlayCreate
+@ stdcall DirectPlayEnumerate(ptr ptr) dplayx.DirectPlayEnumerate
diff --git a/dlls/kernel/kernel32.spec b/dlls/kernel/kernel32.spec
index 003613c..71de244 100644
--- a/dlls/kernel/kernel32.spec
+++ b/dlls/kernel/kernel32.spec
@@ -79,20 +79,20 @@
69 stdcall K32WOWGetVDMPointerUnfix(long) K32WOWGetVDMPointerUnfix
70 stdcall K32WOWGetDescriptor(long long) K32WOWGetDescriptor
71 stub IsThreadId
- 72 forward K32RtlLargeIntegerAdd ntdll.RtlLargeIntegerAdd
- 73 forward K32RtlEnlargedIntegerMultiply ntdll.RtlEnlargedIntegerMultiply
- 74 forward K32RtlEnlargedUnsignedMultiply ntdll.RtlEnlargedUnsignedMultiply
- 75 forward K32RtlEnlargedUnsignedDivide ntdll.RtlEnlargedUnsignedDivide
- 76 forward K32RtlExtendedLargeIntegerDivide ntdll.RtlExtendedLargeIntegerDivide
- 77 forward K32RtlExtendedMagicDivide ntdll.RtlExtendedMagicDivide
- 78 forward K32RtlExtendedIntegerMultiply ntdll.RtlExtendedIntegerMultiply
- 79 forward K32RtlLargeIntegerShiftLeft ntdll.RtlLargeIntegerShiftLeft
- 80 forward K32RtlLargeIntegerShiftRight ntdll.RtlLargeIntegerShiftRight
- 81 forward K32RtlLargeIntegerArithmeticShift ntdll.RtlLargeIntegerArithmeticShift
- 82 forward K32RtlLargeIntegerNegate ntdll.RtlLargeIntegerNegate
- 83 forward K32RtlLargeIntegerSubtract ntdll.RtlLargeIntegerSubtract
- 84 forward K32RtlConvertLongToLargeInteger ntdll.RtlConvertLongToLargeInteger
- 85 forward K32RtlConvertUlongToLargeInteger ntdll.RtlConvertUlongToLargeInteger
+72 stdcall -ret64 K32RtlLargeIntegerAdd(long long long long) ntdll.RtlLargeIntegerAdd
+73 stdcall -ret64 K32RtlEnlargedIntegerMultiply(long long) ntdll.RtlEnlargedIntegerMultiply
+74 stdcall -ret64 K32RtlEnlargedUnsignedMultiply(long long) ntdll.RtlEnlargedUnsignedMultiply
+75 stdcall K32RtlEnlargedUnsignedDivide(long long long ptr) ntdll.RtlEnlargedUnsignedDivide
+76 stdcall -ret64 K32RtlExtendedLargeIntegerDivide(long long long ptr) ntdll.RtlExtendedLargeIntegerDivide
+77 stdcall -ret64 K32RtlExtendedMagicDivide(long long long long long) ntdll.RtlExtendedMagicDivide
+78 stdcall -ret64 K32RtlExtendedIntegerMultiply(long long long) ntdll.RtlExtendedIntegerMultiply
+79 stdcall -ret64 K32RtlLargeIntegerShiftLeft(long long long) ntdll.RtlLargeIntegerShiftLeft
+80 stdcall -ret64 K32RtlLargeIntegerShiftRight(long long long) ntdll.RtlLargeIntegerShiftRight
+81 stdcall -ret64 K32RtlLargeIntegerArithmeticShift(long long long) ntdll.RtlLargeIntegerArithmeticShift
+82 stdcall -ret64 K32RtlLargeIntegerNegate(long long) ntdll.RtlLargeIntegerNegate
+83 stdcall -ret64 K32RtlLargeIntegerSubtract(long long long long) ntdll.RtlLargeIntegerSubtract
+84 stdcall -ret64 K32RtlConvertLongToLargeInteger(long) ntdll.RtlConvertLongToLargeInteger
+85 stdcall -ret64 K32RtlConvertUlongToLargeInteger(long) ntdll.RtlConvertUlongToLargeInteger
86 stdcall @(ptr) _KERNEL32_86
87 stdcall SSOnBigStack() SSOnBigStack
88 varargs SSCall(long long ptr) SSCall
@@ -835,7 +835,7 @@
@ stub ValidateLocale
@ stdcall VerLanguageNameA(long str long) VerLanguageNameA
@ stdcall VerLanguageNameW(long wstr long) VerLanguageNameW
-@ forward VerSetConditionMask ntdll.VerSetConditionMask
+@ stdcall -ret64 VerSetConditionMask(long long long long) ntdll.VerSetConditionMask
@ stdcall VirtualAlloc(ptr long long long) VirtualAlloc
@ stdcall VirtualFree(ptr long long) VirtualFree
@ stdcall VirtualLock(ptr long) VirtualLock
diff --git a/dlls/msvcrt/msvcrt.spec b/dlls/msvcrt/msvcrt.spec
index 19debb6..6ba7e98 100644
--- a/dlls/msvcrt/msvcrt.spec
+++ b/dlls/msvcrt/msvcrt.spec
@@ -134,8 +134,8 @@
@ cdecl __set_app_type(long) MSVCRT___set_app_type
@ extern __setlc_active MSVCRT___setlc_active
@ cdecl __setusermatherr(ptr) MSVCRT___setusermatherr
-@ forward __threadhandle kernel32.GetCurrentThread
-@ forward __threadid kernel32.GetCurrentThreadId
+@ cdecl __threadhandle() kernel32.GetCurrentThread
+@ cdecl __threadid() kernel32.GetCurrentThreadId
@ cdecl __toascii(long) MSVCRT___toascii
@ cdecl __unDName(long str ptr ptr long) MSVCRT___unDName
@ cdecl __unDNameEx() MSVCRT___unDNameEx #FIXME
@@ -164,7 +164,7 @@
@ cdecl _amsg_exit(long) MSVCRT__amsg_exit
@ cdecl _assert(str str long) MSVCRT__assert
@ stub _atodbl
-@ forward _atoi64 ntdll._atoi64
+@ cdecl -ret64 _atoi64(str) ntdll._atoi64
@ stub _atoldbl
@ cdecl _beep(long long) _beep
@ cdecl _beginthread (ptr long ptr) _beginthread
@@ -243,7 +243,7 @@
@ cdecl _fstat(long ptr) MSVCRT__fstat
@ cdecl _fstati64(long ptr) _fstati64
@ cdecl _ftime(ptr) _ftime
-@ forward _ftol ntdll._ftol
+@ cdecl _ftol() ntdll._ftol
@ cdecl _fullpath(ptr str long) _fullpath
@ cdecl _futime(long ptr) _futime
@ cdecl _gcvt( double long str) gcvt
@@ -256,10 +256,10 @@
@ cdecl _getdiskfree(long ptr) _getdiskfree
@ cdecl _getdllprocaddr(long str long) _getdllprocaddr
@ cdecl _getdrive() _getdrive
-@ forward _getdrives kernel32.GetLogicalDrives
+@ cdecl _getdrives() kernel32.GetLogicalDrives
@ stub _getmaxstdio #()
@ cdecl _getmbcp() _getmbcp
-@ forward _getpid kernel32.GetCurrentProcessId
+@ cdecl _getpid() kernel32.GetCurrentProcessId
@ stub _getsystime #(ptr)
@ cdecl _getw(ptr) _getw
@ cdecl _getws(ptr) MSVCRT__getws
@@ -271,8 +271,8 @@
@ stub _heapused #(ptr ptr)
@ cdecl _heapwalk(ptr) _heapwalk
@ cdecl _hypot(double double) hypot
-@ forward _i64toa ntdll._i64toa
-@ forward _i64tow ntdll._i64tow
+@ cdecl _i64toa(long long ptr long) ntdll._i64toa
+@ cdecl _i64tow(long long ptr long) ntdll._i64tow
@ cdecl _initterm(ptr ptr) _initterm
@ stub _inp #(long) -i386
@ stub _inpd #(long) -i386
@@ -310,8 +310,8 @@
@ cdecl _ismbslead(ptr ptr) _ismbslead
@ cdecl _ismbstrail(ptr ptr) _ismbstrail
@ cdecl _isnan( double ) _isnan
-@ forward _itoa ntdll._itoa
-@ forward _itow ntdll._itow
+@ cdecl _itoa(long ptr long) ntdll._itoa
+@ cdecl _itow(long ptr long) ntdll._itow
@ cdecl _j0(double) j0
@ cdecl _j1(double) j1
@ cdecl _jn(long double) jn
@@ -328,8 +328,8 @@
@ cdecl _lsearch(ptr ptr long long ptr) _lsearch
@ cdecl _lseek(long long long) _lseek
@ cdecl -ret64 _lseeki64(long long long long) _lseeki64
-@ forward _ltoa ntdll._ltoa
-@ forward _ltow ntdll._ltow
+@ cdecl _ltoa(long ptr long) ntdll._ltoa
+@ cdecl _ltow(long ptr long) ntdll._ltow
@ cdecl _makepath(str str str str str) _makepath
@ cdecl _matherr(ptr) _matherr
@ cdecl _mbbtombc(long) _mbbtombc
@@ -388,7 +388,7 @@
@ cdecl _mbstrlen(str) _mbstrlen
@ cdecl _mbsupr(str) _mbsupr
@ cdecl _memccpy(ptr ptr long long) memccpy
-@ forward _memicmp ntdll._memicmp
+@ cdecl _memicmp(str str long) ntdll._memicmp
@ cdecl _mkdir(str) _mkdir
@ cdecl _mktemp(str) _mktemp
@ cdecl _msize(ptr) _msize
@@ -434,7 +434,7 @@
@ stub _setsystime #(ptr long)
@ cdecl _sleep(long) _sleep
@ varargs _snprintf(str long str) snprintf
-@ forward _snwprintf ntdll._snwprintf
+@ varargs _snwprintf(wstr long wstr) ntdll._snwprintf
@ varargs _sopen(str long long) MSVCRT__sopen
@ varargs _spawnl(long str str) _spawnl
@ stub _spawnle #(str str) varargs
@@ -444,7 +444,7 @@
@ cdecl _spawnve(long str ptr ptr) _spawnve
@ cdecl _spawnvp(long str ptr) _spawnvp
@ cdecl _spawnvpe(long str ptr ptr) _spawnvpe
-@ forward _splitpath ntdll._splitpath
+@ cdecl _splitpath(str ptr ptr ptr ptr) ntdll._splitpath
@ cdecl _stat(str ptr) MSVCRT__stat
@ cdecl _stati64(str ptr) _stati64
@ cdecl _statusfp() _statusfp
@@ -454,7 +454,7 @@
@ cdecl _strerror(long) _strerror
@ cdecl _stricmp(str str) strcasecmp
@ stub _stricoll #(str str)
-@ forward _strlwr ntdll._strlwr
+@ cdecl _strlwr(str) ntdll._strlwr
@ stub _strncoll #(str str long)
@ cdecl _strnicmp(str str long) strncasecmp
@ stub _strnicoll #(str str long)
@@ -462,7 +462,7 @@
@ cdecl _strrev(str) _strrev
@ cdecl _strset(str long) _strset
@ cdecl _strtime(str) _strtime
-@ forward _strupr ntdll._strupr
+@ cdecl _strupr(str) ntdll._strupr
@ cdecl _swab(str str long) _swab
@ extern _sys_errlist MSVCRT__sys_errlist
@ extern _sys_nerr MSVCRT__sys_nerr
@@ -474,10 +474,10 @@
@ cdecl _toupper(long) MSVCRT__toupper
@ stub _tzname
@ cdecl _tzset() tzset
-@ forward _ui64toa ntdll._ui64toa
-@ forward _ui64tow ntdll._ui64tow
-@ forward _ultoa ntdll._ultoa
-@ forward _ultow ntdll._ultow
+@ cdecl _ui64toa(long long ptr long) ntdll._ui64toa
+@ cdecl _ui64tow(long long ptr long) ntdll._ui64tow
+@ cdecl _ultoa(long ptr long) ntdll._ultoa
+@ cdecl _ultow(long ptr long) ntdll._ultow
@ cdecl _umask(long) _umask
@ cdecl _ungetch(long) _ungetch
@ cdecl _unlink(str) _unlink
@@ -493,16 +493,16 @@
@ extern _wcmdln MSVCRT__wcmdln
@ cdecl _wcreat(wstr long) _wcreat
@ cdecl _wcsdup(wstr) _wcsdup
-@ forward _wcsicmp ntdll._wcsicmp
+@ cdecl _wcsicmp(wstr wstr) ntdll._wcsicmp
@ cdecl _wcsicoll(wstr wstr) _wcsicoll
-@ forward _wcslwr ntdll._wcslwr
+@ cdecl _wcslwr(wstr) ntdll._wcslwr
@ stub _wcsncoll #(wstr wstr long)
-@ forward _wcsnicmp ntdll._wcsnicmp
+@ cdecl _wcsnicmp(wstr wstr long) ntdll._wcsnicmp
@ stub _wcsnicoll #(wstr wstr long)
@ cdecl _wcsnset(wstr long long) _wcsnset
@ cdecl _wcsrev(wstr) _wcsrev
@ cdecl _wcsset(wstr long) _wcsset
-@ forward _wcsupr ntdll._wcsupr
+@ cdecl _wcsupr(wstr) ntdll._wcsupr
@ stub _wctime #(ptr)
@ extern _wenviron MSVCRT__wenviron
@ stub _wexecl #(wstr wstr) varargs
@@ -559,9 +559,9 @@
@ stub _wsystem #(wstr)
@ cdecl _wtempnam(wstr wstr) _wtempnam
@ stub _wtmpnam #(wstr)
-@ forward _wtoi ntdll._wtoi
-@ forward _wtoi64 ntdll._wtoi64
-@ forward _wtol ntdll._wtol
+@ cdecl _wtoi(wstr) ntdll._wtoi
+@ cdecl _wtoi64(wstr) ntdll._wtoi64
+@ cdecl _wtol(wstr) ntdll._wtol
@ cdecl _wunlink(wstr) _wunlink
@ cdecl _wutime(wstr ptr) _wutime
@ cdecl _y0(double) _y0
@@ -626,7 +626,7 @@
@ cdecl getwc(ptr) MSVCRT_getwc
@ cdecl getwchar() MSVCRT_getwchar
@ cdecl gmtime(ptr) gmtime
-@ forward is_wctype ntdll.iswctype
+@ cdecl is_wctype(long long) ntdll.iswctype
@ cdecl isalnum(long) MSVCRT_isalnum
@ cdecl isalpha(long) MSVCRT_isalpha
@ cdecl iscntrl(long) MSVCRT_iscntrl
@@ -639,10 +639,10 @@
@ cdecl isspace(long) MSVCRT_isspace
@ cdecl isupper(long) MSVCRT_isupper
@ cdecl iswalnum(long) MSVCRT_iswalnum
-@ forward iswalpha ntdll.iswalpha
+@ cdecl iswalpha(long) ntdll.iswalpha
@ cdecl iswascii(long) MSVCRT_iswascii
@ cdecl iswcntrl(long) MSVCRT_iswcntrl
-@ forward iswctype ntdll.iswctype
+@ cdecl iswctype(long long) ntdll.iswctype
@ cdecl iswdigit(long) MSVCRT_iswdigit
@ cdecl iswgraph(long) MSVCRT_iswgraph
@ cdecl iswlower(long) MSVCRT_iswlower
@@ -662,7 +662,7 @@
@ cdecl -register -i386 longjmp(ptr long) _MSVCRT_longjmp
@ cdecl malloc(long) MSVCRT_malloc
@ cdecl mblen(ptr long) MSVCRT_mblen
-@ forward mbstowcs ntdll.mbstowcs
+@ cdecl mbstowcs(ptr str long) ntdll.mbstowcs
@ cdecl mbtowc(wstr str long) MSVCRT_mbtowc
@ cdecl memchr(ptr long long) memchr
@ cdecl memcmp(ptr ptr long) memcmp
@@ -718,7 +718,7 @@
@ cdecl strtol(str ptr long) strtol
@ cdecl strtoul(str ptr long) strtoul
@ cdecl strxfrm(ptr str long) strxfrm
-@ forward swprintf ntdll.swprintf
+@ varargs swprintf(wstr wstr) ntdll.swprintf
@ varargs swscanf(wstr wstr) MSVCRT_swscanf
@ cdecl system(str) MSVCRT_system
@ cdecl tan(double) tan
@@ -728,8 +728,8 @@
@ cdecl tmpnam(str) MSVCRT_tmpnam
@ cdecl tolower(long) tolower
@ cdecl toupper(long) toupper
-@ forward towlower ntdll.towlower
-@ forward towupper ntdll.towupper
+@ cdecl towlower(long) ntdll.towlower
+@ cdecl towupper(long) ntdll.towupper
@ cdecl ungetc(long ptr) MSVCRT_ungetc
@ cdecl ungetwc(long ptr) MSVCRT_ungetwc
@ cdecl vfprintf(ptr str long) MSVCRT_vfprintf
@@ -738,26 +738,26 @@
@ cdecl vsprintf(ptr str ptr) vsprintf
@ cdecl vswprintf(ptr wstr long) MSVCRT_vswprintf
@ cdecl vwprintf(wstr long) MSVCRT_vwprintf
-@ forward wcscat ntdll.wcscat
-@ forward wcschr ntdll.wcschr
-@ forward wcscmp ntdll.wcscmp
+@ cdecl wcscat(wstr wstr) ntdll.wcscat
+@ cdecl wcschr(wstr long) ntdll.wcschr
+@ cdecl wcscmp(wstr wstr) ntdll.wcscmp
@ cdecl wcscoll(wstr wstr) MSVCRT_wcscoll
-@ forward wcscpy ntdll.wcscpy
-@ forward wcscspn ntdll.wcscspn
+@ cdecl wcscpy(ptr wstr) ntdll.wcscpy
+@ cdecl wcscspn(wstr wstr) ntdll.wcscspn
@ stub wcsftime #(wstr long wstr ptr)
-@ forward wcslen ntdll.wcslen
-@ forward wcsncat ntdll.wcsncat
-@ forward wcsncmp ntdll.wcsncmp
-@ forward wcsncpy ntdll.wcsncpy
+@ cdecl wcslen(wstr) ntdll.wcslen
+@ cdecl wcsncat(wstr wstr long) ntdll.wcsncat
+@ cdecl wcsncmp(wstr wstr long) ntdll.wcsncmp
+@ cdecl wcsncpy(ptr wstr long) ntdll.wcsncpy
@ cdecl wcspbrk(wstr wstr) MSVCRT_wcspbrk
-@ forward wcsrchr ntdll.wcsrchr
-@ forward wcsspn ntdll.wcsspn
-@ forward wcsstr ntdll.wcsstr
+@ cdecl wcsrchr(wstr long) ntdll.wcsrchr
+@ cdecl wcsspn(wstr wstr) ntdll.wcsspn
+@ cdecl wcsstr(wstr wstr) ntdll.wcsstr
@ stub wcstod #(wstr ptr)
-@ forward wcstok ntdll.wcstok
-@ forward wcstol ntdll.wcstol
-@ forward wcstombs ntdll.wcstombs
-@ forward wcstoul ntdll.wcstoul
+@ cdecl wcstok(wstr wstr) ntdll.wcstok
+@ cdecl wcstol(wstr ptr long) ntdll.wcstol
+@ cdecl wcstombs(ptr ptr long) ntdll.wcstombs
+@ cdecl wcstoul(wstr ptr long) ntdll.wcstoul
@ stub wcsxfrm #(wstr wstr long)
@ cdecl wctomb(ptr long) MSVCRT_wctomb
@ varargs wprintf(wstr) MSVCRT_wprintf
diff --git a/dlls/netapi32/netapi32.spec b/dlls/netapi32/netapi32.spec
index a8ed5bd..ea3e36f 100644
--- a/dlls/netapi32/netapi32.spec
+++ b/dlls/netapi32/netapi32.spec
@@ -219,7 +219,7 @@
@ stub NetpCreateSecurityObject
@ stub NetpDbgDisplayServerInfo
@ stub NetpDbgPrint
-@ forward NetpDeleteSecurityObject ntdll.RtlDeleteSecurityObject
+@ stdcall NetpDeleteSecurityObject(long) ntdll.RtlDeleteSecurityObject
@ stdcall NetpGetComputerName(ptr) NetpGetComputerName
@ stub NetpGetConfigBool
@ stub NetpGetConfigDword
@@ -229,7 +229,7 @@
@ stub NetpGetFileSecurity
@ stub NetpGetPrivilege
@ stub NetpHexDump
-@ forward NetpInitOemString ntdll.RtlInitAnsiString
+@ stdcall NetpInitOemString(ptr str) ntdll.RtlInitAnsiString
@ stub NetpIsRemote
@ stub NetpIsUncComputerNameValid
@ stub NetpLocalTimeZoneOffset
diff --git a/dlls/ole32/ole32.spec b/dlls/ole32/ole32.spec
index dfd4e56..f6a812e 100644
--- a/dlls/ole32/ole32.spec
+++ b/dlls/ole32/ole32.spec
@@ -6,9 +6,9 @@
6 stdcall CoCreateGuid(ptr) CoCreateGuid
7 stdcall CoCreateInstance(ptr ptr long ptr ptr) CoCreateInstance
8 stdcall CoDisconnectObject(ptr long) CoDisconnectObject
- 9 forward CoDosDateTimeToFileTime kernel32.DosDateTimeToFileTime
+ 9 stdcall CoDosDateTimeToFileTime(long long ptr) kernel32.DosDateTimeToFileTime
10 stdcall CoFileTimeNow(ptr) CoFileTimeNow
- 11 forward CoFileTimeToDosDateTime kernel32.FileTimeToDosDateTime
+ 11 stdcall CoFileTimeToDosDateTime(ptr ptr ptr) kernel32.FileTimeToDosDateTime
12 stdcall CoFreeAllLibraries() CoFreeAllLibraries
13 stdcall CoFreeLibrary(long) CoFreeLibrary
14 stdcall CoFreeUnusedLibraries() CoFreeUnusedLibraries
diff --git a/dlls/oleaut32/oleaut32.spec b/dlls/oleaut32/oleaut32.spec
index 0ebd047..4e869cc 100644
--- a/dlls/oleaut32/oleaut32.spec
+++ b/dlls/oleaut32/oleaut32.spec
@@ -195,9 +195,9 @@
197 stub VarDecFromStr
198 stub VarDecFromDisp
199 stub VarDecFromBool
-200 forward GetErrorInfo ole32.GetErrorInfo
-201 forward SetErrorInfo ole32.SetErrorInfo
-202 forward CreateErrorInfo ole32.CreateErrorInfo
+200 stdcall GetErrorInfo(long ptr) ole32.GetErrorInfo
+201 stdcall SetErrorInfo(long ptr) ole32.SetErrorInfo
+202 stdcall CreateErrorInfo(ptr) ole32.CreateErrorInfo
203 stub VarDecRound # stdcall (ptr long ptr)
204 stub VarDecCmp # stdcall (ptr ptr)
205 stdcall VarI2FromI1(long ptr) VarI2FromI1
diff --git a/dlls/olecli/olecli32.spec b/dlls/olecli/olecli32.spec
index 6985956..ef559f0 100644
--- a/dlls/olecli/olecli32.spec
+++ b/dlls/olecli/olecli32.spec
@@ -1,7 +1,7 @@
1 stub WEP
2 stub OleDelete
- 3 forward OleSaveToStream ole32.OleSaveToStream
- 4 forward OleLoadFromStream ole32.OleLoadFromStream
+ 3 stdcall OleSaveToStream(ptr ptr) ole32.OleSaveToStream
+ 4 stdcall OleLoadFromStream(ptr ptr ptr) ole32.OleLoadFromStream
6 stub OleClone
7 stub OleCopyFromLink
8 stub OleEqual
@@ -30,11 +30,11 @@
31 stub OleQueryOutOfDate
32 stub OleObjectConvert
33 stub OleCreateFromTemplate
- 34 forward OleCreate ole32.OleCreate
+ 34 stdcall OleCreate(ptr ptr long ptr ptr ptr ptr) ole32.OleCreate
35 stub OleQueryReleaseStatus
36 stub OleQueryReleaseError
37 stub OleQueryReleaseMethod
- 38 forward OleCreateFromFile ole32.OleCreateFromFile
+ 38 stdcall OleCreateFromFile(ptr ptr ptr long ptr ptr ptr ptr) ole32.OleCreateFromFile
39 stub OleCreateLinkFromFile
40 stub OleRelease
41 stdcall OleRegisterClientDoc(str str long ptr) OleRegisterClientDoc
diff --git a/dlls/olepro32/olepro32.spec b/dlls/olepro32/olepro32.spec
index 34d70fe..b309846 100644
--- a/dlls/olepro32/olepro32.spec
+++ b/dlls/olepro32/olepro32.spec
@@ -1,10 +1,10 @@
-248 forward OleIconToCursor OLEAUT32.OleIconToCursor
-249 forward OleCreatePropertyFrameIndirect OLEAUT32.OleCreatePropertyFrameIndirect
-250 forward OleCreatePropertyFrame OLEAUT32.OleCreatePropertyFrame
-251 forward OleLoadPicture OLEAUT32.OleLoadPicture
-252 forward OleCreatePictureIndirect OLEAUT32.OleCreatePictureIndirect
-253 forward OleCreateFontIndirect OLEAUT32.OleCreateFontIndirect
-254 forward OleTranslateColor OLEAUT32.OleTranslateColor
+248 stdcall OleIconToCursor(long long) oleaut32.OleIconToCursor
+249 stdcall OleCreatePropertyFrameIndirect(ptr) oleaut32.OleCreatePropertyFrameIndirect
+250 stdcall OleCreatePropertyFrame(ptr long long ptr long ptr long ptr ptr long ptr) oleaut32.OleCreatePropertyFrame
+251 stdcall OleLoadPicture(ptr long long ptr ptr) oleaut32.OleLoadPicture
+252 stdcall OleCreatePictureIndirect(ptr ptr long ptr) oleaut32.OleCreatePictureIndirect
+253 stdcall OleCreateFontIndirect(ptr ptr ptr) oleaut32.OleCreateFontIndirect
+254 stdcall OleTranslateColor(long long long) oleaut32.OleTranslateColor
255 stdcall DllCanUnloadNow() OLEPRO32_DllCanUnloadNow
256 stdcall DllGetClassObject( ptr ptr ptr ) OLEPRO32_DllGetClassObject
257 stdcall DllRegisterServer() OLEPRO32_DllRegisterServer
diff --git a/dlls/opengl32/opengl32.spec b/dlls/opengl32/opengl32.spec
index 2cd0dce..2182620 100644
--- a/dlls/opengl32/opengl32.spec
+++ b/dlls/opengl32/opengl32.spec
@@ -20,11 +20,11 @@
@ stub wglUseFontBitmapsW
@ stub wglUseFontOutlinesW
@ stub wglGetDefaultProcAddress
-@ forward wglChoosePixelFormat GDI32.ChoosePixelFormat
-@ forward wglDescribePixelFormat GDI32.DescribePixelFormat
-@ forward wglGetPixelFormat GDI32.GetPixelFormat
-@ forward wglSetPixelFormat GDI32.SetPixelFormat
-@ forward wglSwapBuffers GDI32.SwapBuffers
+@ stdcall wglChoosePixelFormat(long ptr) gdi32.ChoosePixelFormat
+@ stdcall wglDescribePixelFormat(long long long ptr) gdi32.DescribePixelFormat
+@ stdcall wglGetPixelFormat(long) gdi32.GetPixelFormat
+@ stdcall wglSetPixelFormat(long long ptr) gdi32.SetPixelFormat
+@ stdcall wglSwapBuffers(long) gdi32.SwapBuffers
@ stdcall glAccum( long long ) wine_glAccum
@ stdcall glActiveTextureARB( long ) wine_glActiveTextureARB
@ stdcall glAlphaFunc( long long ) wine_glAlphaFunc
diff --git a/dlls/shell32/shell32.spec b/dlls/shell32/shell32.spec
index 5b921b7..1f1a096 100644
--- a/dlls/shell32/shell32.spec
+++ b/dlls/shell32/shell32.spec
@@ -76,7 +76,7 @@
82 stdcall DragQueryFileA(long long ptr long) DragQueryFileA
83 stdcall CIDLData_CreateFromIDArray(ptr long ptr ptr) CIDLData_CreateFromIDArray
84 stub SHIsBadInterfacePtr
- 85 forward OpenRegStream shlwapi.SHOpenRegStreamA
+ 85 stdcall OpenRegStream(long str str long) shlwapi.SHOpenRegStreamA
86 stdcall SHRegisterDragDrop(long ptr) SHRegisterDragDrop
87 stdcall SHRevokeDragDrop(long) SHRevokeDragDrop
88 stdcall SHDoDragDrop(long ptr ptr long ptr) SHDoDragDrop
@@ -230,34 +230,34 @@
298 stdcall Shell_NotifyIconW(long ptr) Shell_NotifyIconW
299 stub Shl1632_ThunkData32
300 stub Shl3216_ThunkData32
- 301 forward StrChrA shlwapi.StrChrA
- 302 forward StrChrIA shlwapi.StrChrIA
- 303 forward StrChrIW shlwapi.StrChrIW
- 304 forward StrChrW shlwapi.StrChrW
- 305 forward StrCmpNA shlwapi.StrCmpNA
- 306 forward StrCmpNIA shlwapi.StrCmpNIA
- 307 forward StrCmpNIW shlwapi.StrCmpNIW
- 308 forward StrCmpNW shlwapi.StrCmpNW
+ 301 stdcall StrChrA(str long) shlwapi.StrChrA
+ 302 stdcall StrChrIA(str long) shlwapi.StrChrIA
+ 303 stdcall StrChrIW(wstr long) shlwapi.StrChrIW
+ 304 stdcall StrChrW(wstr long) shlwapi.StrChrW
+ 305 stdcall StrCmpNA(str str long) shlwapi.StrCmpNA
+ 306 stdcall StrCmpNIA(str str long) shlwapi.StrCmpNIA
+ 307 stdcall StrCmpNIW(wstr wstr long) shlwapi.StrCmpNIW
+ 308 stdcall StrCmpNW(wstr wstr long) shlwapi.StrCmpNW
309 stdcall StrCpyNA (ptr str long) lstrcpynA
- 310 forward StrCpyNW shlwapi.StrCpyNW
- 311 forward StrNCmpA shlwapi.StrCmpNA
- 312 forward StrNCmpIA shlwapi.StrCmpNIA
- 313 forward StrNCmpIW shlwapi.StrCmpNIW
- 314 forward StrNCmpW shlwapi.StrCmpNW
+ 310 stdcall StrCpyNW(wstr wstr long) shlwapi.StrCpyNW
+ 311 stdcall StrNCmpA(str str long) shlwapi.StrCmpNA
+ 312 stdcall StrNCmpIA(str str long) shlwapi.StrCmpNIA
+ 313 stdcall StrNCmpIW(wstr wstr long) shlwapi.StrCmpNIW
+ 314 stdcall StrNCmpW(wstr wstr long) shlwapi.StrCmpNW
315 stdcall StrNCpyA (ptr str long) lstrcpynA
- 316 forward StrNCpyW shlwapi.StrCpyNW
- 317 forward StrRChrA shlwapi.StrRChrA
- 318 forward StrRChrIA shlwapi.StrRChrIA
- 319 forward StrRChrIW shlwapi.StrRChrIW
- 320 forward StrRChrW shlwapi.StrRChrW
+ 316 stdcall StrNCpyW(wstr wstr long) shlwapi.StrCpyNW
+ 317 stdcall StrRChrA(str str long) shlwapi.StrRChrA
+ 318 stdcall StrRChrIA(str str long) shlwapi.StrRChrIA
+ 319 stdcall StrRChrIW(str str long) shlwapi.StrRChrIW
+ 320 stdcall StrRChrW(wstr wstr long) shlwapi.StrRChrW
321 stub StrRStrA
- 322 forward StrRStrIA shlwapi.StrRStrIA
- 323 forward StrRStrIW shlwapi.StrRStrIW
+ 322 stdcall StrRStrIA(str str str) shlwapi.StrRStrIA
+ 323 stdcall StrRStrIW(wstr wstr wstr) shlwapi.StrRStrIW
324 stub StrRStrW
- 325 forward StrStrA shlwapi.StrStrA
- 326 forward StrStrIA shlwapi.StrStrIA
- 327 forward StrStrIW shlwapi.StrStrIW
- 328 forward StrStrW shlwapi.StrStrW
+ 325 stdcall StrStrA(str str) shlwapi.StrStrA
+ 326 stdcall StrStrIA(str str) shlwapi.StrStrIA
+ 327 stdcall StrStrIW(wstr wstr) shlwapi.StrStrIW
+ 328 stdcall StrStrW(wstr wstr) shlwapi.StrStrW
505 stdcall SHRegCloseKey (long) SHRegCloseKey
506 stdcall SHRegOpenKeyA (long str long) SHRegOpenKeyA
diff --git a/dlls/shfolder/shfolder.spec b/dlls/shfolder/shfolder.spec
index e10bd73..0625024 100644
--- a/dlls/shfolder/shfolder.spec
+++ b/dlls/shfolder/shfolder.spec
@@ -1,2 +1,2 @@
-@ forward SHGetFolderPathA shell32.SHGetFolderPathA
-@ forward SHGetFolderPathW shell32.SHGetFolderPathW
+@ stdcall SHGetFolderPathA(long long long long ptr) shell32.SHGetFolderPathA
+@ stdcall SHGetFolderPathW(long long long long ptr) shell32.SHGetFolderPathW
diff --git a/dlls/shlwapi/shlwapi.spec b/dlls/shlwapi/shlwapi.spec
index 6ee31a2..3d30be6 100644
--- a/dlls/shlwapi/shlwapi.spec
+++ b/dlls/shlwapi/shlwapi.spec
@@ -34,120 +34,120 @@
34 stdcall @(long) SHLWAPI_34
35 stdcall @(ptr long ptr) SHLWAPI_35
36 stdcall @(long long long wstr) SHLWAPI_36
-37 forward @ user32.CallWindowProcW
-38 forward @ user32.CharLowerW
-39 forward @ user32.CharLowerBuffW
-40 forward @ user32.CharNextW
-41 forward @ user32.CharPrevW
+37 stdcall @(ptr long long long long) user32.CallWindowProcW
+38 stdcall @(wstr) user32.CharLowerW
+39 stdcall @(wstr long) user32.CharLowerBuffW
+40 stdcall @(wstr) user32.CharNextW
+41 stdcall @(wstr wstr) user32.CharPrevW
42 stub @
-43 forward @ user32.CharUpperW
-44 forward @ user32.CharUpperBuffW
-45 forward @ kernel32.CompareStringW
-46 forward @ user32.CopyAcceleratorTableW
-47 forward @ user32.CreateAcceleratorTableW
-48 forward @ gdi32.CreateDCW
-49 forward @ user32.CreateDialogParamA
-50 forward @ kernel32.CreateDirectoryW
-51 forward @ kernel32.CreateEventW
-52 forward @ kernel32.CreateFileW
-53 forward @ gdi32.CreateFontIndirectW
-54 forward @ gdi32.CreateICW
-55 forward @ user32.CreateWindowExW
-56 forward @ user32.DefWindowProcW
-57 forward @ kernel32.DeleteFileW
+43 stdcall @(wstr) user32.CharUpperW
+44 stdcall @(wstr long) user32.CharUpperBuffW
+45 stdcall @(long long wstr long wstr long) kernel32.CompareStringW
+46 stdcall @(long ptr long) user32.CopyAcceleratorTableW
+47 stdcall @(ptr long) user32.CreateAcceleratorTableW
+48 stdcall @(wstr wstr wstr ptr) gdi32.CreateDCW
+49 stdcall @(long ptr long ptr long) user32.CreateDialogParamA
+50 stdcall @(wstr ptr) kernel32.CreateDirectoryW
+51 stdcall @(ptr long long wstr) kernel32.CreateEventW
+52 stdcall @(wstr long long ptr long long long) kernel32.CreateFileW
+53 stdcall @(ptr) gdi32.CreateFontIndirectW
+54 stdcall @(wstr wstr wstr ptr) gdi32.CreateICW
+55 stdcall @(long wstr wstr long long long long long long long long ptr) user32.CreateWindowExW
+56 stdcall @(long long long long) user32.DefWindowProcW
+57 stdcall @(wstr) kernel32.DeleteFileW
58 stub @
59 stub @
-60 forward @ user32.DispatchMessageW
-61 forward @ user32.DrawTextW
-62 forward @ gdi32.EnumFontFamiliesW
-63 forward @ gdi32.EnumFontFamiliesExW
-64 forward @ kernel32.EnumResourceNamesW
-65 forward @ kernel32.FindFirstFileW
-66 forward @ kernel32.FindResourceW
-67 forward @ user32.FindWindowW
-68 forward @ kernel32.FormatMessageW
-69 forward @ user32.GetClassInfoW
-70 forward @ user32.GetClassLongW
-71 forward @ user32.GetClassNameW
-72 forward @ user32.GetClipboardFormatNameW
-73 forward @ kernel32.GetCurrentDirectoryW
+60 stdcall @(ptr) user32.DispatchMessageW
+61 stdcall @(long wstr long ptr long) user32.DrawTextW
+62 stdcall @(long wstr ptr long) gdi32.EnumFontFamiliesW
+63 stdcall @(long ptr ptr long long) gdi32.EnumFontFamiliesExW
+64 stdcall @(long wstr ptr long) kernel32.EnumResourceNamesW
+65 stdcall @(wstr ptr) kernel32.FindFirstFileW
+66 stdcall @(long wstr wstr) kernel32.FindResourceW
+67 stdcall @(wstr wstr) user32.FindWindowW
+68 stdcall @(long ptr long long ptr long ptr) kernel32.FormatMessageW
+69 stdcall @(long wstr ptr) user32.GetClassInfoW
+70 stdcall @(long long) user32.GetClassLongW
+71 stdcall @(long ptr long) user32.GetClassNameW
+72 stdcall @(long ptr long) user32.GetClipboardFormatNameW
+73 stdcall @(long ptr) kernel32.GetCurrentDirectoryW
74 stdcall @(long long wstr long) SHLWAPI_74
-75 forward @ kernel32.GetFileAttributesW
-76 forward @ kernel32.GetFullPathNameW
-77 forward @ kernel32.GetLocaleInfoW
-78 forward @ user32.GetMenuStringW
-79 forward @ user32.GetMessageW
-80 forward @ kernel32.GetModuleFileNameW
-81 forward @ kernel32.GetSystemDirectoryW
-82 forward @ kernel32.SearchPathW
-83 forward @ kernel32.GetModuleHandleW
-84 forward @ gdi32.GetObjectW
-85 forward @ kernel32.GetPrivateProfileIntW
-86 forward @ kernel32.GetProfileStringW
-87 forward @ user32.GetPropW
-88 forward @ kernel32.GetStringTypeExW
-89 forward @ kernel32.GetTempFileNameW
-90 forward @ kernel32.GetTempPathW
-91 forward @ gdi32.GetTextExtentPoint32W
-92 forward @ gdi32.GetTextFaceW
-93 forward @ gdi32.GetTextMetricsW
-94 forward @ user32.GetWindowLongW
-95 forward @ user32.GetWindowTextW
-96 forward @ user32.GetWindowTextLengthW
-97 forward @ kernel32.GetWindowsDirectoryW
-98 forward @ user32.InsertMenuW
-99 forward @ user32.IsDialogMessageW
-100 forward @ user32.LoadAcceleratorsW
-101 forward @ user32.LoadBitmapW
-102 forward @ user32.LoadCursorW
-103 forward @ user32.LoadIconW
-104 forward @ user32.LoadImageW
-105 forward @ kernel32.LoadLibraryExW
-106 forward @ user32.LoadMenuW
-107 forward @ user32.LoadStringW
-108 forward @ user32.MessageBoxIndirectW
-109 forward @ user32.ModifyMenuW
-110 forward @ gdi32.GetCharWidth32W
-111 forward @ gdi32.GetCharacterPlacementW
-112 forward @ kernel32.CopyFileW
-113 forward @ kernel32.MoveFileW
-114 forward @ user32.OemToCharW
-115 forward @ kernel32.OutputDebugStringW
-116 forward @ user32.PeekMessageW
-117 forward @ user32.PostMessageW
-118 forward @ user32.PostThreadMessageW
-119 forward @ advapi32.RegCreateKeyW
-120 forward @ advapi32.RegCreateKeyExW
-121 forward @ advapi32.RegDeleteKeyW
-122 forward @ advapi32.RegEnumKeyW
-123 forward @ advapi32.RegEnumKeyExW
-124 forward @ advapi32.RegOpenKeyW
-125 forward @ advapi32.RegOpenKeyExW
-126 forward @ advapi32.RegQueryInfoKeyW
-127 forward @ advapi32.RegQueryValueW
-128 forward @ advapi32.RegQueryValueExW
-129 forward @ advapi32.RegSetValueW
-130 forward @ advapi32.RegSetValueExW
-131 forward @ user32.RegisterClassW
-132 forward @ user32.RegisterClipboardFormatW
-133 forward @ user32.RegisterWindowMessageW
-134 forward @ user32.RemovePropW
-135 forward @ user32.SendDlgItemMessageW
-136 forward @ user32.SendMessageW
-137 forward @ kernel32.SetCurrentDirectoryW
+75 stdcall @(wstr) kernel32.GetFileAttributesW
+76 stdcall @(wstr long ptr ptr) kernel32.GetFullPathNameW
+77 stdcall @(long long ptr long) kernel32.GetLocaleInfoW
+78 stdcall @(long long ptr long long) user32.GetMenuStringW
+79 stdcall @(ptr long long long) user32.GetMessageW
+80 stdcall @(long ptr long) kernel32.GetModuleFileNameW
+81 stdcall @(ptr long) kernel32.GetSystemDirectoryW
+82 stdcall @(wstr wstr wstr long ptr ptr) kernel32.SearchPathW
+83 stdcall @(wstr) kernel32.GetModuleHandleW
+84 stdcall @(long long ptr) gdi32.GetObjectW
+85 stdcall @(wstr wstr long wstr) kernel32.GetPrivateProfileIntW
+86 stdcall @(wstr wstr wstr ptr long) kernel32.GetProfileStringW
+87 stdcall @(long wstr) user32.GetPropW
+88 stdcall @(long long wstr long ptr) kernel32.GetStringTypeExW
+89 stdcall @(wstr wstr long ptr) kernel32.GetTempFileNameW
+90 stdcall @(long ptr) kernel32.GetTempPathW
+91 stdcall @(long wstr long ptr) gdi32.GetTextExtentPoint32W
+92 stdcall @(long long ptr) gdi32.GetTextFaceW
+93 stdcall @(long ptr) gdi32.GetTextMetricsW
+94 stdcall @(long long) user32.GetWindowLongW
+95 stdcall @(long ptr long) user32.GetWindowTextW
+96 stdcall @(long) user32.GetWindowTextLengthW
+97 stdcall @(ptr long) kernel32.GetWindowsDirectoryW
+98 stdcall @(long long long long ptr) user32.InsertMenuW
+99 stdcall @(long ptr) user32.IsDialogMessageW
+100 stdcall @(long wstr) user32.LoadAcceleratorsW
+101 stdcall @(long wstr) user32.LoadBitmapW
+102 stdcall @(long wstr) user32.LoadCursorW
+103 stdcall @(long wstr) user32.LoadIconW
+104 stdcall @(long wstr long long long long) user32.LoadImageW
+105 stdcall @(wstr long long) kernel32.LoadLibraryExW
+106 stdcall @(long wstr) user32.LoadMenuW
+107 stdcall @(long long ptr long) user32.LoadStringW
+108 stdcall @(ptr) user32.MessageBoxIndirectW
+109 stdcall @(long long long long ptr) user32.ModifyMenuW
+110 stdcall @(long long long long) gdi32.GetCharWidth32W
+111 stdcall @(long wstr long long ptr long) gdi32.GetCharacterPlacementW
+112 stdcall @(wstr wstr long) kernel32.CopyFileW
+113 stdcall @(wstr wstr) kernel32.MoveFileW
+114 stdcall @(ptr ptr) user32.OemToCharW
+115 stdcall @(wstr) kernel32.OutputDebugStringW
+116 stdcall @(ptr long long long long) user32.PeekMessageW
+117 stdcall @(long long long long) user32.PostMessageW
+118 stdcall @(long long long long) user32.PostThreadMessageW
+119 stdcall @(long wstr ptr) advapi32.RegCreateKeyW
+120 stdcall @(long wstr long ptr long long ptr ptr ptr) advapi32.RegCreateKeyExW
+121 stdcall @(long wstr) advapi32.RegDeleteKeyW
+122 stdcall @(long long ptr long) advapi32.RegEnumKeyW
+123 stdcall @(long long ptr ptr ptr ptr ptr ptr) advapi32.RegEnumKeyExW
+124 stdcall @(long wstr ptr) advapi32.RegOpenKeyW
+125 stdcall @(long wstr long long ptr) advapi32.RegOpenKeyExW
+126 stdcall @(long ptr ptr ptr ptr ptr ptr ptr ptr ptr ptr ptr) advapi32.RegQueryInfoKeyW
+127 stdcall @(long wstr ptr ptr) advapi32.RegQueryValueW
+128 stdcall @(long wstr ptr ptr ptr ptr) advapi32.RegQueryValueExW
+129 stdcall @(long wstr long ptr long) advapi32.RegSetValueW
+130 stdcall @(long wstr long long ptr long) advapi32.RegSetValueExW
+131 stdcall @(ptr) user32.RegisterClassW
+132 stdcall @(wstr) user32.RegisterClipboardFormatW
+133 stdcall @(wstr) user32.RegisterWindowMessageW
+134 stdcall @(long wstr) user32.RemovePropW
+135 stdcall @(long long long long long) user32.SendDlgItemMessageW
+136 stdcall @(long long long long) user32.SendMessageW
+137 stdcall @(wstr) kernel32.SetCurrentDirectoryW
138 stdcall @(long long wstr) SHLWAPI_138
139 stub @
-140 forward @ user32.SetPropW
-141 forward @ user32.SetWindowLongW
-142 forward @ user32.SetWindowsHookExW
-143 forward @ user32.SetWindowTextW
-144 forward @ gdi32.StartDocW
-145 forward @ user32.SystemParametersInfoW
-146 forward @ user32.TranslateAcceleratorW
-147 forward @ user32.UnregisterClassW
-148 forward @ user32.VkKeyScanW
-149 forward @ user32.WinHelpW
-150 forward @ user32.wvsprintfW
+140 stdcall @(long wstr long) user32.SetPropW
+141 stdcall @(long long long) user32.SetWindowLongW
+142 stdcall @(long long long long) user32.SetWindowsHookExW
+143 stdcall @(long wstr) user32.SetWindowTextW
+144 stdcall @(long ptr) gdi32.StartDocW
+145 stdcall @(long long ptr long) user32.SystemParametersInfoW
+146 stdcall @(long long ptr) user32.TranslateAcceleratorW
+147 stdcall @(wstr long) user32.UnregisterClassW
+148 stdcall @(long) user32.VkKeyScanW
+149 stdcall @(long wstr long long) user32.WinHelpW
+150 stdcall @(ptr wstr ptr) user32.wvsprintfW
151 stdcall @(str ptr long) SHLWAPI_151
152 stdcall @(wstr wstr long) SHLWAPI_152
153 stdcall @(long long long) SHLWAPI_153
@@ -156,7 +156,7 @@
156 stdcall @(wstr wstr) SHLWAPI_156
157 stdcall @(str str) SHLWAPI_157
158 stdcall @(wstr wstr) SHLWAPI_158
-159 forward @ kernel32.CompareStringW
+159 stdcall @(long long wstr long wstr long) kernel32.CompareStringW
160 stub @
161 stub @
162 stdcall @(str long) SHLWAPI_162
@@ -295,28 +295,28 @@
295 stdcall @(wstr ptr wstr wstr) SHLWAPI_295
296 stub @
297 stub @
-298 forward @ kernel32.WritePrivateProfileStringW
+298 stdcall @(wstr wstr wstr wstr) kernel32.WritePrivateProfileStringW
299 stdcall @(long long long long ptr wstr long ptr) SHLWAPI_299
-300 forward @ gdi32.CreateFontW
-301 forward @ user32.DrawTextExW
-302 forward @ user32.GetMenuItemInfoW
-303 forward @ user32.InsertMenuItemW
-304 forward @ gdi32.CreateMetaFileW
-305 forward @ kernel32.CreateMutexW
-306 forward @ kernel32.ExpandEnvironmentStringsW
-307 forward @ kernel32.CreateSemaphoreW
-308 forward @ kernel32.IsBadStringPtrW
-309 forward @ kernel32.LoadLibraryW
-310 forward @ kernel32.GetTimeFormatW
-311 forward @ kernel32.GetDateFormatW
-312 forward @ kernel32.GetPrivateProfileStringW
+300 stdcall @(long long long long long long long long long long long long long wstr) gdi32.CreateFontW
+301 stdcall @(long wstr long ptr long ptr) user32.DrawTextExW
+302 stdcall @(long long long ptr) user32.GetMenuItemInfoW
+303 stdcall @(long long long ptr) user32.InsertMenuItemW
+304 stdcall @(wstr) gdi32.CreateMetaFileW
+305 stdcall @(ptr long wstr) kernel32.CreateMutexW
+306 stdcall @(wstr ptr long) kernel32.ExpandEnvironmentStringsW
+307 stdcall @(ptr long long wstr) kernel32.CreateSemaphoreW
+308 stdcall @(ptr long) kernel32.IsBadStringPtrW
+309 stdcall @(wstr) kernel32.LoadLibraryW
+310 stdcall @(long long ptr wstr ptr long) kernel32.GetTimeFormatW
+311 stdcall @(long long ptr wstr ptr long) kernel32.GetDateFormatW
+312 stdcall @(wstr wstr wstr ptr long wstr) kernel32.GetPrivateProfileStringW
313 stdcall @(ptr long ptr long long) SHLWAPI_313
-314 forward @ user32.RegisterClassExW
-315 forward @ user32.GetClassInfoExW
+314 stdcall @(ptr) user32.RegisterClassExW
+315 stdcall @(long wstr ptr) user32.GetClassInfoExW
316 stub SHCreateStreamOnFileAOld
317 stub SHCreateStreamOnFileWOld
318 stdcall @(long long wstr long) SHLWAPI_318
-319 forward @ user32.FindWindowExW
+319 stdcall @(long long wstr wstr) user32.FindWindowExW
320 stdcall @(str str) SHLWAPI_320
321 stdcall @(wstr wstr) SHLWAPI_321
322 stdcall @(str) SHLWAPI_322
@@ -329,22 +329,22 @@
329 stdcall @(wstr ptr long) SHLWAPI_329
330 stub @
331 stub @
-332 forward @ user32.CallMsgFilterW
+332 stdcall @(ptr long) user32.CallMsgFilterW
333 stdcall @(ptr) SHLWAPI_333
334 stdcall @(ptr ptr) SHLWAPI_334
335 stdcall @(ptr) SHLWAPI_335
336 stdcall @(ptr) SHLWAPI_336
337 stdcall @(wstr long ptr ptr long) SHLWAPI_337
-338 forward @ kernel32.SetFileAttributesW
-339 forward @ kernel32.GetNumberFormatW
-340 forward @ user32.MessageBoxW
-341 forward @ kernel32.FindNextFileW
+338 stdcall @(wstr long) kernel32.SetFileAttributesW
+339 stdcall @(long long wstr ptr ptr long) kernel32.GetNumberFormatW
+340 stdcall @(long wstr wstr long) user32.MessageBoxW
+341 stdcall @(long ptr) kernel32.FindNextFileW
342 stdcall @(ptr long long) SHInterlockedCompareExchange
343 stub @
344 stub @
345 stub @
346 stdcall @(wstr ptr long) SHLWAPI_346
-347 forward @ advapi32.RegDeleteValueW
+347 stdcall @(long wstr) advapi32.RegDeleteValueW
348 stub @
349 stub @
350 stdcall @(wstr ptr) SHLWAPI_350
@@ -356,17 +356,17 @@
356 stdcall -noname _CreateAllAccessSecurityAttributes(ptr ptr) _CreateAllAccessSecurityAttributes
357 stdcall @(wstr wstr wstr long long) SHLWAPI_357
358 stdcall @(wstr long long ptr ptr long) SHLWAPI_358
-359 forward @ kernel32.OpenEventW
-360 forward @ kernel32.RemoveDirectoryW
-361 forward @ kernel32.GetShortPathNameW
-362 forward @ advapi32.GetUserNameW
+359 stdcall @(long long wstr) kernel32.OpenEventW
+360 stdcall @(wstr) kernel32.RemoveDirectoryW
+361 stdcall @(wstr ptr long) kernel32.GetShortPathNameW
+362 stdcall @(ptr ptr) advapi32.GetUserNameW
363 stub @
364 stdcall @(str str long) SHLWAPI_364
365 stub @
-366 forward @ advapi32.RegEnumValueW
-367 forward @ kernel32.WritePrivateProfileStructW
-368 forward @ kernel32.GetPrivateProfileStructW
-369 forward @ kernel32.CreateProcessW
+366 stdcall @(long long ptr ptr ptr ptr ptr ptr) advapi32.RegEnumValueW
+367 stdcall @(wstr wstr ptr long wstr) kernel32.WritePrivateProfileStructW
+368 stdcall @(wstr wstr ptr long wstr) kernel32.GetPrivateProfileStructW
+369 stdcall @(wstr wstr ptr ptr long long ptr wstr ptr ptr) kernel32.CreateProcessW
370 stdcall @(long wstr long) SHLWAPI_370
371 stub @
372 stub @
@@ -390,8 +390,8 @@
390 stdcall @(long wstr) SHLWAPI_390
391 stdcall @(ptr ptr long ptr long) SHLWAPI_391
392 stub @
-393 forward @ user32.CreateDialogIndirectParamW
-394 forward @ user32.CreateDialogIndirectParamA
+393 stdcall @(long ptr long ptr long) user32.CreateDialogIndirectParamW
+394 stdcall @(long ptr long ptr long) user32.CreateDialogIndirectParamA
395 stub @
396 stub @
397 stub @
@@ -425,13 +425,13 @@
425 stub @
426 stub @
427 stub @
-428 forward @ user32.TrackPopupMenuEx
+428 stdcall @(long long long long long ptr) user32.TrackPopupMenuEx
429 stub @
430 stdcall @(long long) SHLWAPI_430
431 stdcall @(long) SHLWAPI_431
432 stub @
433 stub @
-434 forward @ user32.SendMessageTimeoutW
+434 stdcall @(long long long long long long ptr) user32.SendMessageTimeoutW
435 stub @
436 stdcall @(wstr ptr) SHLWAPI_436
437 stdcall @(long) SHLWAPI_437
@@ -439,9 +439,9 @@
439 stub @
440 stub @
441 stub @
-442 forward @ kernel32.GetEnvironmentVariableW
-443 forward @ kernel32.GetSystemWindowsDirectoryA
-444 forward @ kernel32.GetSystemWindowsDirectoryW
+442 stdcall @(wstr ptr long) kernel32.GetEnvironmentVariableW
+443 stdcall @(ptr long) kernel32.GetSystemWindowsDirectoryA
+444 stdcall @(ptr long) kernel32.GetSystemWindowsDirectoryW
445 stdcall ColorRGBToHLS(long ptr ptr ptr) ColorRGBToHLS
446 stub @
diff --git a/dlls/urlmon/urlmon.spec b/dlls/urlmon/urlmon.spec
index 96f2af8..4c16953 100644
--- a/dlls/urlmon/urlmon.spec
+++ b/dlls/urlmon/urlmon.spec
@@ -26,7 +26,7 @@
@ stdcall DllRegisterServer() URLMON_DllRegisterServer
@ stdcall DllRegisterServerEx() URLMON_DllRegisterServerEx
@ stdcall DllUnregisterServer() URLMON_DllUnregisterServer
-@ forward Extract cabinet.Extract
+@ stdcall Extract(long ptr) cabinet.Extract
@ stub FaultInIEFeature
@ stub FindMediaType
@ stub FindMediaTypeClass
@@ -46,7 +46,7 @@
@ stub IsLoggingEnabledA
@ stub IsLoggingEnabledW
@ stub IsValidURL
-@ forward MkParseDisplayNameEx ole32.MkParseDisplayName
+@ stdcall MkParseDisplayNameEx(ptr ptr ptr ptr) ole32.MkParseDisplayName
@ stdcall ObtainUserAgentString(long str ptr) ObtainUserAgentString
@ stub PrivateCoInstall
@ stdcall RegisterBindStatusCallback(ptr ptr ptr long) RegisterBindStatusCallback
diff --git a/dlls/version/version.spec b/dlls/version/version.spec
index 8bfa117..8ab59e2 100644
--- a/dlls/version/version.spec
+++ b/dlls/version/version.spec
@@ -7,8 +7,8 @@
@ stdcall VerFindFileW(long wstr wstr wstr ptr ptr ptr ptr) VerFindFileW
@ stdcall VerInstallFileA(long str str str str str ptr ptr) VerInstallFileA
@ stdcall VerInstallFileW(long wstr wstr wstr wstr wstr ptr ptr) VerInstallFileW
-@ forward VerLanguageNameA KERNEL32.VerLanguageNameA
-@ forward VerLanguageNameW KERNEL32.VerLanguageNameW
+@ stdcall VerLanguageNameA(long str long) kernel32.VerLanguageNameA
+@ stdcall VerLanguageNameW(long wstr long) kernel32.VerLanguageNameW
@ stdcall VerQueryValueA(ptr str ptr ptr) VerQueryValueA
@ stdcall VerQueryValueW(ptr wstr ptr ptr) VerQueryValueW
@ stub VerThkSL_ThunkData32
diff --git a/dlls/win32s/w32skrnl.spec b/dlls/win32s/w32skrnl.spec
index 0fb09a8..70d8e65 100644
--- a/dlls/win32s/w32skrnl.spec
+++ b/dlls/win32s/w32skrnl.spec
@@ -14,7 +14,7 @@
14 stdcall _kGetWin32sDirectory@0() GetWin32sDirectory
15 stub _sprintf
16 stub _KIsDBCSLeadByte@4
-17 forward W32S_BackTo32 KERNEL32.W32S_BackTo32
+17 stdcall -i386 W32S_BackTo32() kernel32.W32S_BackTo32
18 stub _KGetDbgFlags32
19 stub SelToFlat
20 stub _FreeKernelHeap@4
@@ -27,7 +27,7 @@
27 stub _NtDupSection@4
28 stub _GetSelModName@20
29 stub _FGetDscr@8
-30 forward _RtlNtStatusToDosError ntdll.RtlNtStatusToDosError #FIXME: not sure
+30 stdcall _RtlNtStatusToDosError(long) ntdll.RtlNtStatusToDosError #FIXME: not sure
31 stub _NtFlushVirtualMemory@16
32 stub _snprintf
33 stub _NtUnmapViewOfSection@8
diff --git a/dlls/winsock/ws2_32.spec b/dlls/winsock/ws2_32.spec
index 331ef08..0c945c7 100644
--- a/dlls/winsock/ws2_32.spec
+++ b/dlls/winsock/ws2_32.spec
@@ -72,7 +72,7 @@
68 stub WSARecvDisconnect
69 stdcall WSARecvFrom(long ptr long ptr ptr ptr ptr ptr ptr ) WSARecvFrom
70 stub WSARemoveServiceClass
-71 forward WSAResetEvent KERNEL32.ResetEvent
+71 stdcall WSAResetEvent(long) kernel32.ResetEvent
72 stdcall WSASend(long ptr long ptr long ptr ptr) WSASend
73 stdcall WSASendDisconnect(long ptr) WSASendDisconnect
74 stdcall WSASendTo(long ptr long ptr long ptr long ptr ptr) WSASendTo
@@ -83,7 +83,7 @@
79 stub WSASocketW
80 stub WSAStringToAddressA
81 stub WSAStringToAddressW
-82 forward WSAWaitForMultipleEvents KERNEL32.WaitForMultipleObjectsEx
+82 stdcall WSAWaitForMultipleEvents(long ptr long long long) kernel32.WaitForMultipleObjectsEx
83 stdcall WSCDeinstallProvider(ptr ptr) WSCDeinstallProvider
84 stub WSCEnableNSProvider
85 stub WSCEnumProtocols
diff --git a/dlls/wow32/wow32.spec b/dlls/wow32/wow32.spec
index e4222bd..c2837fa 100644
--- a/dlls/wow32/wow32.spec
+++ b/dlls/wow32/wow32.spec
@@ -1,19 +1,19 @@
# ordinal exports
-1 forward WOWGetDescriptor kernel32.K32WOWGetDescriptor
+1 stdcall WOWGetDescriptor(long long) kernel32.K32WOWGetDescriptor
-@ forward WOWCallback16 kernel32.K32WOWCallback16
-@ forward WOWCallback16Ex kernel32.K32WOWCallback16Ex
-@ forward WOWDirectedYield16 kernel32.K32WOWDirectedYield16
-@ forward WOWGetVDMPointer kernel32.K32WOWGetVDMPointer
-@ forward WOWGetVDMPointerFix kernel32.K32WOWGetVDMPointerFix
-@ forward WOWGetVDMPointerUnfix kernel32.K32WOWGetVDMPointerUnfix
-@ forward WOWGlobalAlloc16 kernel32.K32WOWGlobalAlloc16
-@ forward WOWGlobalAllocLock16 kernel32.K32WOWGlobalAllocLock16
-@ forward WOWGlobalFree16 kernel32.K32WOWGlobalFree16
-@ forward WOWGlobalLock16 kernel32.K32WOWGlobalLock16
-@ forward WOWGlobalLockSize16 kernel32.K32WOWGlobalLockSize16
-@ forward WOWGlobalUnlock16 kernel32.K32WOWGlobalUnlock16
-@ forward WOWGlobalUnlockFree16 kernel32.K32WOWGlobalUnlockFree16
-@ forward WOWHandle16 kernel32.K32WOWHandle16
-@ forward WOWHandle32 kernel32.K32WOWHandle32
-@ forward WOWYield16 kernel32.K32WOWYield16
+@ stdcall WOWCallback16(long long) kernel32.K32WOWCallback16
+@ stdcall WOWCallback16Ex(ptr long long ptr ptr) kernel32.K32WOWCallback16Ex
+@ stdcall WOWDirectedYield16(long) kernel32.K32WOWDirectedYield16
+@ stdcall WOWGetVDMPointer(long long long) kernel32.K32WOWGetVDMPointer
+@ stdcall WOWGetVDMPointerFix(long long long) kernel32.K32WOWGetVDMPointerFix
+@ stdcall WOWGetVDMPointerUnfix(long) kernel32.K32WOWGetVDMPointerUnfix
+@ stdcall WOWGlobalAlloc16(long long) kernel32.K32WOWGlobalAlloc16
+@ stdcall WOWGlobalAllocLock16(long long ptr) kernel32.K32WOWGlobalAllocLock16
+@ stdcall WOWGlobalFree16(long) kernel32.K32WOWGlobalFree16
+@ stdcall WOWGlobalLock16(long) kernel32.K32WOWGlobalLock16
+@ stdcall WOWGlobalLockSize16(long ptr) kernel32.K32WOWGlobalLockSize16
+@ stdcall WOWGlobalUnlock16(long) kernel32.K32WOWGlobalUnlock16
+@ stdcall WOWGlobalUnlockFree16(long) kernel32.K32WOWGlobalUnlockFree16
+@ stdcall WOWHandle16(long long) kernel32.K32WOWHandle16
+@ stdcall WOWHandle32(long long) kernel32.K32WOWHandle32
+@ stdcall WOWYield16() kernel32.K32WOWYield16
diff --git a/dlls/wsock32/wsock32.spec b/dlls/wsock32/wsock32.spec
index e3e99ef..4a5bd36 100644
--- a/dlls/wsock32/wsock32.spec
+++ b/dlls/wsock32/wsock32.spec
@@ -1,51 +1,51 @@
- 1 forward accept ws2_32.accept
- 2 forward bind ws2_32.bind
- 3 forward closesocket ws2_32.closesocket
- 4 forward connect ws2_32.connect
- 5 forward getpeername ws2_32.getpeername
- 6 forward getsockname ws2_32.getsockname
- 7 forward getsockopt ws2_32.getsockopt
- 8 forward htonl ws2_32.htonl
- 9 forward htons ws2_32.htons
- 10 forward inet_addr ws2_32.inet_addr
- 11 forward inet_ntoa ws2_32.inet_ntoa
- 12 forward ioctlsocket ws2_32.ioctlsocket
- 13 forward listen ws2_32.listen
- 14 forward ntohl ws2_32.ntohl
- 15 forward ntohs ws2_32.ntohs
- 16 forward recv ws2_32.recv
- 17 forward recvfrom ws2_32.recvfrom
- 18 forward select ws2_32.select
- 19 forward send ws2_32.send
- 20 forward sendto ws2_32.sendto
- 21 forward setsockopt ws2_32.setsockopt
- 22 forward shutdown ws2_32.shutdown
- 23 forward socket ws2_32.socket
- 51 forward gethostbyaddr ws2_32.gethostbyaddr
- 52 forward gethostbyname ws2_32.gethostbyname
- 53 forward getprotobyname ws2_32.getprotobyname
- 54 forward getprotobynumber ws2_32.getprotobynumber
- 55 forward getservbyname ws2_32.getservbyname
- 56 forward getservbyport ws2_32.getservbyport
- 57 forward gethostname ws2_32.gethostname
-101 forward WSAAsyncSelect ws2_32.WSAAsyncSelect
-102 forward WSAAsyncGetHostByAddr ws2_32.WSAAsyncGetHostByAddr
-103 forward WSAAsyncGetHostByName ws2_32.WSAAsyncGetHostByName
-104 forward WSAAsyncGetProtoByNumber ws2_32.WSAAsyncGetProtoByNumber
-105 forward WSAAsyncGetProtoByName ws2_32.WSAAsyncGetProtoByName
-106 forward WSAAsyncGetServByPort ws2_32.WSAAsyncGetServByPort
-107 forward WSAAsyncGetServByName ws2_32.WSAAsyncGetServByName
-108 forward WSACancelAsyncRequest ws2_32.WSACancelAsyncRequest
-109 forward WSASetBlockingHook ws2_32.WSASetBlockingHook
-110 forward WSAUnhookBlockingHook ws2_32.WSAUnhookBlockingHook
-111 forward WSAGetLastError ws2_32.WSAGetLastError
-112 forward WSASetLastError ws2_32.WSASetLastError
-113 forward WSACancelBlockingCall ws2_32.WSACancelBlockingCall
-114 forward WSAIsBlocking ws2_32.WSAIsBlocking
-115 forward WSAStartup ws2_32.WSAStartup
-116 forward WSACleanup ws2_32.WSACleanup
-151 forward __WSAFDIsSet ws2_32.__WSAFDIsSet
-500 forward WEP ws2_32.WEP
+ 1 stdcall accept(long ptr ptr) ws2_32.accept
+ 2 stdcall bind(long ptr long) ws2_32.bind
+ 3 stdcall closesocket(long) ws2_32.closesocket
+ 4 stdcall connect(long ptr long) ws2_32.connect
+ 5 stdcall getpeername(long ptr ptr) ws2_32.getpeername
+ 6 stdcall getsockname(long ptr ptr) ws2_32.getsockname
+ 7 stdcall getsockopt(long long long ptr ptr) ws2_32.getsockopt
+ 8 stdcall htonl(long) ws2_32.htonl
+ 9 stdcall htons(long) ws2_32.htons
+ 10 stdcall inet_addr(str) ws2_32.inet_addr
+ 11 stdcall inet_ntoa(ptr) ws2_32.inet_ntoa
+ 12 stdcall ioctlsocket(long long ptr) ws2_32.ioctlsocket
+ 13 stdcall listen(long long) ws2_32.listen
+ 14 stdcall ntohl(long) ws2_32.ntohl
+ 15 stdcall ntohs(long) ws2_32.ntohs
+ 16 stdcall recv(long ptr long long) ws2_32.recv
+ 17 stdcall recvfrom(long ptr long long ptr ptr) ws2_32.recvfrom
+ 18 stdcall select(long ptr ptr ptr ptr) ws2_32.select
+ 19 stdcall send(long ptr long long) ws2_32.send
+ 20 stdcall sendto(long ptr long long ptr long) ws2_32.sendto
+ 21 stdcall setsockopt(long long long ptr long) ws2_32.setsockopt
+ 22 stdcall shutdown(long long) ws2_32.shutdown
+ 23 stdcall socket(long long long) ws2_32.socket
+ 51 stdcall gethostbyaddr(ptr long long) ws2_32.gethostbyaddr
+ 52 stdcall gethostbyname(str) ws2_32.gethostbyname
+ 53 stdcall getprotobyname(str) ws2_32.getprotobyname
+ 54 stdcall getprotobynumber(long) ws2_32.getprotobynumber
+ 55 stdcall getservbyname(str str) ws2_32.getservbyname
+ 56 stdcall getservbyport(long str) ws2_32.getservbyport
+ 57 stdcall gethostname(ptr long) ws2_32.gethostname
+101 stdcall WSAAsyncSelect(long long long long) ws2_32.WSAAsyncSelect
+102 stdcall WSAAsyncGetHostByAddr(long long ptr long long ptr long) ws2_32.WSAAsyncGetHostByAddr
+103 stdcall WSAAsyncGetHostByName(long long str ptr long) ws2_32.WSAAsyncGetHostByName
+104 stdcall WSAAsyncGetProtoByNumber(long long long ptr long) ws2_32.WSAAsyncGetProtoByNumber
+105 stdcall WSAAsyncGetProtoByName(long long str ptr long) ws2_32.WSAAsyncGetProtoByName
+106 stdcall WSAAsyncGetServByPort(long long long str ptr long) ws2_32.WSAAsyncGetServByPort
+107 stdcall WSAAsyncGetServByName(long long str str ptr long) ws2_32.WSAAsyncGetServByName
+108 stdcall WSACancelAsyncRequest(long) ws2_32.WSACancelAsyncRequest
+109 stdcall WSASetBlockingHook(ptr) ws2_32.WSASetBlockingHook
+110 stdcall WSAUnhookBlockingHook() ws2_32.WSAUnhookBlockingHook
+111 stdcall WSAGetLastError() ws2_32.WSAGetLastError
+112 stdcall WSASetLastError(long) ws2_32.WSASetLastError
+113 stdcall WSACancelBlockingCall() ws2_32.WSACancelBlockingCall
+114 stdcall WSAIsBlocking() ws2_32.WSAIsBlocking
+115 stdcall WSAStartup(long ptr) ws2_32.WSAStartup
+116 stdcall WSACleanup() ws2_32.WSACleanup
+151 stdcall __WSAFDIsSet(long ptr) ws2_32.__WSAFDIsSet
+500 stdcall WEP() ws2_32.WEP
# applications *should* 'degrade gracefully if these are not present
# ... as it is, they don't