
#ifdef GET_DIAG_ARRAYS
static const char DiagSubGroup0[] = { 27, -1 };
static const short DiagArray1[] = { diag::pp_hash_warning, -1 };
static const short DiagArray3[] = { diag::ext_typecheck_addrof_class_temporary, -1 };
static const char DiagSubGroup5[] = { 59, 72, -1 };
static const short DiagArray8[] = { diag::warn_float_overflow, diag::warn_float_underflow, -1 };
static const short DiagArray9[] = { diag::pp_redef_builtin_macro, -1 };
static const short DiagArray14[] = { diag::warn_subscript_is_char, -1 };
static const short DiagArray15[] = { diag::escaped_newline_block_comment_end, diag::ext_bcpl_comment, diag::ext_multi_line_bcpl_comment, diag::warn_nested_block_comment, -1 };
static const char DiagSubGroup16[] = { 15, -1 };
static const short DiagArray17[] = { diag::warn_impcast_complex_scalar, diag::warn_impcast_float_integer, diag::warn_impcast_float_precision, diag::warn_impcast_integer_precision, diag::warn_impcast_vector_scalar, -1 };
static const char DiagSubGroup17[] = { 83, -1 };
static const short DiagArray20[] = { diag::warn_access_decl_deprecated, diag::warn_deprecated_string_literal_conversion, diag::warn_drv_treating_input_as_cxx, diag::warn_increment_bool, diag::warn_vector_long_decl_spec_combination, -1 };
static const short DiagArray21[] = { diag::warn_deprecated, -1 };
static const short DiagArray25[] = { diag::warn_empty_if_body, -1 };
static const char DiagSubGroup26[] = { 28, -1 };
static const char DiagSubGroup27[] = { 80, 84, 117, -1 };
static const short DiagArray28[] = { diag::ext_pp_extra_tokens_at_eol, -1 };
static const short DiagArray29[] = { diag::warn_floatingpoint_eq, -1 };
static const short DiagArray30[] = { diag::warn_printf_asterisk_wrong_type, diag::warn_printf_conversion_argument_type_mismatch, diag::warn_printf_format_string_contains_null_char, diag::warn_printf_format_string_is_wide_literal, diag::warn_printf_incomplete_specifier, diag::warn_printf_insufficient_data_args, diag::warn_printf_invalid_conversion, diag::warn_printf_invalid_positional_specifier, diag::warn_printf_missing_format_string, diag::warn_printf_mix_positional_nonpositional_args, diag::warn_printf_nonsensical_flag, diag::warn_printf_nonsensical_precision, diag::warn_printf_zero_positional_specifier, -1 };
static const char DiagSubGroup30[] = { 31, 35, 66, -1 };
static const short DiagArray31[] = { diag::warn_printf_data_arg_not_used, -1 };
static const short DiagArray32[] = { diag::warn_printf_nonliteral, -1 };
static const char DiagSubGroup32[] = { 33, -1 };
static const short DiagArray33[] = { diag::warn_printf_nonliteral_noargs, diag::warn_printf_write_back, -1 };
static const char DiagSubGroup33[] = { 30, -1 };
static const char DiagSubGroup34[] = { 30, -1 };
static const short DiagArray35[] = { diag::warn_printf_empty_format_string, -1 };
static const char DiagSubGroup36[] = { 32, 33, 34, -1 };
static const short DiagArray37[] = { diag::ext_four_char_character_literal, -1 };
static const short DiagArray38[] = { diag::warn_condition_is_idiomatic_assignment, -1 };
static const char DiagSubGroup39[] = { 40, 41, -1 };
static const short DiagArray40[] = { diag::ext_implicit_function_decl, diag::warn_implicit_function_decl, -1 };
static const short DiagArray41[] = { diag::ext_missing_type_specifier, -1 };
static const short DiagArray46[] = { diag::warn_falloff_noreturn_function, diag::warn_noreturn_function_has_return_expr, -1 };
static const short DiagArray47[] = { diag::warn_offsetof_non_pod_type, -1 };
static const short DiagArray49[] = { diag::err_addr_of_label_in_protected_scope, diag::err_indirect_goto_in_protected_scope, -1 };
static const short DiagArray50[] = { diag::ext_longlong, -1 };
static const short DiagArray51[] = { diag::warn_struct_class_tag_mismatch, -1 };
static const short DiagArray52[] = { diag::warn_missing_braces, -1 };
static const short DiagArray57[] = { diag::warn_suggest_noreturn_block, diag::warn_suggest_noreturn_function, -1 };
static const short DiagArray58[] = { diag::warn_missing_prototype, -1 };
static const char DiagSubGroup59[] = { 15, 30, 39, 51, 52, 60, 79, 99, 102, 108, 109, 118, 119, 121, 122, 78, 14, -1 };
static const short DiagArray60[] = { diag::ext_multichar_character_literal, -1 };
static const char DiagSubGroup63[] = { 84, 17, 8, -1 };
static const short DiagArray64[] = { diag::warn_cannot_pass_non_pod_arg_to_vararg, -1 };
static const short DiagArray66[] = { diag::warn_null_arg, -1 };
static const short DiagArray72[] = { diag::warn_condition_is_assignment, diag::warn_precedence_bitwise_rel, -1 };
static const char DiagSubGroup72[] = { 38, -1 };
static const short DiagArray73[] = { diag::ext_gnu_ptr_func_arith, diag::ext_gnu_void_ptr, diag::ext_sizeof_function_type, diag::ext_sizeof_void_type, -1 };
static const short DiagArray74[] = { diag::ext_typecheck_convert_incompatible_pointer_sign, -1 };
static const short DiagArray76[] = { diag::warn_objc_property_attr_mutually_exclusive, -1 };
static const short DiagArray78[] = { diag::warn_base_initialized, diag::warn_field_initialized, -1 };
static const short DiagArray79[] = { diag::ext_return_has_expr, diag::ext_return_missing_expr, diag::warn_falloff_nonvoid_function, diag::warn_maybe_falloff_nonvoid_function, diag::warn_return_missing_expr, -1 };
static const short DiagArray80[] = { diag::warn_semicolon_before_method_body, -1 };
static const short DiagArray83[] = { diag::warn_impcast_integer_64_32, -1 };
static const short DiagArray84[] = { diag::warn_mixed_sign_comparison, diag::warn_mixed_sign_conditional, -1 };
static const short DiagArray98[] = { diag::ext_typecheck_base_super, -1 };
static const short DiagArray99[] = { diag::warn_case_value_overflow, -1 };
static const char DiagSubGroup99[] = { 100, -1 };
static const short DiagArray100[] = { diag::not_in_enum, diag::warn_missing_cases, -1 };
static const short DiagArray102[] = { diag::trigraph_converted, diag::trigraph_ends_block_comment, diag::trigraph_ignored, diag::trigraph_ignored_block_comment, -1 };
static const short DiagArray104[] = { diag::warn_redefinition_of_typedef, -1 };
static const short DiagArray105[] = { diag::warn_unavailable, -1 };
static const short DiagArray106[] = { diag::warn_undeclared_selector, -1 };
static const short DiagArray107[] = { diag::warn_pp_undef_identifier, -1 };
static const short DiagArray108[] = { diag::warn_field_is_uninit, -1 };
static const short DiagArray109[] = { diag::ext_stdc_pragma_ignored, diag::ext_stdc_pragma_syntax, diag::ext_stdc_pragma_syntax_eom, diag::warn_pragma_diagnostic_clang_cannot_ppp, diag::warn_pragma_diagnostic_clang_invalid, diag::warn_pragma_diagnostic_gcc_invalid, diag::warn_pragma_diagnostic_invalid_option, diag::warn_pragma_diagnostic_invalid_token, diag::warn_pragma_diagnostic_unknown_warning, diag::warn_pragma_ignored, diag::warn_stdc_fenv_access_not_supported, -1 };
static const short DiagArray110[] = { diag::warn_unknown_warning_option, diag::warn_unknown_warning_specifier, -1 };
static const short DiagArray111[] = { diag::warn_unreachable, -1 };
static const char DiagSubGroup112[] = { 113, 114, 115, 117, 118, 119, -1 };
static const short DiagArray114[] = { diag::warn_unused_function, -1 };
static const short DiagArray116[] = { diag::pp_macro_not_used, -1 };
static const short DiagArray117[] = { diag::warn_unused_parameter, -1 };
static const short DiagArray118[] = { diag::warn_unused_call, diag::warn_unused_expr, diag::warn_unused_property_expr, -1 };
static const short DiagArray119[] = { diag::warn_unused_variable, -1 };
static const short DiagArray120[] = { diag::ext_named_variadic_macro, diag::ext_variadic_macro, -1 };
static const short DiagArray121[] = { diag::warn_incompatible_vectors, -1 };
static const short DiagArray123[] = { diag::warn_weak_vtable, -1 };
#endif // GET_DIAG_ARRAYS


