lib/utils/printf: Exclude __GI_vsnprintf alias for gcc 9 and above.

See issue #4457.
pull/1/head
Damien George 2019-02-06 01:12:51 +11:00
parent 343401c6df
commit 7bbde67cb2
1 changed files with 3 additions and 1 deletions

View File

@ -99,9 +99,11 @@ STATIC void strn_print_strn(void *data, const char *str, size_t len) {
strn_print_env->remain -= len;
}
#if defined(__GNUC__) && !defined(__clang__)
#if defined(__GNUC__) && !defined(__clang__) && __GNUC__ < 9
// uClibc requires this alias to be defined, or there may be link errors
// when linkings against it statically.
// GCC 9 gives a warning about missing attributes so it's excluded until
// uClibc+GCC9 support is needed.
int __GI_vsnprintf(char *str, size_t size, const char *fmt, va_list ap) __attribute__((weak, alias ("vsnprintf")));
#endif