[MSVCRT_WINETEST]
[reactos.git] / rostests / winetests / msvcrt / cpp.c
index 9c9158d..fa41ccb 100644 (file)
@@ -55,10 +55,10 @@ typedef struct __type_info
 /* Function pointers. We need to use these to call these funcs as __thiscall */
 static HMODULE hMsvcrt;
 
-static void* (*poperator_new)(unsigned int);
-static void  (*poperator_delete)(void*);
-static void* (*pmalloc)(unsigned int);
-static void  (*pfree)(void*);
+static void* (__cdecl *poperator_new)(unsigned int);
+static void  (__cdecl *poperator_delete)(void*);
+static void* (__cdecl *pmalloc)(unsigned int);
+static void  (__cdecl *pfree)(void*);
 
 /* exception */
 static void (WINAPI *pexception_ctor)(exception*,LPCSTR*);
@@ -113,12 +113,12 @@ static int   (WINAPI *ptype_info_opequals_equals)(type_info*,type_info*);
 static int   (WINAPI *ptype_info_opnot_equals)(type_info*,type_info*);
 
 /* RTTI */
-static type_info* (*p__RTtypeid)(void*);
-static void* (*p__RTCastToVoid)(void*);
-static void* (*p__RTDynamicCast)(void*,int,void*,void*,int);
+static type_info* (__cdecl *p__RTtypeid)(void*);
+static void* (__cdecl *p__RTCastToVoid)(void*);
+static void* (__cdecl *p__RTDynamicCast)(void*,int,void*,void*,int);
 
 /*Demangle*/
-static char* (*p__unDName)(char*,const char*,int,void*,void*,unsigned short int);
+static char* (__cdecl *p__unDName)(char*,const char*,int,void*,void*,unsigned short int);
 
 
 /* _very_ early native versions have serious RTTI bugs, so we check */
@@ -844,7 +844,7 @@ static void test_demangle_datatype(void)
        { "?AV?$CDB_GEN_BIG_ENUM_FLAG@W4CDB_WYSIWYG_BITS_ENUM@@$0HO@@@", "class CDB_GEN_BIG_ENUM_FLAG<enum CDB_WYSIWYG_BITS_ENUM,126>",TRUE},
        { "?AV?$CDB_GEN_BIG_ENUM_FLAG@W4CDB_WYSIWYG_BITS_ENUM@@$0HOA@@@", "class CDB_GEN_BIG_ENUM_FLAG<enum CDB_WYSIWYG_BITS_ENUM,2016>",TRUE},
        { "?AV?$CDB_GEN_BIG_ENUM_FLAG@W4CDB_WYSIWYG_BITS_ENUM@@$0HOAA@@@", "class CDB_GEN_BIG_ENUM_FLAG<enum CDB_WYSIWYG_BITS_ENUM,32256>",TRUE},
-       { "?AV?$CDB_GEN_BIG_ENUM_FLAG@W4CDB_WYSIWYG_BITS_ENUM@@$01@@@", "?AV?$CDB_GEN_BIG_ENUM_FLAG@W4CDB_WYSIWYG_BITS_ENUM@@$01@@@", FALSE},
+/*     { "?AV?$CDB_GEN_BIG_ENUM_FLAG@W4CDB_WYSIWYG_BITS_ENUM@@$01@@@", "?AV?$CDB_GEN_BIG_ENUM_FLAG@W4CDB_WYSIWYG_BITS_ENUM@@$01@@@", FALSE},*/  /*FAILS in WINXP SP3 */
 /*     { "?AV?$CDB_GEN_BIG_ENUM_FLAG@W4CDB_WYSIWYG_BITS_ENUM@@$011@@@", "?AV?$CDB_GEN_BIG_ENUM_FLAG@W4CDB_WYSIWYG_BITS_ENUM@@$011@@@",FALSE}, */
     };
     int i, num_test = (sizeof(demangle)/sizeof(struct _demangle));
@@ -1032,6 +1032,12 @@ static void test_demangle(void)
 /* 111 */ {"?f@T@@QAEHQCY1BE@BO@D@Z", "public: int __thiscall T::f(char (volatile * const)[20][30])"},
 /* 112 */ {"?f@T@@QAEHQAY2BE@BO@CI@D@Z", "public: int __thiscall T::f(char (* const)[20][30][40])"},
 /* 113 */ {"?f@T@@QAEHQAY1BE@BO@$$CBD@Z", "public: int __thiscall T::f(char const (* const)[20][30])"},
+/* 114 */ {"??0?$Foo@U?$vector_c@H$00$01$0?1$0A@$0A@$0HPPPPPPP@$0HPPPPPPP@$0HPPPPPPP@$0HPPPPPPP@$0HPPPPPPP@$0HPPPPPPP@$0HPPPPPPP@$0HPPPPPPP@$0HPPPPPPP@$0HPPPPPPP@$0HPPPPPPP@$0HPPPPPPP@$0HPPPPPPP@$0HPPPPPPP@$0HPPPPPPP@@mpl@boost@@@@QAE@XZ",
+           "public: __thiscall Foo<struct boost::mpl::vector_c<int,1,2,-2,0,0,2147483647,2147483647,2147483647,2147483647,2147483647,2147483647,2147483647,2147483647,2147483647,2147483647,2147483647,2147483647,2147483647,2147483647,2147483647> >::Foo<struct boost::mpl::vector_c<int,1,2,-2,0,0,2147483647,2147483647,2147483647,2147483647,2147483647,2147483647,2147483647,2147483647,2147483647,2147483647,2147483647,2147483647,2147483647,2147483647,2147483647> >(void)"},
+/* 115 */ {"?swprintf@@YAHPAGIPBGZZ", "int __cdecl swprintf(unsigned short *,unsigned int,unsigned short const *,...)"},
+/* 116 */ {"?vswprintf@@YAHPAGIPBGPAD@Z", "int __cdecl vswprintf(unsigned short *,unsigned int,unsigned short const *,char *)"},
+/* 117 */ {"?vswprintf@@YAHPA_WIPB_WPAD@Z", "int __cdecl vswprintf(wchar_t *,unsigned int,wchar_t const *,char *)"},
+/* 118 */ {"?swprintf@@YAHPA_WIPB_WZZ", "int __cdecl swprintf(wchar_t *,unsigned int,wchar_t const *,...)"},
 
     };
     int i, num_test = (sizeof(test)/sizeof(test[0]));