У меня есть некоторый (старый) код, который я создаю с помощью clang впервые. Код выглядит примерно так:
sprintf(buf, "%s <%s ????>", p1, p2);
Clang выдает следующее предупреждение (ошибка с -Werror
):
test.c:6:33: error: trigraph converted to '}' character [-Werror,-Wtrigraphs]
sprintf(buf, "%s <%s ????>", p1, p2);
^
Ясно, что ??>
не предназначен для триграфии, поэтому я хочу полностью отключить триграфы (источник нигде не использует их намеренно).
Я пытался -no-trigraphs
, но это не совсем вариант:
clang: warning: argument unused during compilation: '-no-trigraphs'
Я могу отключить предупреждение о триграфах с помощью -Wno-trigraphs
, но я не хочу, чтобы преобразование триграфов вообще имело место.
ПРИМЕЧАНИЕ: триграфы были включены как непреднамеренный побочный эффект использования -std=c89
.