今天在MacOsx(Mojave)中移植旧项目时,下面的示例代码无法通过构建:
FILE *sfp;
....
void test(char *fmt, va_list ap)
{
...
vfprintf(sfp, fmt, ap);
...
}
错误消息是:
error: format string is not a string literal [-Werror,-Wformat-nonliteral]
vfprintf(sfp, fmt, ap);
^~~
我猜这应该是由编译器升级引起的,但我不知道如何解决。