tests: fix tcctest.c for modern clang (15+) on macOS

This commit is contained in:
Benjamin Oldenburg 2026-03-16 00:26:28 +07:00
parent f220a8c32f
commit b1763f8629

View File

@ -2928,19 +2928,15 @@ int cmpfn();
printf("cmpfn=%lx\n", (long)cmpfn); printf("cmpfn=%lx\n", (long)cmpfn);
} }
void old_style_function_test(void) void old_style_function_test(void)
{ {
#if CC_NAME == CC_clang /* recent clang versions (at least 15.0) raise an error:
/* recent clang versions (at least 15.0) raise an error: incompatible pointer to integer conversion passing 'void *'
incompatible pointer to integer conversion passing 'void *' For the purpose of this test, pass 1 instead.
For the purpose of this test, pass 1 instead. */
*/ old_style_f(1, 2, 3.0);
old_style_f(1, 2, 3.0); decl_func1(NULL);
#else decl_func2(NULL);
old_style_f((void *)1, 2, 3.0);
#endif
decl_func1(NULL);
decl_func2(NULL);
} }
void alloca_test() void alloca_test()
@ -3993,8 +3989,8 @@ void builtin_test(void)
} }
} }
#if defined _WIN32 || (defined __APPLE__ && GCC_MAJOR >= 15) #if defined _WIN32 || defined __APPLE__
void weak_test(void) {} void weak_test(void) {}
#else #else
extern int __attribute__((weak)) weak_f1(void); extern int __attribute__((weak)) weak_f1(void);
extern int __attribute__((weak)) weak_f2(void); extern int __attribute__((weak)) weak_f2(void);