def ExtraTokens : DiagGroup<"extra-tokens">;
def FormatExtraArgs : DiagGroup<"format-extra-args">;
+def FormatZeroLength : DiagGroup<"format-zero-length">;
-def Format : DiagGroup<"format", [FormatExtraArgs]>;
+def Format : DiagGroup<"format", [FormatExtraArgs, FormatZeroLength]>;
def FormatSecurity : DiagGroup<"format-security", [Format]>;
def FormatNonLiteral : DiagGroup<"format-nonliteral", [FormatSecurity]>;
def FormatY2K : DiagGroup<"format-y2k", [Format]>;
def warn_printf_missing_format_string : Warning<
"format string missing">, InGroup<Format>;
def warn_printf_empty_format_string : Warning<
- "format string is empty">, InGroup<Format>;
+ "format string is empty">, InGroup<FormatZeroLength>;
def warn_printf_format_string_is_wide_literal : Warning<
"format string should not be a wide string">, InGroup<Format>;
def warn_printf_format_string_contains_null_char : Warning<