Some more prototype fixes.
git-svn-id: svn+ssh://svn.code.sf.net/p/mingw-w64/code/trunk@1235 4407c894-4637-0410-b4f5-ada5f102cad1
diff --git a/mingw-w64-crt/intrincs/cpuid.c b/mingw-w64-crt/intrincs/cpuid.c
index e5a163d..00369e8 100644
--- a/mingw-w64-crt/intrincs/cpuid.c
+++ b/mingw-w64-crt/intrincs/cpuid.c
@@ -7,6 +7,8 @@
#define __CRT__NO_INLINE
#include <_mingw.h>
+ void __cpuid(int CPUInfo[4], int InfoType);
+
void __cpuid(int CPUInfo[4], int InfoType)
{
__asm__ __volatile__ (
diff --git a/mingw-w64-crt/intrincs/inbyte.c b/mingw-w64-crt/intrincs/inbyte.c
index 3eccfc9..1d4c9d6 100644
--- a/mingw-w64-crt/intrincs/inbyte.c
+++ b/mingw-w64-crt/intrincs/inbyte.c
@@ -7,6 +7,8 @@
#define __CRT__NO_INLINE
#include <_mingw.h>
+unsigned char __inbyte(unsigned short);
+
unsigned char __inbyte(unsigned short Port)
{
unsigned char value;
diff --git a/mingw-w64-crt/intrincs/inbytestring.c b/mingw-w64-crt/intrincs/inbytestring.c
index 5b0d4db..73517e4 100644
--- a/mingw-w64-crt/intrincs/inbytestring.c
+++ b/mingw-w64-crt/intrincs/inbytestring.c
@@ -7,7 +7,9 @@
#define __CRT__NO_INLINE
#include <_mingw.h>
-void __inbytestring(unsigned short Port,unsigned char *Buffer,unsigned long Count)
+void __inbytestring(unsigned short, unsigned char *, unsigned long);
+
+void __inbytestring(unsigned short Port, unsigned char *Buffer, unsigned long Count)
{
__asm__ __volatile__ (
"cld ; rep ; insb "
diff --git a/mingw-w64-crt/intrincs/indword.c b/mingw-w64-crt/intrincs/indword.c
index e3e42a2..e289902 100644
--- a/mingw-w64-crt/intrincs/indword.c
+++ b/mingw-w64-crt/intrincs/indword.c
@@ -7,6 +7,8 @@
#define __CRT__NO_INLINE
#include <_mingw.h>
+unsigned long __indword(unsigned short);
+
unsigned long __indword(unsigned short Port)
{
unsigned long value;
diff --git a/mingw-w64-crt/intrincs/indwordstring.c b/mingw-w64-crt/intrincs/indwordstring.c
index 55237fa..3dbd66f 100644
--- a/mingw-w64-crt/intrincs/indwordstring.c
+++ b/mingw-w64-crt/intrincs/indwordstring.c
@@ -7,6 +7,8 @@
#define __CRT__NO_INLINE
#include <_mingw.h>
+void __indwordstring(unsigned short Port,unsigned long *Buffer,unsigned long Count);
+
void __indwordstring(unsigned short Port,unsigned long *Buffer,unsigned long Count)
{
__asm__ __volatile__ (
diff --git a/mingw-w64-crt/intrincs/inword.c b/mingw-w64-crt/intrincs/inword.c
index d83c447..fedd26f 100644
--- a/mingw-w64-crt/intrincs/inword.c
+++ b/mingw-w64-crt/intrincs/inword.c
@@ -7,6 +7,8 @@
#define __CRT__NO_INLINE
#include <_mingw.h>
+unsigned short __inword(unsigned short Port);
+
unsigned short __inword(unsigned short Port)
{
unsigned short value;
diff --git a/mingw-w64-crt/intrincs/inwordstring.c b/mingw-w64-crt/intrincs/inwordstring.c
index 089140e..7487c6f 100644
--- a/mingw-w64-crt/intrincs/inwordstring.c
+++ b/mingw-w64-crt/intrincs/inwordstring.c
@@ -7,6 +7,8 @@
#define __CRT__NO_INLINE
#include <_mingw.h>
+void __inwordstring(unsigned short Port,unsigned short *Buffer,unsigned long Count);
+
void __inwordstring(unsigned short Port,unsigned short *Buffer,unsigned long Count)
{
__asm__ __volatile__ (
diff --git a/mingw-w64-crt/intrincs/outbyte.c b/mingw-w64-crt/intrincs/outbyte.c
index e3aacbd..a1f1993 100644
--- a/mingw-w64-crt/intrincs/outbyte.c
+++ b/mingw-w64-crt/intrincs/outbyte.c
@@ -7,6 +7,8 @@
#define __CRT__NO_INLINE
#include <_mingw.h>
+void __outbyte(unsigned short Port,unsigned char Data);
+
void __outbyte(unsigned short Port,unsigned char Data)
{
__asm__ __volatile__ ("outb %b0,%w1"
diff --git a/mingw-w64-crt/intrincs/outbytestring.c b/mingw-w64-crt/intrincs/outbytestring.c
index e62d94b..21b9615 100644
--- a/mingw-w64-crt/intrincs/outbytestring.c
+++ b/mingw-w64-crt/intrincs/outbytestring.c
@@ -7,6 +7,8 @@
#define __CRT__NO_INLINE
#include <_mingw.h>
+void __outbytestring(unsigned short Port,unsigned char *Buffer,unsigned long Count);
+
void __outbytestring(unsigned short Port,unsigned char *Buffer,unsigned long Count)
{
__asm__ __volatile__ (
diff --git a/mingw-w64-crt/intrincs/outdword.c b/mingw-w64-crt/intrincs/outdword.c
index 3312fb6..f270cfa 100644
--- a/mingw-w64-crt/intrincs/outdword.c
+++ b/mingw-w64-crt/intrincs/outdword.c
@@ -7,6 +7,8 @@
#define __CRT__NO_INLINE
#include <_mingw.h>
+void __outdword(unsigned short Port,unsigned long Data);
+
void __outdword(unsigned short Port,unsigned long Data)
{
__asm__ __volatile__ ("outl %0,%w1"
diff --git a/mingw-w64-crt/intrincs/outdwordstring.c b/mingw-w64-crt/intrincs/outdwordstring.c
index 414fbfe..2a10a7c 100644
--- a/mingw-w64-crt/intrincs/outdwordstring.c
+++ b/mingw-w64-crt/intrincs/outdwordstring.c
@@ -7,6 +7,8 @@
#define __CRT__NO_INLINE
#include <_mingw.h>
+void __outdwordstring(unsigned short Port,unsigned long *Buffer,unsigned long Count);
+
void __outdwordstring(unsigned short Port,unsigned long *Buffer,unsigned long Count)
{
__asm__ __volatile__ (
diff --git a/mingw-w64-crt/intrincs/outword.c b/mingw-w64-crt/intrincs/outword.c
index ac15e38..a33f7cd 100644
--- a/mingw-w64-crt/intrincs/outword.c
+++ b/mingw-w64-crt/intrincs/outword.c
@@ -7,6 +7,8 @@
#define __CRT__NO_INLINE
#include <_mingw.h>
+void __outword(unsigned short Port,unsigned short Data);
+
void __outword(unsigned short Port,unsigned short Data)
{
__asm__ __volatile__ ("outw %w0,%w1"
diff --git a/mingw-w64-crt/intrincs/outwordstring.c b/mingw-w64-crt/intrincs/outwordstring.c
index af27530..d322d8c 100644
--- a/mingw-w64-crt/intrincs/outwordstring.c
+++ b/mingw-w64-crt/intrincs/outwordstring.c
@@ -7,6 +7,8 @@
#define __CRT__NO_INLINE
#include <_mingw.h>
+void __outwordstring(unsigned short Port,unsigned short *Buffer,unsigned long Count);
+
void __outwordstring(unsigned short Port,unsigned short *Buffer,unsigned long Count)
{
__asm__ __volatile__ (
diff --git a/mingw-w64-crt/intrincs/rdtsc.c b/mingw-w64-crt/intrincs/rdtsc.c
index 912416b..64b02fa 100644
--- a/mingw-w64-crt/intrincs/rdtsc.c
+++ b/mingw-w64-crt/intrincs/rdtsc.c
@@ -7,6 +7,8 @@
#define __CRT__NO_INLINE
#include <_mingw.h>
+ unsigned __int64 __rdtsc(void);
+
unsigned __int64 __rdtsc(void)
{
#ifdef _WIN64
diff --git a/mingw-w64-crt/intrincs/readcr0.c b/mingw-w64-crt/intrincs/readcr0.c
index 796051c..7665a9d 100644
--- a/mingw-w64-crt/intrincs/readcr0.c
+++ b/mingw-w64-crt/intrincs/readcr0.c
@@ -12,6 +12,8 @@
*/
#ifdef _WIN64
+ unsigned __int64 __readcr0(void);
+
unsigned __int64 __readcr0(void)
{
unsigned __int64 value;
@@ -21,6 +23,8 @@
return value;
}
#else
+ unsigned long __readcr0(void);
+
unsigned long __readcr0(void)
{
unsigned long value;
diff --git a/mingw-w64-crt/intrincs/readcr2.c b/mingw-w64-crt/intrincs/readcr2.c
index 3b32abd..f42cf5b 100644
--- a/mingw-w64-crt/intrincs/readcr2.c
+++ b/mingw-w64-crt/intrincs/readcr2.c
@@ -12,6 +12,8 @@
*/
#ifdef _WIN64
+ unsigned __int64 __readcr2(void);
+
unsigned __int64 __readcr2(void)
{
unsigned __int64 value;
@@ -21,6 +23,8 @@
return value;
}
#else
+ unsigned long __readcr2(void);
+
unsigned long __readcr2(void)
{
unsigned long value;
diff --git a/mingw-w64-crt/intrincs/readcr3.c b/mingw-w64-crt/intrincs/readcr3.c
index 72331be..43bfc7d 100644
--- a/mingw-w64-crt/intrincs/readcr3.c
+++ b/mingw-w64-crt/intrincs/readcr3.c
@@ -12,6 +12,8 @@
*/
#ifdef _WIN64
+ unsigned __int64 __readcr3(void);
+
unsigned __int64 __readcr3(void)
{
unsigned __int64 value;
@@ -21,6 +23,8 @@
return value;
}
#else
+ unsigned long __readcr3(void);
+
unsigned long __readcr3(void)
{
unsigned long value;
diff --git a/mingw-w64-crt/intrincs/readmsr.c b/mingw-w64-crt/intrincs/readmsr.c
index adc3f24..4c417ec 100644
--- a/mingw-w64-crt/intrincs/readmsr.c
+++ b/mingw-w64-crt/intrincs/readmsr.c
@@ -7,6 +7,8 @@
#define __CRT__NO_INLINE
#include <_mingw.h>
+ unsigned __int64 __readmsr(unsigned long msr);
+
unsigned __int64 __readmsr(unsigned long msr)
{
#ifdef _WIN64
diff --git a/mingw-w64-crt/intrincs/writecr0.c b/mingw-w64-crt/intrincs/writecr0.c
index 1639fbe..40e73f8 100644
--- a/mingw-w64-crt/intrincs/writecr0.c
+++ b/mingw-w64-crt/intrincs/writecr0.c
@@ -12,6 +12,8 @@
*/
#ifdef _WIN64
+ void __writecr0(unsigned __int64 Data);
+
void __writecr0(unsigned __int64 Data)
{
__asm__ __volatile__ (
@@ -21,6 +23,8 @@
: "memory");
}
#else
+ void __writecr0(unsigned Data);
+
void __writecr0(unsigned Data)
{
__asm__ __volatile__ (
diff --git a/mingw-w64-crt/intrincs/writecr2.c b/mingw-w64-crt/intrincs/writecr2.c
index 3d44737..b78f6b0 100644
--- a/mingw-w64-crt/intrincs/writecr2.c
+++ b/mingw-w64-crt/intrincs/writecr2.c
@@ -12,6 +12,8 @@
*/
#ifdef _WIN64
+ void __writecr2(unsigned __int64 Data);
+
void __writecr2(unsigned __int64 Data)
{
__asm__ __volatile__ (
@@ -21,6 +23,8 @@
: "memory");
}
#else
+ void __writecr2(unsigned Data);
+
void __writecr2(unsigned Data)
{
__asm__ __volatile__ (
diff --git a/mingw-w64-crt/intrincs/writecr3.c b/mingw-w64-crt/intrincs/writecr3.c
index 16e9b11..b463bba 100644
--- a/mingw-w64-crt/intrincs/writecr3.c
+++ b/mingw-w64-crt/intrincs/writecr3.c
@@ -12,6 +12,8 @@
*/
#ifdef _WIN64
+ void __writecr3(unsigned __int64 Data);
+
void __writecr3(unsigned __int64 Data)
{
__asm__ __volatile__ (
@@ -21,6 +23,8 @@
: "memory");
}
#else
+ void __writecr3(unsigned Data);
+
void __writecr3(unsigned Data)
{
__asm__ __volatile__ (
diff --git a/mingw-w64-crt/intrincs/writecr8.c b/mingw-w64-crt/intrincs/writecr8.c
index 7b79e89..a36cb62 100644
--- a/mingw-w64-crt/intrincs/writecr8.c
+++ b/mingw-w64-crt/intrincs/writecr8.c
@@ -12,6 +12,8 @@
*/
#ifdef _WIN64
+ void __writecr8(unsigned __int64 Data);
+
void __writecr8(unsigned __int64 Data)
{
__asm__ __volatile__ (
@@ -21,6 +23,8 @@
: "memory");
}
#else
+ void __writecr8(unsigned Data);
+
void __writecr8(unsigned Data)
{
__asm__ __volatile__ (
diff --git a/mingw-w64-crt/intrincs/writemsr.c b/mingw-w64-crt/intrincs/writemsr.c
index 862907c..2cd6973 100644
--- a/mingw-w64-crt/intrincs/writemsr.c
+++ b/mingw-w64-crt/intrincs/writemsr.c
@@ -7,6 +7,8 @@
#define __CRT__NO_INLINE
#include <_mingw.h>
+ void __writemsr (unsigned long msr, unsigned __int64 Value);
+
void __writemsr (unsigned long msr, unsigned __int64 Value)
{
unsigned long val1 = Value, val2 = Value >> 32;
diff --git a/mingw-w64-crt/libsrc/dummy_mingwthrd.c b/mingw-w64-crt/libsrc/dummy_mingwthrd.c
index e3462e8..7dd2f46 100644
--- a/mingw-w64-crt/libsrc/dummy_mingwthrd.c
+++ b/mingw-w64-crt/libsrc/dummy_mingwthrd.c
@@ -21,7 +21,7 @@
/* To protect the thread/key association data structure modifications. */
static CRITICAL_SECTION __mingwthr_cs;
-static volatile __mingwthr_cs_init = 0;
+static volatile int __mingwthr_cs_init = 0;
typedef struct __mingwthr_key __mingwthr_key_t;
diff --git a/mingw-w64-crt/misc/alarm.c b/mingw-w64-crt/misc/alarm.c
index b79d57b..fc2ba4f 100644
--- a/mingw-w64-crt/misc/alarm.c
+++ b/mingw-w64-crt/misc/alarm.c
@@ -4,6 +4,8 @@
* No warranty is given; refer to the file DISCLAIMER within this package.
*/
+unsigned int alarm(unsigned int);
+
unsigned int alarm(unsigned int seconds __attribute__ ((__unused__)))
{
return 0;
diff --git a/mingw-w64-crt/misc/difftime32.c b/mingw-w64-crt/misc/difftime32.c
index 91eed37..9eb3ecf 100644
--- a/mingw-w64-crt/misc/difftime32.c
+++ b/mingw-w64-crt/misc/difftime32.c
@@ -1,3 +1,5 @@
+double _difftime32(unsigned int _Time1,unsigned int _Time2);
+
double _difftime32(unsigned int _Time1,unsigned int _Time2)
{
unsigned int r = _Time1 - _Time2;
diff --git a/mingw-w64-crt/misc/difftime64.c b/mingw-w64-crt/misc/difftime64.c
index 6804000..d50006b 100644
--- a/mingw-w64-crt/misc/difftime64.c
+++ b/mingw-w64-crt/misc/difftime64.c
@@ -1,3 +1,5 @@
+double _difftime64(unsigned long long _Time1,unsigned long long _Time2);
+
double _difftime64(unsigned long long _Time1,unsigned long long _Time2)
{
unsigned long long r = _Time1 - _Time2;
diff --git a/mingw-w64-crt/misc/ftruncate.c b/mingw-w64-crt/misc/ftruncate.c
index c01b916..4ee59d6 100644
--- a/mingw-w64-crt/misc/ftruncate.c
+++ b/mingw-w64-crt/misc/ftruncate.c
@@ -1,5 +1,6 @@
int _chsize(int _FileHandle,long _Size);
+int ftruncate(int __fd,int __length);
int ftruncate(int __fd,int __length)
{
diff --git a/mingw-w64-crt/misc/mingw-fseek.c b/mingw-w64-crt/misc/mingw-fseek.c
index 3a0c41e..f5558f4 100644
--- a/mingw-w64-crt/misc/mingw-fseek.c
+++ b/mingw-w64-crt/misc/mingw-fseek.c
@@ -11,6 +11,8 @@
#define ZEROBLOCKSIZE 512
static int __mingw_fseek_called;
+int __mingw_fseek (FILE *fp, int offset, int whence);
+
int
__mingw_fseek (FILE *fp, int offset, int whence)
{
@@ -19,6 +21,8 @@
return fseek (fp, offset, whence);
}
+int __mingw_fseeko64 (FILE *fp, long offset, int whence);
+
int
__mingw_fseeko64 (FILE *fp, long offset, int whence)
{
@@ -27,6 +31,8 @@
return fseeko64 (fp, offset, whence);
}
+size_t __mingw_fwrite (const void *buffer, size_t size, size_t count, FILE *fp);
+
size_t
__mingw_fwrite (const void *buffer, size_t size, size_t count, FILE *fp)
{
diff --git a/mingw-w64-crt/stdio/fseeko64.c b/mingw-w64-crt/stdio/fseeko64.c
index 8baffbb..1257f55 100644
--- a/mingw-w64-crt/stdio/fseeko64.c
+++ b/mingw-w64-crt/stdio/fseeko64.c
@@ -79,6 +79,7 @@
__int64 __cdecl _lseeki64(int fh,__int64 pos,int mthd);
__int64 __cdecl _ftelli64(FILE *str);
void mingw_dosmaperr (unsigned long oserrno);
+int __cdecl _flush (FILE *str);
int __cdecl _flush (FILE *str)
{
diff --git a/mingw-w64-crt/stdio/vsnwprintf.c b/mingw-w64-crt/stdio/vsnwprintf.c
index afe735f..cc102ad 100644
--- a/mingw-w64-crt/stdio/vsnwprintf.c
+++ b/mingw-w64-crt/stdio/vsnwprintf.c
@@ -8,6 +8,8 @@
#include <stdarg.h>
#include <wchar.h>
+int __cdecl vsnwprintf(wchar_t *buffer, size_t n, const wchar_t * format, va_list argptr);
+
int __cdecl vsnwprintf(wchar_t *buffer, size_t n, const wchar_t * format, va_list argptr)
{
return _vsnwprintf(buffer, n, format, argptr);