cc -O2 -pipe -pthread -Wall -Wextra -Werror -Wno-error=deprecated -Wno-error=deprecated-declarations wchar/vwscanf.c -o wchar/vwscanf -D_POSIX_C_SOURCE=202405L -lm -lpthread wchar/vwscanf.c:5:37: error: type specifier missing, defaults to 'int'; ISO C99 and later do not support implicit int [-Werror,-Wimplicit-int] int (*foo)(const wchar_t *restrict, va_list) = vwscanf; ^ int wchar/vwscanf.c:5:7: error: incompatible function pointer types initializing 'int (*)(const wchar_t *restrict, int)' (aka 'int (*)(const int *restrict, int)') with an expression of type 'int (const wchar_t *restrict, struct __va_list_tag *)' (aka 'int (const int *restrict, struct __va_list_tag *)') [-Werror,-Wincompatible-function-pointer-types] int (*foo)(const wchar_t *restrict, va_list) = vwscanf; ^ ~~~~~~~ 2 errors generated.