diff options
| -rw-r--r-- | clang/include/clang/Basic/DiagnosticGroups.td | 13 | ||||
| -rw-r--r-- | clang/include/clang/Basic/DiagnosticSemaKinds.td | 2 | ||||
| -rw-r--r-- | clang/test/Sema/format-strings.c | 2 |
3 files changed, 11 insertions, 6 deletions
diff --git a/clang/include/clang/Basic/DiagnosticGroups.td b/clang/include/clang/Basic/DiagnosticGroups.td index 6ed8afb0ff6..4aff9340f51 100644 --- a/clang/include/clang/Basic/DiagnosticGroups.td +++ b/clang/include/clang/Basic/DiagnosticGroups.td @@ -31,9 +31,14 @@ def Comment : DiagGroup<"comment">; def : DiagGroup<"conversion">; def : DiagGroup<"declaration-after-statement">; def ExtraTokens : DiagGroup<"extra-tokens">; -def : DiagGroup<"format-security">; -def : DiagGroup<"format=2">; -def : DiagGroup<"format">; + +def Format : DiagGroup<"format">; +def Format2 : DiagGroup<"format=2", [Format]>; +def : DiagGroup<"format-extra-args", [Format]>; +def FormatNonLiteral : DiagGroup<"format-nonliteral", [Format]>; +def FormatSecurity : DiagGroup<"format-security", [Format]>; +def : DiagGroup<"format-y2k", [Format]>; + def FourByteMultiChar : DiagGroup<"four-char-constants">; @@ -47,7 +52,6 @@ def : DiagGroup<"missing-noreturn">; def MultiChar : DiagGroup<"multichar">; def : DiagGroup<"nested-externs">; def : DiagGroup<"newline-eof">; -def : DiagGroup<"format-y2k">; def : DiagGroup<"long-long">; def : DiagGroup<"missing-field-initializers">; def : DiagGroup<"nonportable-cfstrings">; @@ -95,6 +99,7 @@ def Extra : DiagGroup<"extra">; def Most : DiagGroup<"most", [ Comment, + Format, Implicit, MultiChar, Switch, diff --git a/clang/include/clang/Basic/DiagnosticSemaKinds.td b/clang/include/clang/Basic/DiagnosticSemaKinds.td index 306fcaccfa5..88607f3a3ba 100644 --- a/clang/include/clang/Basic/DiagnosticSemaKinds.td +++ b/clang/include/clang/Basic/DiagnosticSemaKinds.td @@ -1059,7 +1059,7 @@ def err_value_init_for_array_type : Error< "array types cannot be value-initialized">; def warn_printf_not_string_constant : Warning< "format string is not a string literal (potentially insecure)">, - InGroup<DiagGroup<"format-nonliteral">>; + InGroup<FormatNonLiteral>, DefaultIgnore; def err_unexpected_interface : Error< "unexpected interface name %0: expected expression">; diff --git a/clang/test/Sema/format-strings.c b/clang/test/Sema/format-strings.c index cbeadc20b82..c7392c1f0c9 100644 --- a/clang/test/Sema/format-strings.c +++ b/clang/test/Sema/format-strings.c @@ -1,4 +1,4 @@ -// RUN: clang-cc -fsyntax-only -verify %s +// RUN: clang-cc -fsyntax-only -verify -Wformat-nonliteral %s // Define this to get vasprintf on Linux #define _GNU_SOURCE |

