define MSVCRT_div_t and MSVCRT_ldiv_t and test fixes
Pierre d'Herbemont
stegefin at free.fr
Fri Jul 9 14:09:52 CDT 2004
Hi!
This re-enables compilation on a Darwin/PowerPC host of the msvcrt dll.
Thanks!
Pierre
ChangeLog:
- define MSVCRT_div_t and MSVCRT_ldiv_t
- don't test i386 types on non i386
Pierre
-------------- next part --------------
Index: msvcrt.h
===================================================================
RCS file: /home/wine/wine/dlls/msvcrt/msvcrt.h,v
retrieving revision 1.26
diff -u -r1.26 msvcrt.h
--- msvcrt.h 25 Jun 2004 01:19:15 -0000 1.26
+++ msvcrt.h 9 Jul 2004 19:01:38 -0000
@@ -56,6 +56,14 @@
typedef long MSVCRT_clock_t;
typedef long MSVCRT_time_t;
typedef long MSVCRT_fpos_t;
+typedef struct MSVCRT__div_t {
+ int quot; /* quotient */
+ int rem; /* remainder */
+} MSVCRT_div_t;
+typedef struct MSVCRT__ldiv_t{
+ long quot; /* quotient */
+ long rem; /* remainder */
+} MSVCRT_ldiv_t;
typedef void (*MSVCRT_terminate_handler)();
typedef void (*MSVCRT_terminate_function)();
Index: tests/headers.c
===================================================================
RCS file: /home/wine/wine/dlls/msvcrt/tests/headers.c,v
retrieving revision 1.1
diff -u -r1.1 headers.c
--- tests/headers.c 25 Jun 2004 01:19:15 -0000 1.1
+++ tests/headers.c 9 Jul 2004 19:01:39 -0000
@@ -99,6 +99,12 @@
/************* Checking structs ***************/
void test_structs()
{
+ CHECK_STRUCT(_div_t);
+ CHECK_FIELD(_div_t, quot);
+ CHECK_FIELD(_div_t, rem);
+ CHECK_STRUCT(_ldiv_t);
+ CHECK_FIELD(_ldiv_t, quot);
+ CHECK_FIELD(_ldiv_t, rem);
CHECK_STRUCT(tm);
CHECK_FIELD(tm, tm_sec);
CHECK_FIELD(tm, tm_min);
@@ -155,6 +161,7 @@
CHECK_FIELD(_heapinfo, _pentry);
CHECK_FIELD(_heapinfo, _size);
CHECK_FIELD(_heapinfo, _useflag);
+#ifdef __i386__
CHECK_STRUCT(__JUMP_BUFFER);
CHECK_FIELD(__JUMP_BUFFER, Ebp);
CHECK_FIELD(__JUMP_BUFFER, Ebx);
@@ -167,6 +174,7 @@
CHECK_FIELD(__JUMP_BUFFER, Cookie);
CHECK_FIELD(__JUMP_BUFFER, UnwindFunc);
CHECK_FIELD(__JUMP_BUFFER, UnwindData[6]);
+#endif
CHECK_STRUCT(_diskfree_t);
CHECK_FIELD(_diskfree_t, total_clusters);
CHECK_FIELD(_diskfree_t, avail_clusters);
@@ -426,6 +434,7 @@
CHECK_DEF("_FPCLASS_PD", _FPCLASS_PD, MSVCRT__FPCLASS_PD);
CHECK_DEF("_FPCLASS_PN", _FPCLASS_PN, MSVCRT__FPCLASS_PN);
CHECK_DEF("_FPCLASS_PINF", _FPCLASS_PINF, MSVCRT__FPCLASS_PINF);
+#ifdef i386
CHECK_DEF("_EM_INVALID", _EM_INVALID, MSVCRT__EM_INVALID);
CHECK_DEF("_EM_DENORMAL", _EM_DENORMAL, MSVCRT__EM_DENORMAL);
CHECK_DEF("_EM_ZERODIVIDE", _EM_ZERODIVIDE, MSVCRT__EM_ZERODIVIDE);
@@ -441,6 +450,7 @@
CHECK_DEF("_PC_24", _PC_24, MSVCRT__PC_24);
CHECK_DEF("_PC_53", _PC_53, MSVCRT__PC_53);
CHECK_DEF("_PC_64", _PC_64, MSVCRT__PC_64);
+#endif
}
START_TEST(headers)
More information about the wine-patches
mailing list