From: Adhemerval Zanella Date: Fri, 19 Dec 2025 18:52:22 +0000 (-0300) Subject: stdio: Fix tst-vfprintf-user-type on clang X-Git-Tag: glibc-2.43~62 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=bc78f67ca122f77341ece4275e9b9a38349d9c37;p=thirdparty%2Fglibc.git stdio: Fix tst-vfprintf-user-type on clang The pointer alias comparison will be optimized away by the compiler, so use an indirection point to prevent it (similar to malloc/tst-malloc-aux.h). Reviewed-by: H.J. Lu --- diff --git a/stdio-common/tst-vfprintf-user-type.c b/stdio-common/tst-vfprintf-user-type.c index 3fc98b30f1..3bcca88974 100644 --- a/stdio-common/tst-vfprintf-user-type.c +++ b/stdio-common/tst-vfprintf-user-type.c @@ -183,7 +183,9 @@ do_test (void) #else extern int asprintf_alias (char **, const char *, ...) __asm__ ("asprintf"); #endif - TEST_VERIFY (asprintf_alias == asprintf); + static __typeof (asprintf) * volatile asprintf_indirect = asprintf; + TEST_VERIFY (asprintf_alias == asprintf_indirect); + char *str = NULL; TEST_VERIFY (asprintf_alias (&str, "[[%P]]", 123L, 456.0) >= 0); TEST_COMPARE_STRING (str, "[[(123, 456.000000)]]");