@@ -32,7 +32,6 @@ fn test_default_c_prelude_uses_manual_stdio_stdlib_string_and_stdarg_decls() {
3232 assert generated_c.contains ('RAND_MAX = 2147483647' ), generated_c
3333 assert generated_c.contains ('V_CRT_LINKAGE double V_CRT_CALL atof(const char *str);' ), generated_c
3434 assert generated_c.contains ('extern FILE* stdout;' ), generated_c
35- assert generated_c.contains ('#define stdout (__acrt_iob_func(1))' ), generated_c
3635 assert generated_c.contains ('#if defined(_MSC_VER) && !defined(__clang__)\n #include <stdarg.h>\n #include <stdio.h>\n #include <stdlib.h>\n #include <string.h>' ), generated_c
3736 assert generated_c.contains ('#if defined(_MSC_VER) && !defined(__clang__)\n\t #define V_CRT_LINKAGE __declspec(dllimport)\n\t #define V_CRT_CALL VCALLCONV(cdecl)\n #else\n\t #define V_CRT_LINKAGE\n\t #define V_CRT_CALL\n #endif' ), generated_c
3837 assert generated_c.contains ('V_CRT_LINKAGE int V_CRT_CALL _vscprintf(const char *format, va_list ap);' ), generated_c
@@ -42,7 +41,7 @@ fn test_default_c_prelude_uses_manual_stdio_stdlib_string_and_stdarg_decls() {
4241 assert generated_c.contains ('V_CRT_LINKAGE void V_CRT_CALL _aligned_free(void *memory);' ), generated_c
4342 assert generated_c.contains ('V_CRT_LINKAGE unsigned short * V_CRT_CALL _wgetenv(const unsigned short *varname);' ), generated_c
4443 assert generated_c.contains ('V_CRT_LINKAGE int V_CRT_CALL _wputenv(const unsigned short *envstring);' ), generated_c
45- assert generated_c.contains ('#elif defined(__MINGW32__) || defined(__MINGW64__) || (defined(__clang__) && (defined(_WIN32) || defined(_WIN64)))\n typedef struct _iobuf FILE; \n FILE* __cdecl __acrt_iob_func(unsigned index); \n #define stdin (__acrt_iob_func(0)) \n #define stdout (__acrt_iob_func(1)) \n #define stderr (__acrt_iob_func(2)) ' ), generated_c
44+ assert generated_c.contains ('#elif defined(__MINGW32__) || defined(__MINGW64__) || (defined(__clang__) && (defined(_WIN32) || defined(_WIN64)))\n #include <stdarg.h> \n #include <stdio.h> \n #include <stdlib.h> \n #include <string.h> ' ), generated_c
4645 assert generated_c.contains ('#elif defined(__TINYC__) && (defined(_WIN32) || defined(_WIN64))' ), generated_c
4746 assert generated_c.contains ('#ifndef _FILE_DEFINED\n struct _iobuf {\n\t char *_ptr;\n\t int _cnt;\n\t char *_base;\n\t int _flag;\n\t int _file;\n\t int _charbuf;\n\t int _bufsiz;\n\t char *_tmpfname;\n };\n typedef struct _iobuf FILE;\n #define _FILE_DEFINED' ), generated_c
4847 assert generated_c.contains ('FILE* __cdecl __iob_func(void);' ), generated_c
@@ -72,7 +71,7 @@ fn test_msvc_windows_prelude_uses_msvc_crt_headers() {
7271 assert ! generated_c.contains ('#if defined(_MSC_VER) && !defined(__clang__)\n typedef struct _iobuf FILE;' ), generated_c
7372 assert generated_c.contains ('#ifndef va_copy\n\t #define va_copy(dest, src) ((dest) = (src))\n #endif\n #ifndef _TRUNCATE' ), generated_c
7473 assert generated_c.contains ('#if defined(_MSC_VER) && !defined(__clang__)\n\t #define V_CRT_LINKAGE __declspec(dllimport)\n\t #define V_CRT_CALL VCALLCONV(cdecl)\n #else\n\t #define V_CRT_LINKAGE\n\t #define V_CRT_CALL\n #endif' ), generated_c
75- assert generated_c.contains ('#if !defined(_MSC_VER) || defined(__clang__) \n V_CRT_LINKAGE int V_CRT_CALL vfprintf(FILE *stream, const char *format, va_list ap);' ), generated_c
74+ assert generated_c.contains ('#if !defined(_MSC_VER) && !defined(__MINGW32__) && !defined(__MINGW64__) && !(defined(__clang__) && (defined(_WIN32) || defined(_WIN64))) \n #ifdef __cplusplus \n extern "C" { \n #endif \n V_CRT_LINKAGE int V_CRT_CALL vfprintf(FILE *stream, const char *format, va_list ap);' ), generated_c
7675 assert generated_c.contains ('V_CRT_LINKAGE int V_CRT_CALL _vscprintf(const char *format, va_list ap);' ), generated_c
7776 assert generated_c.contains ('V_CRT_LINKAGE int V_CRT_CALL _vsnprintf_s(char *buffer, size_t size, size_t count, const char *format, va_list ap);' ), generated_c
7877 assert generated_c.contains ('#include <windows.h>' ), generated_c
0 commit comments