#ifdef GET_DIAG_TABLE
  { "",                              0, DiagSubGroup0 },
  { "#warnings",                     DiagArray1, 0 },
  { "address",                       0, 0 },
  { "address-of-temporary",          DiagArray3, 0 },
  { "aggregate-return",              0, 0 },
  { "all",                           0, DiagSubGroup5 },
  { "attributes",                    0, 0 },
  { "bad-function-cast",             0, 0 },
  { "bad-literal",                   DiagArray8, 0 },
  { "builtin-macro-redefined",       DiagArray9, 0 },
  { "c++-compat",                    0, 0 },
  { "cast-align",                    0, 0 },
  { "cast-qual",                     0, 0 },
  { "char-align",                    0, 0 },
  { "char-subscripts",               DiagArray14, 0 },
  { "comment",                       DiagArray15, 0 },
  { "comments",                      0, DiagSubGroup16 },
  { "conversion",                    DiagArray17, DiagSubGroup17 },
  { "ctor-dtor-privacy",             0, 0 },
  { "declaration-after-statement",   0, 0 },
  { "deprecated",                    DiagArray20, 0 },
  { "deprecated-declarations",       DiagArray21, 0 },
  { "disabled-optimization",         0, 0 },
  { "discard-qual",                  0, 0 },
  { "div-by-zero",                   0, 0 },
  { "empty-body",                    DiagArray25, 0 },
  { "endif-labels",                  0, DiagSubGroup26 },
  { "extra",                         0, DiagSubGroup27 },
  { "extra-tokens",                  DiagArray28, 0 },
  { "float-equal",                   DiagArray29, 0 },
  { "format",                        DiagArray30, DiagSubGroup30 },
  { "format-extra-args",             DiagArray31, 0 },
  { "format-nonliteral",             DiagArray32, DiagSubGroup32 },
  { "format-security",               DiagArray33, DiagSubGroup33 },
  { "format-y2k",                    0, DiagSubGroup34 },
  { "format-zero-length",            DiagArray35, 0 },
  { "format=2",                      0, DiagSubGroup36 },
  { "four-char-constants",           DiagArray37, 0 },
  { "idiomatic-parentheses",         DiagArray38, 0 },
  { "implicit",                      0, DiagSubGroup39 },
  { "implicit-function-declaration", DiagArray40, 0 },
  { "implicit-int",                  DiagArray41, 0 },
  { "import",                        0, 0 },
  { "init-self",                     0, 0 },
  { "inline",                        0, 0 },
  { "int-to-pointer-cast",           0, 0 },
  { "invalid-noreturn",              DiagArray46, 0 },
  { "invalid-offsetof",              DiagArray47, 0 },
  { "invalid-pch",                   0, 0 },
  { "label-address-scope",           DiagArray49, 0 },
  { "long-long",                     DiagArray50, 0 },
  { "mismatched-tags",               DiagArray51, 0 },
  { "missing-braces",                DiagArray52, 0 },
  { "missing-declarations",          0, 0 },
  { "missing-field-initializers",    0, 0 },
  { "missing-format-attribute",      0, 0 },
  { "missing-include-dirs",          0, 0 },
  { "missing-noreturn",              DiagArray57, 0 },
  { "missing-prototypes",            DiagArray58, 0 },
  { "most",                          0, DiagSubGroup59 },
  { "multichar",                     DiagArray60, 0 },
  { "nested-externs",                0, 0 },
  { "newline-eof",                   0, 0 },
  { "non-gcc",                       0, DiagSubGroup63 },
  { "non-pod-varargs",               DiagArray64, 0 },
  { "non-virtual-dtor",              0, 0 },
  { "nonnull",                       DiagArray66, 0 },
  { "nonportable-cfstrings",         0, 0 },
  { "old-style-definition",          0, 0 },
  { "overflow",                      0, 0 },
  { "overloaded-virtual",            0, 0 },
  { "packed",                        0, 0 },
  { "parentheses",                   DiagArray72, DiagSubGroup72 },
  { "pointer-arith",                 DiagArray73, 0 },
  { "pointer-sign",                  DiagArray74, 0 },
  { "pointer-to-int-cast",           0, 0 },
  { "readonly-setter-attrs",         DiagArray76, 0 },
  { "redundant-decls",               0, 0 },
  { "reorder",                       DiagArray78, 0 },
  { "return-type",                   DiagArray79, 0 },
  { "semicolon-before-method-body",  DiagArray80, 0 },
  { "sequence-point",                0, 0 },
  { "shadow",                        0, 0 },
  { "shorten-64-to-32",              DiagArray83, 0 },
  { "sign-compare",                  DiagArray84, 0 },
  { "strict-aliasing",               0, 0 },
  { "strict-aliasing=0",             0, 0 },
  { "strict-aliasing=1",             0, 0 },
  { "strict-aliasing=2",             0, 0 },
  { "strict-overflow",               0, 0 },
  { "strict-overflow=0",             0, 0 },
  { "strict-overflow=1",             0, 0 },
  { "strict-overflow=2",             0, 0 },
  { "strict-overflow=3",             0, 0 },
  { "strict-overflow=4",             0, 0 },
  { "strict-overflow=5",             0, 0 },
  { "strict-prototypes",             0, 0 },
  { "strict-selector-match",         0, 0 },
  { "super-class-method-mismatch",   DiagArray98, 0 },
  { "switch",                        DiagArray99, DiagSubGroup99 },
  { "switch-enum",                   DiagArray100, 0 },
  { "synth",                         0, 0 },
  { "trigraphs",                     DiagArray102, 0 },
  { "type-limits",                   0, 0 },
  { "typedef-redefinition",          DiagArray104, 0 },
  { "unavailable-declarations",      DiagArray105, 0 },
  { "undeclared-selector",           DiagArray106, 0 },
  { "undef",                         DiagArray107, 0 },
  { "uninitialized",                 DiagArray108, 0 },
  { "unknown-pragmas",               DiagArray109, 0 },
  { "unknown-warning-option",        DiagArray110, 0 },
  { "unreachable-code",              DiagArray111, 0 },
  { "unused",                        0, DiagSubGroup112 },
  { "unused-argument",               0, 0 },
  { "unused-function",               DiagArray114, 0 },
  { "unused-label",                  0, 0 },
  { "unused-macros",                 DiagArray116, 0 },
  { "unused-parameter",              DiagArray117, 0 },
  { "unused-value",                  DiagArray118, 0 },
  { "unused-variable",               DiagArray119, 0 },
  { "variadic-macros",               DiagArray120, 0 },
  { "vector-conversions",            DiagArray121, 0 },
  { "volatile-register-var",         0, 0 },
  { "weak-vtables",                  DiagArray123, 0 },
  { "write-strings",                 0, 0 },
#endif // GET_DIAG_TABLE

