
#ifdef GET_DIAG_ARRAYS
static const short DiagSubGroup0[] = { 137, -1 };
static const short DiagArray1[] = { diag::warn_pragma_message, -1 };
static const short DiagArray2[] = { diag::pp_hash_warning, -1 };
static const short DiagArray3[] = { diag::warn_cfstring_truncated, -1 };
static const short DiagArray4[] = { diag::warn_nsobject_attribute, -1 };
static const short DiagArray6[] = { diag::warn_abstract_final_class, -1 };
static const short DiagArray7[] = { diag::warn_abstract_vbase_init_ignored, -1 };
static const short DiagArray9[] = { diag::warn_temporary_array_to_pointer_decay, -1 };
static const short DiagArray10[] = { diag::ext_typecheck_addrof_temporary, -1 };
static const short DiagSubGroup12[] = { 236, 289, 362, -1 };
static const short DiagArray13[] = { diag::warn_pp_ambiguous_macro, -1 };
static const short DiagArray14[] = { diag::ext_nested_name_member_ref_lookup_ambiguous, -1 };
static const short DiagArray15[] = { diag::warn_incompatible_analyzer_plugin_api, -1 };
static const short DiagArray16[] = { diag::ext_abstract_pack_declarator_parens, -1 };
static const short DiagSubGroup17[] = { 25, 24, 21, -1 };
static const short DiagArray19[] = { diag::warn_arc_bridge_cast_nonarc, -1 };
static const short DiagArray20[] = { diag::warn_arc_possible_repeated_use_of_weak, -1 };
static const short DiagArray21[] = { diag::warn_arc_object_memaccess, -1 };
static const short DiagArray22[] = { diag::warn_arc_perform_selector_leaks, -1 };
static const short DiagArray23[] = { diag::warn_arc_repeated_use_of_weak, -1 };
static const short DiagSubGroup23[] = { 20, -1 };
static const short DiagArray24[] = { diag::warn_arc_retain_cycle, -1 };
static const short DiagArray25[] = { diag::warn_arc_literal_assign, diag::warn_arc_retained_assign, diag::warn_arc_retained_property_assign, -1 };
static const short DiagArray26[] = { diag::warn_array_index_exceeds_bounds, diag::warn_array_index_precedes_bounds, diag::warn_static_array_too_small, diag::warn_typecheck_zero_static_array_size, -1 };
static const short DiagArray27[] = { diag::warn_ptr_arith_exceeds_bounds, diag::warn_ptr_arith_precedes_bounds, -1 };
static const short DiagSubGroup28[] = { 29, -1 };
static const short DiagArray29[] = { diag::warn_asm_mismatched_size_modifier, -1 };
static const short DiagArray30[] = { diag::warn_not_in_enum_assignment, -1 };
static const short DiagSubGroup31[] = { 171, 91, -1 };
static const short DiagArray32[] = { diag::warn_atomic_property_rule, -1 };
static const short DiagArray33[] = { diag::warn_ms_declspec_unknown, diag::warn_unknown_attribute_ignored, -1 };
static const short DiagArray34[] = { diag::warn_auto_module_import, -1 };
static const short DiagArray35[] = { diag::ext_auto_storage_class, -1 };
static const short DiagArray36[] = { diag::warn_auto_var_is_id, -1 };
static const short DiagArray37[] = { diag::warn_availability_and_unavailable, diag::warn_availability_unknown_platform, diag::warn_availability_version_ordering, diag::warn_mismatched_availability, diag::warn_mismatched_availability_override, diag::warn_mismatched_availability_override_unavail, -1 };
static const short DiagArray38[] = { diag::backslash_newline_space, -1 };
static const short DiagArray39[] = { diag::warn_array_new_too_large, diag::warn_typecheck_negative_array_new_size, -1 };
static const short DiagArray40[] = { diag::warn_bad_function_cast, -1 };
static const short DiagArray41[] = { diag::ext_rvalue_to_reference_access_ctor, diag::ext_rvalue_to_reference_temp_copy_no_viable, -1 };
static const short DiagSubGroup41[] = { 63, -1 };
static const short DiagArray42[] = { diag::warn_impcast_bitfield_precision_constant, -1 };
static const short DiagArray43[] = { diag::warn_bitwise_and_in_bitwise_or, -1 };
static const short DiagArray44[] = { diag::warn_impcast_bool_to_null_pointer, diag::warn_impcast_function_to_bool, -1 };
static const short DiagSubGroup45[] = { 44, -1 };
static const short DiagArray46[] = { diag::ext_pp_redef_builtin_macro, diag::ext_pp_undef_builtin_macro, -1 };
static const short DiagArray47[] = { diag::warn_implicit_decl_requires_setjmp, diag::warn_implicit_decl_requires_stdio, diag::warn_implicit_decl_requires_ucontext, -1 };
static const short DiagArray48[] = { diag::warn_zero_size_struct_union_compat, -1 };
static const short DiagSubGroup49[] = { 52, -1 };
static const short DiagSubGroup50[] = { 55, -1 };
static const short DiagSubGroup51[] = { 58, -1 };
static const short DiagArray52[] = { diag::warn_auto_storage_class, diag::warn_cxx11_compat_user_defined_literal, diag::warn_cxx11_keyword, diag::warn_cxx11_right_shift_in_template_arg, diag::warn_explicit_instantiation_inline_0x, diag::warn_explicit_instantiation_must_be_global_0x, diag::warn_explicit_instantiation_out_of_scope_0x, diag::warn_explicit_instantiation_unqualified_wrong_namespace_0x, -1 };
static const short DiagSubGroup52[] = { 58, 54, 60, -1 };
static const short DiagSubGroup53[] = { 61, -1 };
static const short DiagArray54[] = { diag::warn_cxx11_compat_reserved_user_defined_literal, -1 };
static const short DiagArray55[] = { diag::ext_alias_declaration, diag::ext_array_size_conversion, diag::ext_auto_type_specifier, diag::ext_cxx11_enum_fixed_underlying_type, diag::ext_defaulted_function, diag::ext_deleted_function, diag::ext_enum_friend, diag::ext_enumerator_list_comma_cxx, diag::ext_explicit_conversion_functions, diag::ext_explicit_instantiation_after_specialization, diag::ext_extern_template, diag::ext_for_range, diag::ext_generalized_initializer_lists, diag::ext_inline_namespace, diag::ext_nonclass_type_friend, diag::ext_nonstatic_member_init, diag::ext_override_control_keyword, diag::ext_ref_qualifier, diag::ext_rvalue_reference, diag::ext_scoped_enum, diag::ext_static_data_member_in_union, diag::ext_template_arg_object_internal, diag::ext_template_outside_of_template, diag::ext_template_parameter_default_in_function_template, diag::ext_template_spec_decl_out_of_scope, diag::ext_typename_outside_of_template, diag::ext_unelaborated_friend_type, diag::ext_variadic_templates, -1 };
static const short DiagSubGroup55[] = { 56, 57, -1 };
static const short DiagArray56[] = { diag::ext_extra_semi_cxx11, -1 };
static const short DiagArray57[] = { diag::ext_cxx11_longlong, -1 };
static const short DiagArray58[] = { diag::err_cce_narrowing, diag::err_init_list_constant_narrowing, diag::err_init_list_type_narrowing, diag::err_init_list_variable_narrowing, diag::warn_init_list_constant_narrowing, diag::warn_init_list_type_narrowing, diag::warn_init_list_variable_narrowing, -1 };
static const short DiagArray59[] = { diag::ext_binary_literal_cxx1y, diag::ext_constexpr_body_invalid_stmt, diag::ext_constexpr_body_multiple_return, diag::ext_constexpr_local_var, diag::ext_constexpr_type_definition, diag::ext_decltype_auto_type_specifier, diag::ext_variable_template, -1 };
static const short DiagArray60[] = { diag::warn_cxx11_compat_constexpr_body_invalid_stmt, diag::warn_cxx11_compat_constexpr_body_multiple_return, diag::warn_cxx11_compat_constexpr_body_no_return, diag::warn_cxx11_compat_constexpr_local_var, diag::warn_cxx11_compat_constexpr_type_definition, diag::warn_cxx11_compat_decltype_auto_type_specifier, diag::warn_cxx11_compat_variable_template, -1 };
static const short DiagArray61[] = { diag::warn_cxx11_compat_array_of_runtime_bound, diag::warn_cxx11_compat_binary_literal, -1 };
static const short DiagSubGroup61[] = { 60, -1 };
static const short DiagArray62[] = { diag::warn_cxx98_compat_alias_declaration, diag::warn_cxx98_compat_alignas, diag::warn_cxx98_compat_alignof, diag::warn_cxx98_compat_attribute, diag::warn_cxx98_compat_auto_type_specifier, diag::warn_cxx98_compat_constexpr, diag::warn_cxx98_compat_ctor_list_init, diag::warn_cxx98_compat_decltype, diag::warn_cxx98_compat_defaulted_function, diag::warn_cxx98_compat_delegating_ctor, diag::warn_cxx98_compat_deleted_function, diag::warn_cxx98_compat_empty_scalar_initializer, diag::warn_cxx98_compat_enum_fixed_underlying_type, diag::warn_cxx98_compat_enum_friend, diag::warn_cxx98_compat_enum_nested_name_spec, diag::warn_cxx98_compat_explicit_conversion_functions, diag::warn_cxx98_compat_for_range, diag::warn_cxx98_compat_friend_is_member, diag::warn_cxx98_compat_friend_redefinition, diag::warn_cxx98_compat_generalized_initializer_lists, diag::warn_cxx98_compat_goto_into_protected_scope, diag::warn_cxx98_compat_indirect_goto_in_protected_scope, diag::warn_cxx98_compat_initializer_list_init, diag::warn_cxx98_compat_inline_namespace, diag::warn_cxx98_compat_lambda, diag::warn_cxx98_compat_less_colon_colon, diag::warn_cxx98_compat_literal_operator, diag::warn_cxx98_compat_literal_ucn_control_character, diag::warn_cxx98_compat_literal_ucn_escape_basic_scs, diag::warn_cxx98_compat_noexcept_decl, diag::warn_cxx98_compat_noexcept_expr, diag::warn_cxx98_compat_non_static_member_use, diag::warn_cxx98_compat_nonclass_type_friend, diag::warn_cxx98_compat_nonstatic_member_init, diag::warn_cxx98_compat_nontrivial_union_or_anon_struct_member, diag::warn_cxx98_compat_nullptr, diag::warn_cxx98_compat_override_control_keyword, diag::warn_cxx98_compat_pass_non_pod_arg_to_vararg, diag::warn_cxx98_compat_raw_string_literal, diag::warn_cxx98_compat_ref_qualifier, diag::warn_cxx98_compat_reference_list_init, diag::warn_cxx98_compat_rvalue_reference, diag::warn_cxx98_compat_scoped_enum, diag::warn_cxx98_compat_sfinae_access_control, diag::warn_cxx98_compat_static_assert, diag::warn_cxx98_compat_static_data_member_in_union, diag::warn_cxx98_compat_switch_into_protected_scope, diag::warn_cxx98_compat_template_arg_extra_parens, diag::warn_cxx98_compat_template_arg_null, diag::warn_cxx98_compat_template_arg_object_internal, diag::warn_cxx98_compat_template_outside_of_template, diag::warn_cxx98_compat_template_parameter_default_in_function_template, diag::warn_cxx98_compat_template_spec_decl_out_of_scope, diag::warn_cxx98_compat_trailing_return_type, diag::warn_cxx98_compat_two_right_angle_brackets, diag::warn_cxx98_compat_typename_outside_of_template, diag::warn_cxx98_compat_unelaborated_friend_type, diag::warn_cxx98_compat_unicode_id, diag::warn_cxx98_compat_unicode_literal, diag::warn_cxx98_compat_unicode_type, diag::warn_cxx98_compat_using_decl_constructor, diag::warn_cxx98_compat_variadic_templates, -1 };
static const short DiagSubGroup62[] = { 63, 64, 66, 60, -1 };
static const short DiagArray63[] = { diag::warn_cxx98_compat_temp_copy, -1 };
static const short DiagArray64[] = { diag::warn_cxx98_compat_template_arg_local_type, -1 };
static const short DiagArray65[] = { diag::warn_cxx98_compat_array_size_conversion, diag::warn_cxx98_compat_cast_fn_obj, diag::warn_cxx98_compat_empty_fnmacro_arg, diag::warn_cxx98_compat_enumerator_list_comma, diag::warn_cxx98_compat_explicit_instantiation_after_specialization, diag::warn_cxx98_compat_extern_template, diag::warn_cxx98_compat_longlong, diag::warn_cxx98_compat_no_newline_eof, diag::warn_cxx98_compat_pp_line_too_big, diag::warn_cxx98_compat_top_level_semi, diag::warn_cxx98_compat_variadic_macro, -1 };
static const short DiagSubGroup65[] = { 62, 61, -1 };
static const short DiagArray66[] = { diag::warn_cxx98_compat_template_arg_unnamed_type, -1 };
static const short DiagArray67[] = { diag::ext_anonymous_union, diag::ext_c11_alignment, diag::ext_c11_anonymous_struct, diag::ext_c11_generic_selection, diag::ext_c11_noreturn, diag::ext_c11_static_assert, -1 };
static const short DiagArray68[] = { diag::warn_c99_compat_unicode_id, diag::warn_c99_compat_unicode_literal, -1 };
static const short DiagArray69[] = { diag::ext_aggregate_init_not_constant, diag::ext_c99_array_usage, diag::ext_c99_compound_literal, diag::ext_c99_flexible_array_member, diag::ext_c99_variable_decl_in_for_loop, diag::ext_c99_whitespace_required_after_macro_name, diag::ext_designated_init, diag::ext_empty_fnmacro_arg, diag::ext_enumerator_list_comma_c, diag::ext_hexconstant_invalid, -1 };
static const short DiagArray70[] = { diag::warn_cast_align, -1 };
static const short DiagArray71[] = { diag::warn_cast_pointer_from_sel, -1 };
static const short DiagArray74[] = { diag::warn_subscript_is_char, -1 };
static const short DiagArray75[] = { diag::escaped_newline_block_comment_end, diag::ext_line_comment, diag::ext_multi_line_line_comment, diag::warn_nested_block_comment, -1 };
static const short DiagSubGroup76[] = { 75, -1 };
static const short DiagArray77[] = { diag::ext_typecheck_comparison_of_distinct_pointers, diag::ext_typecheck_comparison_of_distinct_pointers_nonstandard, -1 };
static const short DiagArray78[] = { diag::ext_complex_component_init, -1 };
static const short DiagArray79[] = { diag::warn_typecheck_cond_pointer_integer_mismatch, -1 };
static const short DiagArray80[] = { diag::warn_maybe_uninit_var, -1 };
static const short DiagArray81[] = { diag::warn_module_config_macro_undef, -1 };
static const short DiagArray82[] = { diag::warn_impcast_integer_precision_constant, -1 };
static const short DiagSubGroup82[] = { 42, -1 };
static const short DiagArray83[] = { diag::warn_logical_instead_of_bitwise, -1 };
static const short DiagArray84[] = { diag::warn_cxx1y_compat_constexpr_not_const, -1 };
static const short DiagArray85[] = { diag::warn_use_of_temp_while_consumed, diag::warn_use_while_consumed, -1 };
static const short DiagArray86[] = { diag::warn_unnecessary_test, diag::warn_use_in_unknown_state, diag::warn_use_of_temp_in_unknown_state, -1 };
static const short DiagSubGroup86[] = { 85, -1 };
static const short DiagArray87[] = { 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, diag::warn_template_arg_negative, diag::warn_template_arg_too_large, -1 };
static const short DiagSubGroup87[] = { 44, 82, 132, 329, 191, 207, 243, 250, 331, 357, -1 };
static const short DiagSubGroup88[] = { 250, -1 };
static const short DiagArray89[] = { diag::warn_unreachable_default, -1 };
static const short DiagArray91[] = { diag::warn_default_atomic_custom_getter_setter, -1 };
static const short DiagArray92[] = { diag::warn_dangling_else, -1 };
static const short DiagArray93[] = { diag::warn_bind_ref_member_to_parameter, diag::warn_bind_ref_member_to_temporary, diag::warn_init_ptr_member_to_parameter_addr, -1 };
static const short DiagArray94[] = { diag::warn_dangling_std_initializer_list, -1 };
static const short DiagArray95[] = { diag::ext_mixed_decls_code, -1 };
static const short DiagArray96[] = { diag::warn_delegating_ctor_cycle, -1 };
static const short DiagArray97[] = { diag::warn_delete_incomplete, -1 };
static const short DiagArray98[] = { diag::warn_delete_abstract_non_virtual_dtor, diag::warn_delete_non_virtual_dtor, -1 };
static const short DiagArray99[] = { diag::warn_access_decl_deprecated, diag::warn_deprecated_copy_operation, diag::warn_drv_deprecated_arg, diag::warn_drv_treating_input_as_cxx, diag::warn_exception_spec_deprecated, diag::warn_vector_long_decl_spec_combination, -1 };
static const short DiagSubGroup99[] = { 100, 102, 106, -1 };
static const short DiagArray100[] = { diag::warn_cstyle_param, diag::warn_deprecated, diag::warn_deprecated_fwdclass_message, diag::warn_deprecated_message, -1 };
static const short DiagArray101[] = { diag::warn_deprecated_def, -1 };
static const short DiagArray102[] = { diag::warn_increment_bool, -1 };
static const short DiagArray103[] = { diag::warn_objc_isa_assign, diag::warn_objc_isa_use, -1 };
static const short DiagArray104[] = { diag::warn_objc_pointer_masking, -1 };
static const short DiagSubGroup104[] = { 105, -1 };
static const short DiagArray105[] = { diag::warn_objc_pointer_masking_performSelector, -1 };
static const short DiagArray106[] = { diag::warn_deprecated_register, -1 };
static const short DiagArray107[] = { diag::warn_deprecated_string_literal_conversion, -1 };
static const short DiagArray108[] = { diag::warn_direct_ivar_access, -1 };
static const short DiagArray109[] = { diag::pp_disabled_macro_expansion, -1 };
static const short DiagArray112[] = { diag::warn_conflicting_param_modifiers, diag::warn_conflicting_ret_type_modifiers, -1 };
static const short DiagArray114[] = { diag::warn_division_by_zero, diag::warn_remainder_by_zero, -1 };
static const short DiagArray115[] = { diag::warn_correct_comment_command_name, diag::warn_doc_api_container_decl_mismatch, diag::warn_doc_block_command_duplicate, diag::warn_doc_block_command_empty_paragraph, diag::warn_doc_container_decl_mismatch, diag::warn_doc_function_method_decl_mismatch, diag::warn_doc_html_start_tag_expected_ident_or_greater, diag::warn_doc_html_start_tag_expected_quoted_string, diag::warn_doc_param_duplicate, diag::warn_doc_param_invalid_direction, diag::warn_doc_param_not_attached_to_a_function_decl, diag::warn_doc_param_not_found, diag::warn_doc_returns_attached_to_a_void_function, diag::warn_doc_returns_not_attached_to_a_function_decl, diag::warn_doc_tparam_duplicate, diag::warn_doc_tparam_not_attached_to_a_template_decl, diag::warn_doc_tparam_not_found, diag::warn_not_a_doxygen_trailing_member_comment, diag::warn_verbatim_block_end_without_start, -1 };
static const short DiagSubGroup115[] = { 117, 116, -1 };
static const short DiagArray116[] = { diag::warn_doc_deprecated_not_sync, -1 };
static const short DiagArray117[] = { diag::warn_doc_html_end_forbidden, diag::warn_doc_html_end_unbalanced, diag::warn_doc_html_start_end_mismatch, -1 };
static const short DiagArray118[] = { diag::warn_doc_param_spaces_in_direction, -1 };
static const short DiagSubGroup118[] = { 119, -1 };
static const short DiagArray119[] = { diag::warn_unknown_comment_command_name, -1 };
static const short DiagArray120[] = { diag::ext_dollar_in_identifier, -1 };
static const short DiagArray121[] = { diag::ext_duplicate_declspec, diag::warn_duplicate_declspec, -1 };
static const short DiagArray122[] = { diag::warn_duplicate_enum_values, -1 };
static const short DiagArray123[] = { diag::warn_method_param_declaration, -1 };
static const short DiagArray124[] = { diag::warn_duplicate_method_decl, -1 };
static const short DiagArray125[] = { diag::warn_dyn_class_memaccess, -1 };
static const short DiagArray127[] = { diag::ext_embedded_directive, -1 };
static const short DiagArray128[] = { diag::warn_empty_for_body, diag::warn_empty_if_body, diag::warn_empty_range_based_for_body, diag::warn_empty_switch_body, diag::warn_empty_while_body, -1 };
static const short DiagArray129[] = { diag::ext_empty_translation_unit, -1 };
static const short DiagSubGroup130[] = { 139, -1 };
static const short DiagArray131[] = { diag::warn_comparison_of_mixed_enum_types, -1 };
static const short DiagArray132[] = { diag::warn_impcast_different_enum_types, -1 };
static const short DiagArray133[] = { diag::warn_exit_time_destructor, -1 };
static const short DiagArray134[] = { diag::warn_arc_strong_pointer_objc_pointer, -1 };
static const short DiagArray135[] = { diag::ext_offsetof_extended_field_designator, -1 };
static const short DiagArray136[] = { diag::warn_extern_init, -1 };
static const short DiagSubGroup137[] = { 226, 169, 189, 318, 229, 330, 404, -1 };
static const short DiagArray138[] = { diag::ext_extra_semi, diag::warn_extra_semi_after_mem_fn_def, -1 };
static const short DiagSubGroup138[] = { 56, -1 };
static const short DiagArray139[] = { diag::ext_pp_extra_tokens_at_eol, diag::warn_omp_extra_tokens_at_eol, -1 };
static const short DiagArray140[] = { diag::ext_flexible_array_in_array, diag::ext_flexible_array_in_struct, -1 };
static const short DiagArray141[] = { diag::warn_floatingpoint_eq, -1 };
static const short DiagArray142[] = { diag::warn_format_argument_needs_cast, diag::warn_format_invalid_positional_specifier, diag::warn_format_mix_positional_nonpositional_args, diag::warn_format_nonsensical_length, diag::warn_format_string_is_wide_literal, diag::warn_format_zero_positional_specifier, diag::warn_missing_format_string, diag::warn_printf_asterisk_missing_arg, diag::warn_printf_asterisk_wrong_type, diag::warn_printf_conversion_argument_type_mismatch, diag::warn_printf_format_string_contains_null_char, diag::warn_printf_ignored_flag, diag::warn_printf_incomplete_specifier, diag::warn_printf_insufficient_data_args, diag::warn_printf_nonsensical_flag, diag::warn_printf_nonsensical_optional_amount, diag::warn_printf_positional_arg_exceeds_data_args, diag::warn_scanf_nonzero_width, diag::warn_scanf_scanlist_incomplete, -1 };
static const short DiagSubGroup142[] = { 143, 149, 246, 147, 148, 144, -1 };
static const short DiagArray143[] = { diag::warn_printf_data_arg_not_used, -1 };
static const short DiagArray144[] = { diag::warn_format_invalid_conversion, -1 };
static const short DiagArray145[] = { diag::warn_format_non_standard, diag::warn_format_non_standard_conversion_spec, diag::warn_format_non_standard_positional_arg, -1 };
static const short DiagArray146[] = { diag::warn_format_nonliteral, -1 };
static const short DiagSubGroup146[] = { 147, -1 };
static const short DiagArray147[] = { diag::warn_format_nonliteral_noargs, -1 };
static const short DiagArray149[] = { diag::warn_empty_format_string, -1 };
static const short DiagSubGroup150[] = { 146, 147, 148, -1 };
static const short DiagArray151[] = { diag::ext_four_char_character_literal, -1 };
static const short DiagArray152[] = { diag::warn_attribute_on_function_definition, -1 };
static const short DiagArray153[] = { diag::warn_global_constructor, diag::warn_global_destructor, -1 };
static const short DiagArray154[] = { diag::ext_array_init_copy, diag::ext_binary_literal, diag::ext_empty_struct_union, diag::ext_expr_not_ice, diag::ext_flexible_array_empty_aggregate_gnu, diag::ext_flexible_array_init, diag::ext_flexible_array_union_gnu, diag::ext_forward_ref_enum_def, diag::ext_gnu_anonymous_struct, diag::ext_imaginary_constant, diag::ext_in_class_initializer_non_constant, diag::ext_member_redeclared, diag::ext_missing_varargs_arg, diag::ext_no_named_members_in_struct_union, diag::ext_paste_comma, diag::ext_pp_line_zero, diag::ext_typecheck_cast_to_union, diag::ext_variable_sized_type_in_struct, -1 };
static const short DiagSubGroup154[] = { 155, 157, 158, 159, 160, 161, 420, 162, 163, 164, 425, -1 };
static const short DiagArray155[] = { diag::ext_alignof_expr, -1 };
static const short DiagArray156[] = { diag::ext_array_init_parens, -1 };
static const short DiagArray157[] = { diag::ext_gnu_case_range, -1 };
static const short DiagArray158[] = { diag::ext_integer_complex, -1 };
static const short DiagArray159[] = { diag::ext_gnu_conditional_expr, -1 };
static const short DiagArray160[] = { diag::ext_gnu_array_range, diag::ext_gnu_missing_equal_designator, diag::ext_gnu_old_style_field_designator, -1 };
static const short DiagArray161[] = { diag::ext_gnu_empty_initializer, -1 };
static const short DiagArray162[] = { diag::ext_gnu_address_of_label, diag::ext_gnu_indirect_goto, -1 };
static const short DiagArray163[] = { diag::ext_gnu_statement_expr, -1 };
static const short DiagArray164[] = { diag::ext_in_class_initializer_float_type, -1 };
static const short DiagArray165[] = { diag::warn_header_guard, -1 };
static const short DiagArray166[] = { diag::warn_using_directive_in_header, -1 };
static const short DiagArray167[] = { diag::warn_condition_is_idiomatic_assignment, -1 };
static const short DiagArray168[] = { diag::warn_attribute_after_definition_ignored, diag::warn_attribute_ibaction, diag::warn_attribute_iboutlet, diag::warn_attribute_ignored, diag::warn_attribute_ignored_for_field_of_type, diag::warn_attribute_invalid_on_definition, diag::warn_attribute_malloc_pointer_only, diag::warn_attribute_no_decl, diag::warn_attribute_nonnull_no_pointers, diag::warn_attribute_not_on_decl, diag::warn_attribute_precede_definition, diag::warn_attribute_requires_functions_or_static_globals, diag::warn_attribute_sentinel_named_arguments, diag::warn_attribute_sentinel_not_variadic, diag::warn_attribute_type_not_supported, diag::warn_attribute_unknown_endian, diag::warn_attribute_unknown_visibility, diag::warn_attribute_void_function_method, diag::warn_attribute_weak_on_field, diag::warn_attribute_weak_on_local, diag::warn_attribute_wrong_decl_type, diag::warn_cconv_ignored, diag::warn_cxx11_gnu_attribute_on_type, diag::warn_declspec_attribute_ignored, diag::warn_duplicate_attribute, diag::warn_duplicate_attribute_exact, diag::warn_gc_attribute_weak_on_local, diag::warn_gnu_inline_attribute_requires_inline, diag::warn_mmap_unknown_attribute, diag::warn_ns_attribute_wrong_parameter_type, diag::warn_ns_attribute_wrong_return_type, diag::warn_transparent_union_attribute_field_size_align, diag::warn_transparent_union_attribute_floating, diag::warn_transparent_union_attribute_not_definition, diag::warn_transparent_union_attribute_zero_fields, diag::warn_type_attribute_wrong_type, diag::warn_unhandled_ms_attribute_ignored, -1 };
static const short DiagArray169[] = { diag::warn_arc_lifetime_result_type, diag::warn_qual_return_type, -1 };
static const short DiagSubGroup170[] = { 176, 177, -1 };
static const short DiagArray171[] = { diag::warn_auto_implicit_atomic_property, diag::warn_implicit_atomic_property, -1 };
static const short DiagArray172[] = { diag::warn_impcast_floating_point_to_bool, -1 };
static const short DiagArray173[] = { diag::ext_implicit_exception_spec_mismatch, -1 };
static const short DiagArray174[] = { diag::warn_fallthrough_attr_invalid_placement, diag::warn_fallthrough_attr_unreachable, diag::warn_unannotated_fallthrough, -1 };
static const short DiagSubGroup174[] = { 175, -1 };
static const short DiagArray175[] = { diag::warn_unannotated_fallthrough_per_function, -1 };
static const short DiagArray176[] = { diag::ext_implicit_function_decl, diag::warn_builtin_unknown, diag::warn_implicit_function_decl, -1 };
static const short DiagArray177[] = { diag::ext_missing_type_specifier, -1 };
static const short DiagArray178[] = { diag::warn_implicitly_retains_self, -1 };
static const short DiagArray180[] = { diag::ext_pp_import_directive, -1 };
static const short DiagArray181[] = { diag::warn_redecl_library_builtin, -1 };
static const short DiagArray182[] = { diag::ext_typecheck_convert_incompatible_pointer, -1 };
static const short DiagSubGroup182[] = { 183, -1 };
static const short DiagArray183[] = { diag::ext_nested_pointer_qualifier_mismatch, diag::ext_typecheck_convert_discards_qualifiers, -1 };
static const short DiagArray184[] = { diag::warn_undef_method_impl, -1 };
static const short DiagArray185[] = { diag::warn_forgotten_module_header, -1 };
static const short DiagSubGroup185[] = { 186, -1 };
static const short DiagArray186[] = { diag::warn_missing_submodule, diag::warn_uncovered_module_header, -1 };
static const short DiagArray187[] = { diag::warn_using_decl_constructor_ellipsis, -1 };
static const short DiagArray189[] = { diag::warn_initializer_overrides, diag::warn_subobject_initializer_overrides, -1 };
static const short DiagArray191[] = { diag::ext_typecheck_convert_int_pointer, diag::ext_typecheck_convert_pointer_int, -1 };
static const short DiagSubGroup192[] = { 191, -1 };
static const short DiagArray193[] = { diag::warn_int_to_pointer_cast, -1 };
static const short DiagSubGroup193[] = { 194, -1 };
static const short DiagArray194[] = { diag::warn_int_to_void_pointer_cast, -1 };
static const short DiagArray195[] = { diag::warn_integer_constant_overflow, -1 };
static const short DiagArray196[] = { diag::ext_constexpr_function_never_constant_expr, -1 };
static const short DiagArray197[] = { diag::warn_iboutlet_object_type, diag::warn_iboutletcollection_property_assign, -1 };
static const short DiagArray198[] = { diag::warn_falloff_noreturn_function, diag::warn_noreturn_function_has_return_expr, -1 };
static const short DiagArray199[] = { diag::warn_offsetof_non_pod_type, diag::warn_offsetof_non_standardlayout_type, -1 };
static const short DiagArray201[] = { diag::ext_empty_character, diag::ext_unterminated_char, diag::ext_unterminated_string, -1 };
static const short DiagArray202[] = { diag::warn_bad_character_encoding, diag::warn_bad_string_encoding, -1 };
static const short DiagArray203[] = { diag::err_pp_bad_paste_ms, -1 };
static const short DiagArray204[] = { diag::ext_param_promoted_not_compatible_with_prototype, -1 };
static const short DiagArray205[] = { diag::ext_token_used, -1 };
static const short DiagArray206[] = { diag::warn_parameter_size, diag::warn_return_value_size, -1 };
static const short DiagArray207[] = { diag::warn_impcast_literal_float_to_integer, -1 };
static const short DiagArray208[] = { diag::warn_float_overflow, diag::warn_float_underflow, -1 };
static const short DiagArray209[] = { diag::ext_template_arg_local_type, -1 };
static const short DiagSubGroup209[] = { 64, -1 };
static const short DiagArray210[] = { diag::warn_logical_not_on_lhs_of_comparison, -1 };
static const short DiagArray211[] = { diag::warn_logical_and_in_logical_or, -1 };
static const short DiagArray212[] = { diag::ext_c99_longlong, -1 };
static const short DiagSubGroup212[] = { 57, -1 };
static const short DiagArray213[] = { diag::warn_redundant_loop_iteration, diag::warn_variables_not_in_loop_body, -1 };
static const short DiagArray214[] = { diag::ext_noreturn_main, diag::warn_main_one_arg, diag::warn_static_main, -1 };
static const short DiagArray215[] = { diag::ext_main_returns_nonint, -1 };
static const short DiagArray216[] = { diag::warn_has_warning_invalid_option, -1 };
static const short DiagArray217[] = { diag::warn_non_contravariant_param_types, diag::warn_non_covariant_ret_types, -1 };
static const short DiagArray218[] = { diag::ext_anonymous_record_with_type, diag::ext_c_enum_fixed_underlying_type, diag::ext_charize_microsoft, diag::ext_ellipsis_exception_spec, diag::ext_enumerator_too_large, diag::ext_flexible_array_empty_aggregate_ms, diag::ext_flexible_array_union_ms, diag::ext_function_specialization_in_class, diag::ext_ms_anonymous_struct, diag::ext_ms_deref_template_argument, diag::ext_ms_explicit_constructor_call, diag::ext_ms_forward_ref_enum, diag::ext_ms_using_declaration_inaccessible, diag::ext_pseudo_dtor_on_void, diag::ext_union_member_of_reference_type, diag::warn_found_via_dependent_bases_lookup, diag::warn_goto_into_protected_scope, diag::warn_member_extra_qualification, diag::warn_override_exception_spec, diag::warn_pure_function_definition, -1 };
static const short DiagArray219[] = { diag::warn_microsoft_dependent_exists, -1 };
static const short DiagArray220[] = { diag::warn_attribute_method_def, -1 };
static const short DiagArray221[] = { diag::warn_conflicting_param_types, -1 };
static const short DiagArray222[] = { diag::warn_conflicting_ret_types, -1 };
static const short DiagArray223[] = { diag::warn_struct_class_previous_tag_mismatch, diag::warn_struct_class_tag_mismatch, -1 };
static const short DiagArray224[] = { diag::warn_missing_braces, -1 };
static const short DiagArray225[] = { diag::ext_no_declarators, diag::ext_standalone_specifier, diag::ext_typedef_without_a_name, diag::warn_standalone_specifier, -1 };
static const short DiagArray226[] = { diag::warn_missing_field_initializers, -1 };
static const short DiagArray229[] = { diag::warn_missing_method_return_type, -1 };
static const short DiagArray230[] = { diag::warn_suggest_noreturn_block, diag::warn_suggest_noreturn_function, -1 };
static const short DiagArray231[] = { diag::warn_missing_prototype, -1 };
static const short DiagArray232[] = { diag::warn_missing_selector_name, -1 };
static const short DiagArray233[] = { diag::warn_missing_sysroot, -1 };
static const short DiagArray234[] = { diag::warn_missing_variable_declarations, -1 };
static const short DiagArray235[] = { diag::warn_module_conflict, -1 };
static const short DiagSubGroup236[] = { 74, 75, 98, 142, 170, 223, 224, 237, 307, 311, 316, 333, 334, 358, 374, 386, 387, 395, 421, 260, 283, 297, 71, -1 };
static const short DiagArray237[] = { diag::ext_multichar_character_literal, -1 };
static const short DiagSubGroup238[] = { 58, -1 };
static const short DiagArray239[] = { diag::ext_anonymous_record_with_anonymous_type, -1 };
static const short DiagArray241[] = { diag::ext_no_newline_eof, diag::warn_no_newline_eof, -1 };
static const short DiagSubGroup242[] = { 330, 87, 208, -1 };
static const short DiagArray243[] = { diag::warn_non_literal_null_pointer, -1 };
static const short DiagArray244[] = { diag::warn_cannot_pass_non_pod_arg_to_vararg, diag::warn_non_pod_vararg_with_format_string, diag::warn_second_parameter_to_va_arg_not_pod, diag::warn_second_parameter_to_va_arg_ownership_qualified, -1 };
static const short DiagArray245[] = { diag::warn_non_virtual_dtor, -1 };
static const short DiagArray246[] = { diag::warn_null_arg, -1 };
static const short DiagArray248[] = { diag::warn_null_in_arithmetic_operation, diag::warn_null_in_comparison_operation, -1 };
static const short DiagArray249[] = { diag::null_in_char, diag::null_in_file, diag::null_in_string, -1 };
static const short DiagArray250[] = { diag::warn_impcast_null_pointer_to_integer, -1 };
static const short DiagArray251[] = { diag::warn_indirection_through_null, -1 };
static const short DiagArray252[] = { diag::warn_autosynthesis_property_ivar_match, -1 };
static const short DiagSubGroup253[] = { 270, -1 };
static const short DiagArray254[] = { diag::warn_forward_class_redefinition, -1 };
static const short DiagArray255[] = { diag::warn_ivars_in_interface, -1 };
static const short DiagArray256[] = { diag::warn_objc_literal_comparison, -1 };
static const short DiagSubGroup256[] = { 273, -1 };
static const short DiagArray257[] = { diag::warn_missing_atsign_prefix, -1 };
static const short DiagArray258[] = { diag::warn_class_method_not_found, diag::warn_class_method_not_found_with_typo, diag::warn_inst_method_not_found, diag::warn_instance_method_not_found_with_typo, diag::warn_instance_method_on_class_found, diag::warn_root_inst_method_not_found, -1 };
static const short DiagArray259[] = { diag::warn_missing_explicit_synthesis, -1 };
static const short DiagArray260[] = { diag::warn_objc_missing_super_call, -1 };
static const short DiagArray261[] = { diag::warn_objc_property_retain_of_block, -1 };
static const short DiagArray262[] = { diag::warn_objc_pointer_cxx_catch_fragile, -1 };
static const short DiagArray263[] = { diag::warn_setter_getter_impl_required, diag::warn_setter_getter_impl_required_in_category, -1 };
static const short DiagArray264[] = { diag::warn_owning_getter_rule, -1 };
static const short DiagArray265[] = { diag::warn_objc_property_default_assign_on_object, diag::warn_objc_property_no_assignment_attribute, -1 };
static const short DiagArray266[] = { diag::warn_no_autosynthesis_property, diag::warn_no_autosynthesis_shared_ivar_property, -1 };
static const short DiagArray267[] = { diag::warn_category_method_impl_match, -1 };
static const short DiagArray268[] = { diag::warn_auto_synthesizing_protocol_property, -1 };
static const short DiagArray269[] = { diag::warn_objc_readonly_property_has_setter, -1 };
static const short DiagSubGroup270[] = { 271, -1 };
static const short DiagArray271[] = { diag::warn_objc_redundant_literal_use, -1 };
static const short DiagArray272[] = { diag::warn_objc_root_class_missing, -1 };
static const short DiagArray273[] = { diag::warn_objc_string_literal_comparison, -1 };
static const short DiagArray274[] = { diag::warn_concatenated_nsarray_literal, -1 };
static const short DiagArray275[] = { diag::warn_odr_tag_type_inconsistent, -1 };
static const short DiagArray278[] = { diag::ext_out_of_line_declaration, -1 };
static const short DiagArray279[] = { diag::warn_overaligned_type, -1 };
static const short DiagArray281[] = { diag::ext_string_too_long, -1 };
static const short DiagArray282[] = { diag::warn_overloaded_shift_in_comparison, -1 };
static const short DiagArray283[] = { diag::warn_overloaded_virtual, -1 };
static const short DiagArray284[] = { diag::warn_drv_overriding_joined_option, -1 };
static const short DiagArray285[] = { diag::warn_conflicting_overriding_param_modifiers, diag::warn_conflicting_overriding_param_types, diag::warn_conflicting_overriding_ret_type_modifiers, diag::warn_conflicting_overriding_ret_types, diag::warn_conflicting_overriding_variadic, diag::warn_non_contravariant_overriding_param_types, diag::warn_non_covariant_overriding_ret_types, -1 };
static const short DiagArray286[] = { diag::warn_drv_overriding_t_option, -1 };
static const short DiagArray287[] = { diag::warn_unnecessary_packed, -1 };
static const short DiagArray288[] = { diag::warn_padded_struct_anon_field, diag::warn_padded_struct_field, diag::warn_padded_struct_size, -1 };
static const short DiagArray289[] = { diag::warn_condition_is_assignment, diag::warn_precedence_bitwise_rel, diag::warn_precedence_conditional, -1 };
static const short DiagSubGroup289[] = { 211, 210, 43, 326, 282, 290, 92, -1 };
static const short DiagArray290[] = { diag::warn_equality_with_extra_parens, -1 };
static const short DiagArray291[] = { diag::ext_aggregate_init_not_constant, diag::ext_anonymous_record_with_type, diag::ext_anonymous_struct_union_qualified, diag::ext_array_init_copy, diag::ext_array_size_conversion, diag::ext_binary_literal, diag::ext_binary_literal_cxx1y, diag::ext_c99_array_usage, diag::ext_c99_compound_literal, diag::ext_c99_flexible_array_member, diag::ext_c99_variable_decl_in_for_loop, diag::ext_c_enum_fixed_underlying_type, diag::ext_cast_fn_obj, diag::ext_charize_microsoft, diag::ext_cxx11_enum_fixed_underlying_type, diag::ext_designated_init, diag::ext_ellipsis_exception_spec, diag::ext_empty_fnmacro_arg, diag::ext_empty_struct_union, diag::ext_enum_value_not_int, diag::ext_enumerator_list_comma_c, diag::ext_enumerator_list_comma_cxx, diag::ext_explicit_instantiation_after_specialization, diag::ext_explicit_instantiation_without_qualified_id, diag::ext_expr_not_ice, diag::ext_extern_template, diag::ext_extra_semi, diag::ext_flexible_array_empty_aggregate_gnu, diag::ext_flexible_array_empty_aggregate_ms, diag::ext_flexible_array_init, diag::ext_flexible_array_union_gnu, diag::ext_flexible_array_union_ms, diag::ext_forward_ref_enum, diag::ext_forward_ref_enum_def, diag::ext_freestanding_complex, diag::ext_gnu_anonymous_struct, diag::ext_gnu_array_range, diag::ext_hexconstant_invalid, diag::ext_ident_list_in_param, diag::ext_imaginary_constant, diag::ext_in_class_initializer_non_constant, diag::ext_integer_complement_complex, diag::ext_integer_increment_complex, diag::ext_internal_in_extern_inline, diag::ext_invalid_sign_spec, diag::ext_line_comment, diag::ext_missing_varargs_arg, diag::ext_ms_forward_ref_enum, diag::ext_multi_line_line_comment, diag::ext_no_named_members_in_struct_union, diag::ext_no_newline_eof, diag::ext_nonstandard_escape, diag::ext_param_not_declared, diag::ext_paste_comma, diag::ext_pp_bad_vaargs_use, diag::ext_pp_comma_expr, diag::ext_pp_ident_directive, diag::ext_pp_include_next_directive, diag::ext_pp_line_too_big, diag::ext_pp_line_zero, diag::ext_pp_warning_directive, diag::ext_return_has_void_expr, diag::ext_subscript_non_lvalue, diag::ext_thread_before, diag::ext_typecheck_addrof_void, diag::ext_typecheck_cast_nonscalar, diag::ext_typecheck_cast_to_union, diag::ext_typecheck_comparison_of_fptr_to_void, diag::ext_typecheck_cond_one_void, diag::ext_typecheck_convert_pointer_void_func, diag::ext_typecheck_ordered_comparison_of_pointer_and_zero, diag::ext_vla_folded_to_constant, diag::warn_illegal_constant_array_size, -1 };
static const short DiagSubGroup291[] = { 67, 56, 57, 140, 145, 151, 157, 158, 159, 161, 162, 163, 212, 281, 292, 420, 414, 425, 180, 127, 129, 78, 135, 120, 239, 95, 205, -1 };
static const short DiagArray292[] = { diag::ext_gnu_ptr_func_arith, diag::ext_gnu_subscript_void_type, diag::ext_gnu_void_ptr, diag::ext_sizeof_alignof_function_type, diag::ext_sizeof_alignof_void_type, -1 };
static const short DiagArray293[] = { diag::ext_typecheck_convert_incompatible_pointer_sign, -1 };
static const short DiagArray295[] = { diag::warn_typecheck_cond_incompatible_pointers, -1 };
static const short DiagArray296[] = { diag::ext_predef_outside_function, -1 };
static const short DiagArray297[] = { diag::warn_private_extern, -1 };
static const short DiagArray298[] = { diag::warn_unimplemented_protocol_method, -1 };
static const short DiagArray299[] = { diag::warn_protocol_property_mismatch, -1 };
static const short DiagArray300[] = { diag::warn_auto_readonly_iboutlet_property, -1 };
static const short DiagArray301[] = { diag::warn_objc_property_attr_mutually_exclusive, -1 };
static const short DiagArray302[] = { diag::warn_bad_receiver_type, -1 };
static const short DiagArray303[] = { diag::warn_receiver_forward_class, diag::warn_receiver_forward_instance, -1 };
static const short DiagArray304[] = { diag::warn_receiver_is_weak, -1 };
static const short DiagArray306[] = { diag::warn_reinterpret_different_from_static, -1 };
static const short DiagArray307[] = { diag::warn_initializer_out_of_order, -1 };
static const short DiagArray308[] = { diag::warn_objc_requires_super_protocol, -1 };
static const short DiagArray309[] = { diag::ext_ms_reserved_user_defined_literal, diag::ext_reserved_user_defined_literal, -1 };
static const short DiagSubGroup309[] = { 54, -1 };
static const short DiagArray310[] = { diag::warn_ret_addr_label, diag::warn_ret_local_temp_addr, diag::warn_ret_local_temp_ref, diag::warn_ret_stack_addr, diag::warn_ret_stack_ref, -1 };
static const short DiagArray311[] = { diag::ext_return_has_expr, diag::ext_return_missing_expr, diag::warn_falloff_nonvoid_function, diag::warn_falloff_nonvoid_lambda, diag::warn_maybe_falloff_nonvoid_function, diag::warn_maybe_falloff_nonvoid_lambda, diag::warn_return_missing_expr, -1 };
static const short DiagSubGroup311[] = { 312, -1 };
static const short DiagArray312[] = { diag::warn_return_value_udt, diag::warn_return_value_udt_incomplete, -1 };
static const short DiagArray313[] = { diag::warn_mismatched_section, -1 };
static const short DiagArray314[] = { diag::warn_unimplemented_selector, -1 };
static const short DiagSubGroup314[] = { 315, -1 };
static const short DiagArray315[] = { diag::warning_multiple_selectors, -1 };
static const short DiagArray316[] = { diag::warn_self_assignment, -1 };
static const short DiagSubGroup316[] = { 317, -1 };
static const short DiagArray317[] = { diag::warn_identity_field_assign, -1 };
static const short DiagArray318[] = { diag::warn_semicolon_before_method_body, -1 };
static const short DiagArray319[] = { diag::warn_missing_sentinel, diag::warn_not_enough_argument, -1 };
static const short DiagSubGroup320[] = { 393, -1 };
static const short DiagArray321[] = { diag::warn_fe_serialized_diag_failure, -1 };
static const short DiagArray322[] = { diag::warn_decl_shadow, -1 };
static const short DiagArray323[] = { diag::warn_ivar_use_hidden, -1 };
static const short DiagArray324[] = { diag::warn_shift_negative, -1 };
static const short DiagArray325[] = { diag::warn_shift_gt_typewidth, -1 };
static const short DiagArray326[] = { diag::warn_addition_in_bitshift, -1 };
static const short DiagArray327[] = { diag::warn_shift_result_gt_typewidth, -1 };
static const short DiagArray328[] = { diag::warn_shift_result_sets_sign_bit, -1 };
static const short DiagArray329[] = { diag::warn_impcast_integer_64_32, -1 };
static const short DiagArray330[] = { diag::warn_mixed_sign_comparison, -1 };
static const short DiagArray331[] = { diag::warn_impcast_integer_sign, diag::warn_impcast_integer_sign_conditional, -1 };
static const short DiagArray333[] = { diag::warn_sizeof_array_param, -1 };
static const short DiagArray334[] = { diag::warn_sizeof_array_decay, -1 };
static const short DiagArray335[] = { diag::warn_sizeof_pointer_expr_memaccess, diag::warn_sizeof_pointer_type_memaccess, -1 };
static const short DiagArray336[] = { diag::warn_sometimes_uninit_var, -1 };
static const short DiagArray337[] = { diag::warn_pragma_omp_ignored, -1 };
static const short DiagArray339[] = { diag::ext_in_class_initializer_float_type_cxx11, -1 };
static const short DiagSubGroup339[] = { 164, -1 };
static const short DiagArray340[] = { diag::ext_internal_in_extern_inline, diag::warn_internal_in_extern_inline, -1 };
static const short DiagArray341[] = { diag::warn_static_local_in_extern_inline, -1 };
static const short DiagArray342[] = { diag::warn_static_self_reference_in_init, -1 };
static const short DiagArray355[] = { diag::warn_strict_multiple_method_decl, -1 };
static const short DiagArray356[] = { diag::warn_stringcompare, -1 };
static const short DiagArray357[] = { diag::warn_impcast_string_literal_to_bool, -1 };
static const short DiagArray358[] = { diag::warn_string_plus_int, -1 };
static const short DiagArray359[] = { diag::warn_strlcpycat_wrong_size, -1 };
static const short DiagArray360[] = { diag::warn_strncat_large_size, diag::warn_strncat_src_size, diag::warn_strncat_wrong_size, -1 };
static const short DiagArray361[] = { diag::ext_typecheck_base_super, -1 };
static const short DiagArray362[] = { diag::warn_case_value_overflow, diag::warn_missing_case1, diag::warn_missing_case2, diag::warn_missing_case3, diag::warn_missing_cases, diag::warn_not_in_enum, -1 };
static const short DiagArray364[] = { diag::warn_def_missing_case1, diag::warn_def_missing_case2, diag::warn_def_missing_case3, diag::warn_def_missing_cases, -1 };
static const short DiagArray366[] = { diag::warn_comparison_always, diag::warn_lunsigned_always_true_comparison, diag::warn_runsigned_always_true_comparison, -1 };
static const short DiagSubGroup366[] = { 367, -1 };
static const short DiagArray367[] = { diag::warn_out_of_range_compare, -1 };
static const short DiagArray368[] = { diag::ext_typecheck_decl_incomplete_type, -1 };
static const short DiagSubGroup369[] = { 371, 370, 373, -1 };
static const short DiagArray370[] = { diag::warn_cannot_resolve_lock, diag::warn_double_lock, diag::warn_expecting_lock_held_on_loop, diag::warn_expecting_locked, diag::warn_fun_excludes_mutex, diag::warn_fun_requires_lock, diag::warn_lock_exclusive_and_shared, diag::warn_lock_some_predecessors, diag::warn_no_unlock, diag::warn_unlock_but_no_lock, diag::warn_var_deref_requires_any_lock, diag::warn_var_deref_requires_lock, diag::warn_variable_requires_any_lock, diag::warn_variable_requires_lock, -1 };
static const short DiagArray371[] = { diag::warn_thread_attribute_argument_not_class, diag::warn_thread_attribute_argument_not_lockable, diag::warn_thread_attribute_decl_not_lockable, diag::warn_thread_attribute_decl_not_pointer, diag::warn_thread_attribute_ignored, diag::warn_thread_attribute_wrong_decl_type, -1 };
static const short DiagArray372[] = { diag::warn_thread_safety_beta, -1 };
static const short DiagArray373[] = { diag::warn_fun_requires_lock_precise, diag::warn_var_deref_requires_lock_precise, diag::warn_variable_requires_lock_precise, -1 };
static const short DiagArray374[] = { diag::trigraph_converted, diag::trigraph_ends_block_comment, diag::trigraph_ignored, diag::trigraph_ignored_block_comment, -1 };
static const short DiagArray376[] = { diag::warn_type_safety_null_pointer_required, diag::warn_type_safety_type_mismatch, diag::warn_type_tag_for_datatype_wrong_kind, -1 };
static const short DiagArray377[] = { diag::warn_redefinition_of_typedef, -1 };
static const short DiagArray378[] = { diag::warn_typename_missing, -1 };
static const short DiagArray379[] = { diag::warn_undeclared_selector, diag::warn_undeclared_selector_with_typo, -1 };
static const short DiagArray380[] = { diag::warn_pp_undef_identifier, -1 };
static const short DiagArray381[] = { diag::warn_undefined_inline, -1 };
static const short DiagArray382[] = { diag::warn_undefined_internal, -1 };
static const short DiagArray383[] = { diag::warn_pointer_indirection_from_incompatible_type, diag::warn_undefined_reinterpret_cast, -1 };
static const short DiagArray384[] = { diag::warn_ucn_escape_incomplete, diag::warn_ucn_escape_no_digits, diag::warn_ucn_escape_surrogate, diag::warn_ucn_not_valid_in_c89, diag::warn_ucn_not_valid_in_c89_literal, -1 };
static const short DiagArray385[] = { diag::ext_unicode_whitespace, -1 };
static const short DiagArray386[] = { diag::warn_field_is_uninit, diag::warn_reference_field_is_uninit, diag::warn_uninit_byref_blockvar_captured_by_block, diag::warn_uninit_self_reference_in_init, diag::warn_uninit_self_reference_in_reference_init, diag::warn_uninit_var, -1 };
static const short DiagSubGroup386[] = { 336, 342, -1 };
static const short DiagArray387[] = { diag::ext_on_off_switch_syntax, diag::ext_pragma_syntax_eod, diag::ext_stdc_pragma_ignored, diag::warn_pragma_diagnostic_cannot_pop, diag::warn_pragma_diagnostic_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_pragma_include_alias_expected, diag::warn_pragma_include_alias_expected_filename, diag::warn_pragma_include_alias_mismatch_angle, diag::warn_pragma_include_alias_mismatch_quote, diag::warn_stdc_fenv_access_not_supported, -1 };
static const short DiagArray388[] = { diag::warn_unknown_negative_warning_option, diag::warn_unknown_negative_warning_option_suggest, diag::warn_unknown_warning_option, diag::warn_unknown_warning_option_suggest, diag::warn_unknown_warning_specifier, -1 };
static const short DiagArray389[] = { diag::ext_template_arg_unnamed_type, -1 };
static const short DiagSubGroup389[] = { 66, -1 };
static const short DiagArray390[] = { diag::warn_unneeded_internal_decl, diag::warn_unneeded_static_internal_decl, -1 };
static const short DiagArray391[] = { diag::warn_unneeded_member_function, -1 };
static const short DiagArray392[] = { diag::warn_unreachable, -1 };
static const short DiagArray393[] = { diag::warn_unsequenced_mod_mod, diag::warn_unsequenced_mod_use, -1 };
static const short DiagArray394[] = { diag::warn_attribute_protected_visibility, -1 };
static const short DiagSubGroup395[] = { 396, 400, 401, 405, 408, 409, -1 };
static const short DiagArray397[] = { diag::warn_drv_empty_joined_argument, diag::warn_drv_input_file_unused, diag::warn_drv_input_file_unused_by_cpp, diag::warn_drv_preprocessed_input_file_unused, diag::warn_drv_unused_argument, -1 };
static const short DiagSubGroup397[] = { 407, -1 };
static const short DiagArray398[] = { diag::warn_unused_comparison, -1 };
static const short DiagArray399[] = { diag::warn_unused_exception_param, -1 };
static const short DiagArray400[] = { diag::warn_unused_function, -1 };
static const short DiagSubGroup400[] = { 390, -1 };
static const short DiagArray401[] = { diag::warn_unused_label, -1 };
static const short DiagArray402[] = { diag::pp_macro_not_used, -1 };
static const short DiagArray403[] = { diag::warn_unused_member_function, -1 };
static const short DiagSubGroup403[] = { 391, -1 };
static const short DiagArray404[] = { diag::warn_unused_parameter, -1 };
static const short DiagArray405[] = { diag::warn_unused_private_field, -1 };
static const short DiagArray406[] = { diag::warn_unused_result, -1 };
static const short DiagArray407[] = { diag::warn_drv_unused_sanitizer, -1 };
static const short DiagArray408[] = { diag::warn_unused_call, diag::warn_unused_container_subscript_expr, diag::warn_unused_expr, diag::warn_unused_property_expr, diag::warn_unused_voidptr, -1 };
static const short DiagSubGroup408[] = { 398, 406, -1 };
static const short DiagArray409[] = { diag::warn_unused_variable, -1 };
static const short DiagArray410[] = { diag::warn_unused_volatile, -1 };
static const short DiagArray411[] = { diag::warn_used_but_marked_unused, -1 };
static const short DiagArray412[] = { diag::warn_user_literal_reserved, -1 };
static const short DiagArray413[] = { diag::warn_second_parameter_of_va_start_not_last_named_argument, diag::warn_second_parameter_to_va_arg_never_compatible, diag::warn_va_start_of_reference_type_is_undefined, -1 };
static const short DiagArray414[] = { diag::ext_named_variadic_macro, diag::ext_variadic_macro, -1 };
static const short DiagArray415[] = { diag::warn_incompatible_vectors, -1 };
static const short DiagSubGroup416[] = { 415, -1 };
static const short DiagArray417[] = { diag::warn_empty_parens_are_function_decl, diag::warn_parens_disambiguated_as_function_declaration, -1 };
static const short DiagArray418[] = { diag::warn_decl_in_param_list, diag::warn_redefinition_in_param_list, -1 };
static const short DiagArray419[] = { diag::warn_vla_used, -1 };
static const short DiagArray420[] = { diag::ext_vla, -1 };
static const short DiagArray422[] = { diag::warn_weak_template_vtable, -1 };
static const short DiagArray423[] = { diag::warn_weak_vtable, -1 };
static const short DiagSubGroup424[] = { 107, -1 };
static const short DiagArray425[] = { diag::ext_typecheck_zero_array_size, -1 };
#endif // GET_DIAG_ARRAYS


#ifdef GET_DIAG_TABLE
  { 0, "",                                                      0, DiagSubGroup0 },
  { 16, "#pragma-messages",                                      DiagArray1, 0 },
  { 9, "#warnings",                                             DiagArray2, 0 },
  { 16, "CFString-literal",                                      DiagArray3, 0 },
  { 18, "NSObject-attribute",                                    DiagArray4, 0 },
  { 3, "abi",                                                   0, 0 },
  { 20, "abstract-final-class",                                  DiagArray6, 0 },
  { 19, "abstract-vbase-init",                                   DiagArray7, 0 },
  { 7, "address",                                               0, 0 },
  { 26, "address-of-array-temporary",                            DiagArray9, 0 },
  { 20, "address-of-temporary",                                  DiagArray10, 0 },
  { 16, "aggregate-return",                                      0, 0 },
  { 3, "all",                                                   0, DiagSubGroup12 },
  { 15, "ambiguous-macro",                                       DiagArray13, 0 },
  { 25, "ambiguous-member-template",                             DiagArray14, 0 },
  { 28, "analyzer-incompatible-plugin",                          DiagArray15, 0 },
  { 21, "anonymous-pack-parens",                                 DiagArray16, 0 },
  { 3, "arc",                                                   0, DiagSubGroup17 },
  { 7, "arc-abi",                                               0, 0 },
  { 37, "arc-bridge-casts-disallowed-in-nonarc",                 DiagArray19, 0 },
  { 30, "arc-maybe-repeated-use-of-weak",                        DiagArray20, 0 },
  { 21, "arc-non-pod-memaccess",                                 DiagArray21, 0 },
  { 25, "arc-performSelector-leaks",                             DiagArray22, 0 },
  { 24, "arc-repeated-use-of-weak",                              DiagArray23, DiagSubGroup23 },
  { 17, "arc-retain-cycles",                                     DiagArray24, 0 },
  { 26, "arc-unsafe-retained-assign",                            DiagArray25, 0 },
  { 12, "array-bounds",                                          DiagArray26, 0 },
  { 31, "array-bounds-pointer-arithmetic",                       DiagArray27, 0 },
  { 3, "asm",                                                   0, DiagSubGroup28 },
  { 18, "asm-operand-widths",                                    DiagArray29, 0 },
  { 11, "assign-enum",                                           DiagArray30, 0 },
  { 17, "atomic-properties",                                     0, DiagSubGroup31 },
  { 42, "atomic-property-with-user-defined-accessor",            DiagArray32, 0 },
  { 10, "attributes",                                            DiagArray33, 0 },
  { 11, "auto-import",                                           DiagArray34, 0 },
  { 18, "auto-storage-class",                                    DiagArray35, 0 },
  { 11, "auto-var-id",                                           DiagArray36, 0 },
  { 12, "availability",                                          DiagArray37, 0 },
  { 24, "backslash-newline-escape",                              DiagArray38, 0 },
  { 20, "bad-array-new-length",                                  DiagArray39, 0 },
  { 17, "bad-function-cast",                                     DiagArray40, 0 },
  { 22, "bind-to-temporary-copy",                                DiagArray41, DiagSubGroup41 },
  { 28, "bitfield-constant-conversion",                          DiagArray42, 0 },
  { 22, "bitwise-op-parentheses",                                DiagArray43, 0 },
  { 15, "bool-conversion",                                       DiagArray44, 0 },
  { 16, "bool-conversions",                                      0, DiagSubGroup45 },
  { 23, "builtin-macro-redefined",                               DiagArray46, 0 },
  { 23, "builtin-requires-header",                               DiagArray47, 0 },
  { 10, "c++-compat",                                            DiagArray48, 0 },
  { 12, "c++0x-compat",                                          0, DiagSubGroup49 },
  { 16, "c++0x-extensions",                                      0, DiagSubGroup50 },
  { 15, "c++0x-narrowing",                                       0, DiagSubGroup51 },
  { 12, "c++11-compat",                                          DiagArray52, DiagSubGroup52 },
  { 21, "c++11-compat-pedantic",                                 0, DiagSubGroup53 },
  { 42, "c++11-compat-reserved-user-defined-literal",            DiagArray54, 0 },
  { 16, "c++11-extensions",                                      DiagArray55, DiagSubGroup55 },
  { 16, "c++11-extra-semi",                                      DiagArray56, 0 },
  { 15, "c++11-long-long",                                       DiagArray57, 0 },
  { 15, "c++11-narrowing",                                       DiagArray58, 0 },
  { 16, "c++1y-extensions",                                      DiagArray59, 0 },
  { 18, "c++98-c++11-compat",                                    DiagArray60, 0 },
  { 27, "c++98-c++11-compat-pedantic",                           DiagArray61, DiagSubGroup61 },
  { 12, "c++98-compat",                                          DiagArray62, DiagSubGroup62 },
  { 35, "c++98-compat-bind-to-temporary-copy",                   DiagArray63, 0 },
  { 37, "c++98-compat-local-type-template-args",                 DiagArray64, 0 },
  { 21, "c++98-compat-pedantic",                                 DiagArray65, DiagSubGroup65 },
  { 39, "c++98-compat-unnamed-type-template-args",               DiagArray66, 0 },
  { 14, "c11-extensions",                                        DiagArray67, 0 },
  { 10, "c99-compat",                                            DiagArray68, 0 },
  { 14, "c99-extensions",                                        DiagArray69, 0 },
  { 10, "cast-align",                                            DiagArray70, 0 },
  { 16, "cast-of-sel-type",                                      DiagArray71, 0 },
  { 9, "cast-qual",                                             0, 0 },
  { 10, "char-align",                                            0, 0 },
  { 15, "char-subscripts",                                       DiagArray74, 0 },
  { 7, "comment",                                               DiagArray75, 0 },
  { 8, "comments",                                              0, DiagSubGroup76 },
  { 30, "compare-distinct-pointer-types",                        DiagArray77, 0 },
  { 22, "complex-component-init",                                DiagArray78, 0 },
  { 25, "conditional-type-mismatch",                             DiagArray79, 0 },
  { 25, "conditional-uninitialized",                             DiagArray80, 0 },
  { 13, "config-macros",                                         DiagArray81, 0 },
  { 19, "constant-conversion",                                   DiagArray82, DiagSubGroup82 },
  { 24, "constant-logical-operand",                              DiagArray83, 0 },
  { 19, "constexpr-not-const",                                   DiagArray84, 0 },
  { 8, "consumed",                                              DiagArray85, 0 },
  { 15, "consumed-strict",                                       DiagArray86, DiagSubGroup86 },
  { 10, "conversion",                                            DiagArray87, DiagSubGroup87 },
  { 15, "conversion-null",                                       0, DiagSubGroup88 },
  { 22, "covered-switch-default",                                DiagArray89, 0 },
  { 17, "ctor-dtor-privacy",                                     0, 0 },
  { 24, "custom-atomic-properties",                              DiagArray91, 0 },
  { 13, "dangling-else",                                         DiagArray92, 0 },
  { 14, "dangling-field",                                        DiagArray93, 0 },
  { 25, "dangling-initializer-list",                             DiagArray94, 0 },
  { 27, "declaration-after-statement",                           DiagArray95, 0 },
  { 22, "delegating-ctor-cycles",                                DiagArray96, 0 },
  { 17, "delete-incomplete",                                     DiagArray97, 0 },
  { 23, "delete-non-virtual-dtor",                               DiagArray98, 0 },
  { 10, "deprecated",                                            DiagArray99, DiagSubGroup99 },
  { 23, "deprecated-declarations",                               DiagArray100, 0 },
  { 26, "deprecated-implementations",                            DiagArray101, 0 },
  { 25, "deprecated-increment-bool",                             DiagArray102, 0 },
  { 25, "deprecated-objc-isa-usage",                             DiagArray103, 0 },
  { 37, "deprecated-objc-pointer-introspection",                 DiagArray104, DiagSubGroup104 },
  { 53, "deprecated-objc-pointer-introspection-performSelector", DiagArray105, 0 },
  { 19, "deprecated-register",                                   DiagArray106, 0 },
  { 27, "deprecated-writable-strings",                           DiagArray107, 0 },
  { 18, "direct-ivar-access",                                    DiagArray108, 0 },
  { 24, "disabled-macro-expansion",                              DiagArray109, 0 },
  { 21, "disabled-optimization",                                 0, 0 },
  { 12, "discard-qual",                                          0, 0 },
  { 28, "distributed-object-modifiers",                          DiagArray112, 0 },
  { 11, "div-by-zero",                                           0, 0 },
  { 16, "division-by-zero",                                      DiagArray114, 0 },
  { 13, "documentation",                                         DiagArray115, DiagSubGroup115 },
  { 29, "documentation-deprecated-sync",                         DiagArray116, 0 },
  { 18, "documentation-html",                                    DiagArray117, 0 },
  { 22, "documentation-pedantic",                                DiagArray118, DiagSubGroup118 },
  { 29, "documentation-unknown-command",                         DiagArray119, 0 },
  { 30, "dollar-in-identifier-extension",                        DiagArray120, 0 },
  { 24, "duplicate-decl-specifier",                              DiagArray121, 0 },
  { 14, "duplicate-enum",                                        DiagArray122, 0 },
  { 20, "duplicate-method-arg",                                  DiagArray123, 0 },
  { 22, "duplicate-method-match",                                DiagArray124, 0 },
  { 23, "dynamic-class-memaccess",                               DiagArray125, 0 },
  { 6, "effc++",                                                0, 0 },
  { 18, "embedded-directive",                                    DiagArray127, 0 },
  { 10, "empty-body",                                            DiagArray128, 0 },
  { 22, "empty-translation-unit",                                DiagArray129, 0 },
  { 12, "endif-labels",                                          0, DiagSubGroup130 },
  { 12, "enum-compare",                                          DiagArray131, 0 },
  { 15, "enum-conversion",                                       DiagArray132, 0 },
  { 21, "exit-time-destructors",                                 DiagArray133, 0 },
  { 23, "explicit-ownership-type",                               DiagArray134, 0 },
  { 17, "extended-offsetof",                                     DiagArray135, 0 },
  { 18, "extern-initializer",                                    DiagArray136, 0 },
  { 5, "extra",                                                 0, DiagSubGroup137 },
  { 10, "extra-semi",                                            DiagArray138, DiagSubGroup138 },
  { 12, "extra-tokens",                                          DiagArray139, 0 },
  { 25, "flexible-array-extensions",                             DiagArray140, 0 },
  { 11, "float-equal",                                           DiagArray141, 0 },
  { 6, "format",                                                DiagArray142, DiagSubGroup142 },
  { 17, "format-extra-args",                                     DiagArray143, 0 },
  { 24, "format-invalid-specifier",                              DiagArray144, 0 },
  { 14, "format-non-iso",                                        DiagArray145, 0 },
  { 17, "format-nonliteral",                                     DiagArray146, DiagSubGroup146 },
  { 15, "format-security",                                       DiagArray147, 0 },
  { 10, "format-y2k",                                            0, 0 },
  { 18, "format-zero-length",                                    DiagArray149, 0 },
  { 8, "format=2",                                              0, DiagSubGroup150 },
  { 19, "four-char-constants",                                   DiagArray151, 0 },
  { 10, "gcc-compat",                                            DiagArray152, 0 },
  { 19, "global-constructors",                                   DiagArray153, 0 },
  { 3, "gnu",                                                   DiagArray154, DiagSubGroup154 },
  { 22, "gnu-alignof-expression",                                DiagArray155, 0 },
  { 27, "gnu-array-member-paren-init",                           DiagArray156, 0 },
  { 14, "gnu-case-range",                                        DiagArray157, 0 },
  { 19, "gnu-complex-integer",                                   DiagArray158, 0 },
  { 31, "gnu-conditional-omitted-operand",                       DiagArray159, 0 },
  { 14, "gnu-designator",                                        DiagArray160, 0 },
  { 21, "gnu-empty-initializer",                                 DiagArray161, 0 },
  { 18, "gnu-label-as-value",                                    DiagArray162, 0 },
  { 24, "gnu-statement-expression",                              DiagArray163, 0 },
  { 21, "gnu-static-float-init",                                 DiagArray164, 0 },
  { 12, "header-guard",                                          DiagArray165, 0 },
  { 14, "header-hygiene",                                        DiagArray166, 0 },
  { 21, "idiomatic-parentheses",                                 DiagArray167, 0 },
  { 18, "ignored-attributes",                                    DiagArray168, 0 },
  { 18, "ignored-qualifiers",                                    DiagArray169, 0 },
  { 8, "implicit",                                              0, DiagSubGroup170 },
  { 26, "implicit-atomic-properties",                            DiagArray171, 0 },
  { 42, "implicit-conversion-floating-point-to-bool",            DiagArray172, 0 },
  { 32, "implicit-exception-spec-mismatch",                      DiagArray173, 0 },
  { 20, "implicit-fallthrough",                                  DiagArray174, DiagSubGroup174 },
  { 33, "implicit-fallthrough-per-function",                     DiagArray175, 0 },
  { 29, "implicit-function-declaration",                         DiagArray176, 0 },
  { 12, "implicit-int",                                          DiagArray177, 0 },
  { 20, "implicit-retain-self",                                  DiagArray178, 0 },
  { 6, "import",                                                0, 0 },
  { 38, "import-preprocessor-directive-pedantic",                DiagArray180, 0 },
  { 34, "incompatible-library-redeclaration",                    DiagArray181, 0 },
  { 26, "incompatible-pointer-types",                            DiagArray182, DiagSubGroup182 },
  { 46, "incompatible-pointer-types-discards-qualifiers",        DiagArray183, 0 },
  { 25, "incomplete-implementation",                             DiagArray184, 0 },
  { 17, "incomplete-module",                                     DiagArray185, DiagSubGroup185 },
  { 19, "incomplete-umbrella",                                   DiagArray186, 0 },
  { 23, "inherited-variadic-ctor",                               DiagArray187, 0 },
  { 9, "init-self",                                             0, 0 },
  { 21, "initializer-overrides",                                 DiagArray189, 0 },
  { 6, "inline",                                                0, 0 },
  { 14, "int-conversion",                                        DiagArray191, 0 },
  { 15, "int-conversions",                                       0, DiagSubGroup192 },
  { 19, "int-to-pointer-cast",                                   DiagArray193, DiagSubGroup193 },
  { 24, "int-to-void-pointer-cast",                              DiagArray194, 0 },
  { 16, "integer-overflow",                                      DiagArray195, 0 },
  { 17, "invalid-constexpr",                                     DiagArray196, 0 },
  { 16, "invalid-iboutlet",                                      DiagArray197, 0 },
  { 16, "invalid-noreturn",                                      DiagArray198, 0 },
  { 16, "invalid-offsetof",                                      DiagArray199, 0 },
  { 11, "invalid-pch",                                           0, 0 },
  { 16, "invalid-pp-token",                                      DiagArray201, 0 },
  { 23, "invalid-source-encoding",                               DiagArray202, 0 },
  { 19, "invalid-token-paste",                                   DiagArray203, 0 },
  { 22, "knr-promoted-parameter",                                DiagArray204, 0 },
  { 24, "language-extension-token",                              DiagArray205, 0 },
  { 19, "large-by-value-copy",                                   DiagArray206, 0 },
  { 18, "literal-conversion",                                    DiagArray207, 0 },
  { 13, "literal-range",                                         DiagArray208, 0 },
  { 24, "local-type-template-args",                              DiagArray209, DiagSubGroup209 },
  { 23, "logical-not-parentheses",                               DiagArray210, 0 },
  { 22, "logical-op-parentheses",                                DiagArray211, 0 },
  { 9, "long-long",                                             DiagArray212, DiagSubGroup212 },
  { 13, "loop-analysis",                                         DiagArray213, 0 },
  { 4, "main",                                                  DiagArray214, 0 },
  { 16, "main-return-type",                                      DiagArray215, 0 },
  { 23, "malformed-warning-check",                               DiagArray216, 0 },
  { 17, "method-signatures",                                     DiagArray217, 0 },
  { 9, "microsoft",                                             DiagArray218, 0 },
  { 16, "microsoft-exists",                                      DiagArray219, 0 },
  { 28, "mismatched-method-attributes",                          DiagArray220, 0 },
  { 26, "mismatched-parameter-types",                            DiagArray221, 0 },
  { 23, "mismatched-return-types",                               DiagArray222, 0 },
  { 15, "mismatched-tags",                                       DiagArray223, 0 },
  { 14, "missing-braces",                                        DiagArray224, 0 },
  { 20, "missing-declarations",                                  DiagArray225, 0 },
  { 26, "missing-field-initializers",                            DiagArray226, 0 },
  { 24, "missing-format-attribute",                              0, 0 },
  { 20, "missing-include-dirs",                                  0, 0 },
  { 26, "missing-method-return-type",                            DiagArray229, 0 },
  { 16, "missing-noreturn",                                      DiagArray230, 0 },
  { 18, "missing-prototypes",                                    DiagArray231, 0 },
  { 21, "missing-selector-name",                                 DiagArray232, 0 },
  { 15, "missing-sysroot",                                       DiagArray233, 0 },
  { 29, "missing-variable-declarations",                         DiagArray234, 0 },
  { 15, "module-conflict",                                       DiagArray235, 0 },
  { 4, "most",                                                  0, DiagSubGroup236 },
  { 9, "multichar",                                             DiagArray237, 0 },
  { 9, "narrowing",                                             0, DiagSubGroup238 },
  { 17, "nested-anon-types",                                     DiagArray239, 0 },
  { 14, "nested-externs",                                        0, 0 },
  { 11, "newline-eof",                                           DiagArray241, 0 },
  { 7, "non-gcc",                                               0, DiagSubGroup242 },
  { 27, "non-literal-null-conversion",                           DiagArray243, 0 },
  { 15, "non-pod-varargs",                                       DiagArray244, 0 },
  { 16, "non-virtual-dtor",                                      DiagArray245, 0 },
  { 7, "nonnull",                                               DiagArray246, 0 },
  { 21, "nonportable-cfstrings",                                 0, 0 },
  { 15, "null-arithmetic",                                       DiagArray248, 0 },
  { 14, "null-character",                                        DiagArray249, 0 },
  { 15, "null-conversion",                                       DiagArray250, 0 },
  { 16, "null-dereference",                                      DiagArray251, 0 },
  { 43, "objc-autosynthesis-property-ivar-name-match",           DiagArray252, 0 },
  { 14, "objc-cocoa-api",                                        0, DiagSubGroup253 },
  { 31, "objc-forward-class-redefinition",                       DiagArray254, 0 },
  { 20, "objc-interface-ivars",                                  DiagArray255, 0 },
  { 20, "objc-literal-compare",                                  DiagArray256, DiagSubGroup256 },
  { 27, "objc-literal-missing-atsign",                           DiagArray257, 0 },
  { 18, "objc-method-access",                                    DiagArray258, 0 },
  { 31, "objc-missing-property-synthesis",                       DiagArray259, 0 },
  { 24, "objc-missing-super-calls",                              DiagArray260, 0 },
  { 34, "objc-noncopy-retain-block-property",                    DiagArray261, 0 },
  { 26, "objc-nonunified-exceptions",                            DiagArray262, 0 },
  { 28, "objc-property-implementation",                          DiagArray263, 0 },
  { 42, "objc-property-matches-cocoa-ownership-rule",            DiagArray264, 0 },
  { 26, "objc-property-no-attribute",                            DiagArray265, 0 },
  { 23, "objc-property-synthesis",                               DiagArray266, 0 },
  { 35, "objc-protocol-method-implementation",                   DiagArray267, 0 },
  { 32, "objc-protocol-property-synthesis",                      DiagArray268, 0 },
  { 34, "objc-readonly-with-setter-property",                    DiagArray269, 0 },
  { 22, "objc-redundant-api-use",                                0, DiagSubGroup270 },
  { 26, "objc-redundant-literal-use",                            DiagArray271, 0 },
  { 15, "objc-root-class",                                       DiagArray272, 0 },
  { 19, "objc-string-compare",                                   DiagArray273, 0 },
  { 25, "objc-string-concatenation",                             DiagArray274, 0 },
  { 3, "odr",                                                   DiagArray275, 0 },
  { 14, "old-style-cast",                                        0, 0 },
  { 20, "old-style-definition",                                  0, 0 },
  { 23, "out-of-line-declaration",                               DiagArray278, 0 },
  { 12, "over-aligned",                                          DiagArray279, 0 },
  { 8, "overflow",                                              0, 0 },
  { 18, "overlength-strings",                                    DiagArray281, 0 },
  { 31, "overloaded-shift-op-parentheses",                       DiagArray282, 0 },
  { 18, "overloaded-virtual",                                    DiagArray283, 0 },
  { 20, "overriding-fo-option",                                  DiagArray284, 0 },
  { 26, "overriding-method-mismatch",                            DiagArray285, 0 },
  { 19, "overriding-t-option",                                   DiagArray286, 0 },
  { 6, "packed",                                                DiagArray287, 0 },
  { 6, "padded",                                                DiagArray288, 0 },
  { 11, "parentheses",                                           DiagArray289, DiagSubGroup289 },
  { 20, "parentheses-equality",                                  DiagArray290, 0 },
  { 8, "pedantic",                                              DiagArray291, DiagSubGroup291 },
  { 13, "pointer-arith",                                         DiagArray292, 0 },
  { 12, "pointer-sign",                                          DiagArray293, 0 },
  { 19, "pointer-to-int-cast",                                   0, 0 },
  { 21, "pointer-type-mismatch",                                 DiagArray295, 0 },
  { 38, "predefined-identifier-outside-function",                DiagArray296, 0 },
  { 14, "private-extern",                                        DiagArray297, 0 },
  { 8, "protocol",                                              DiagArray298, 0 },
  { 37, "protocol-property-synthesis-ambiguity",                 DiagArray299, 0 },
  { 26, "readonly-iboutlet-property",                            DiagArray300, 0 },
  { 21, "readonly-setter-attrs",                                 DiagArray301, 0 },
  { 13, "receiver-expr",                                         DiagArray302, 0 },
  { 22, "receiver-forward-class",                                DiagArray303, 0 },
  { 16, "receiver-is-weak",                                      DiagArray304, 0 },
  { 15, "redundant-decls",                                       0, 0 },
  { 22, "reinterpret-base-class",                                DiagArray306, 0 },
  { 7, "reorder",                                               DiagArray307, 0 },
  { 24, "requires-super-attribute",                              DiagArray308, 0 },
  { 29, "reserved-user-defined-literal",                         DiagArray309, DiagSubGroup309 },
  { 20, "return-stack-address",                                  DiagArray310, 0 },
  { 11, "return-type",                                           DiagArray311, DiagSubGroup311 },
  { 21, "return-type-c-linkage",                                 DiagArray312, 0 },
  { 7, "section",                                               DiagArray313, 0 },
  { 8, "selector",                                              DiagArray314, DiagSubGroup314 },
  { 22, "selector-type-mismatch",                                DiagArray315, 0 },
  { 11, "self-assign",                                           DiagArray316, DiagSubGroup316 },
  { 17, "self-assign-field",                                     DiagArray317, 0 },
  { 28, "semicolon-before-method-body",                          DiagArray318, 0 },
  { 8, "sentinel",                                              DiagArray319, 0 },
  { 14, "sequence-point",                                        0, DiagSubGroup320 },
  { 22, "serialized-diagnostics",                                DiagArray321, 0 },
  { 6, "shadow",                                                DiagArray322, 0 },
  { 11, "shadow-ivar",                                           DiagArray323, 0 },
  { 20, "shift-count-negative",                                  DiagArray324, 0 },
  { 20, "shift-count-overflow",                                  DiagArray325, 0 },
  { 20, "shift-op-parentheses",                                  DiagArray326, 0 },
  { 14, "shift-overflow",                                        DiagArray327, 0 },
  { 19, "shift-sign-overflow",                                   DiagArray328, 0 },
  { 16, "shorten-64-to-32",                                      DiagArray329, 0 },
  { 12, "sign-compare",                                          DiagArray330, 0 },
  { 15, "sign-conversion",                                       DiagArray331, 0 },
  { 10, "sign-promo",                                            0, 0 },
  { 21, "sizeof-array-argument",                                 DiagArray333, 0 },
  { 18, "sizeof-array-decay",                                    DiagArray334, 0 },
  { 24, "sizeof-pointer-memaccess",                              DiagArray335, 0 },
  { 23, "sometimes-uninitialized",                               DiagArray336, 0 },
  { 18, "source-uses-openmp",                                    DiagArray337, 0 },
  { 15, "stack-protector",                                       0, 0 },
  { 17, "static-float-init",                                     DiagArray339, DiagSubGroup339 },
  { 16, "static-in-inline",                                      DiagArray340, 0 },
  { 22, "static-local-in-inline",                                DiagArray341, 0 },
  { 16, "static-self-init",                                      DiagArray342, 0 },
  { 15, "strict-aliasing",                                       0, 0 },
  { 17, "strict-aliasing=0",                                     0, 0 },
  { 17, "strict-aliasing=1",                                     0, 0 },
  { 17, "strict-aliasing=2",                                     0, 0 },
  { 15, "strict-overflow",                                       0, 0 },
  { 17, "strict-overflow=0",                                     0, 0 },
  { 17, "strict-overflow=1",                                     0, 0 },
  { 17, "strict-overflow=2",                                     0, 0 },
  { 17, "strict-overflow=3",                                     0, 0 },
  { 17, "strict-overflow=4",                                     0, 0 },
  { 17, "strict-overflow=5",                                     0, 0 },
  { 17, "strict-prototypes",                                     0, 0 },
  { 21, "strict-selector-match",                                 DiagArray355, 0 },
  { 14, "string-compare",                                        DiagArray356, 0 },
  { 17, "string-conversion",                                     DiagArray357, 0 },
  { 15, "string-plus-int",                                       DiagArray358, 0 },
  { 20, "strlcpy-strlcat-size",                                  DiagArray359, 0 },
  { 12, "strncat-size",                                          DiagArray360, 0 },
  { 27, "super-class-method-mismatch",                           DiagArray361, 0 },
  { 6, "switch",                                                DiagArray362, 0 },
  { 14, "switch-default",                                        0, 0 },
  { 11, "switch-enum",                                           DiagArray364, 0 },
  { 5, "synth",                                                 0, 0 },
  { 20, "tautological-compare",                                  DiagArray366, DiagSubGroup366 },
  { 42, "tautological-constant-out-of-range-compare",            DiagArray367, 0 },
  { 36, "tentative-definition-incomplete-type",                  DiagArray368, 0 },
  { 13, "thread-safety",                                         0, DiagSubGroup369 },
  { 22, "thread-safety-analysis",                                DiagArray370, 0 },
  { 24, "thread-safety-attributes",                              DiagArray371, 0 },
  { 18, "thread-safety-beta",                                    DiagArray372, 0 },
  { 21, "thread-safety-precise",                                 DiagArray373, 0 },
  { 9, "trigraphs",                                             DiagArray374, 0 },
  { 11, "type-limits",                                           0, 0 },
  { 11, "type-safety",                                           DiagArray376, 0 },
  { 20, "typedef-redefinition",                                  DiagArray377, 0 },
  { 16, "typename-missing",                                      DiagArray378, 0 },
  { 19, "undeclared-selector",                                   DiagArray379, 0 },
  { 5, "undef",                                                 DiagArray380, 0 },
  { 16, "undefined-inline",                                      DiagArray381, 0 },
  { 18, "undefined-internal",                                    DiagArray382, 0 },
  { 26, "undefined-reinterpret-cast",                            DiagArray383, 0 },
  { 7, "unicode",                                               DiagArray384, 0 },
  { 18, "unicode-whitespace",                                    DiagArray385, 0 },
  { 13, "uninitialized",                                         DiagArray386, DiagSubGroup386 },
  { 15, "unknown-pragmas",                                       DiagArray387, 0 },
  { 22, "unknown-warning-option",                                DiagArray388, 0 },
  { 26, "unnamed-type-template-args",                            DiagArray389, DiagSubGroup389 },
  { 29, "unneeded-internal-declaration",                         DiagArray390, 0 },
  { 24, "unneeded-member-function",                              DiagArray391, 0 },
  { 16, "unreachable-code",                                      DiagArray392, 0 },
  { 11, "unsequenced",                                           DiagArray393, 0 },
  { 22, "unsupported-visibility",                                DiagArray394, 0 },
  { 6, "unused",                                                0, DiagSubGroup395 },
  { 15, "unused-argument",                                       0, 0 },
  { 28, "unused-command-line-argument",                          DiagArray397, DiagSubGroup397 },
  { 17, "unused-comparison",                                     DiagArray398, 0 },
  { 26, "unused-exception-parameter",                            DiagArray399, 0 },
  { 15, "unused-function",                                       DiagArray400, DiagSubGroup400 },
  { 12, "unused-label",                                          DiagArray401, 0 },
  { 13, "unused-macros",                                         DiagArray402, 0 },
  { 22, "unused-member-function",                                DiagArray403, DiagSubGroup403 },
  { 16, "unused-parameter",                                      DiagArray404, 0 },
  { 20, "unused-private-field",                                  DiagArray405, 0 },
  { 13, "unused-result",                                         DiagArray406, 0 },
  { 24, "unused-sanitize-argument",                              DiagArray407, 0 },
  { 12, "unused-value",                                          DiagArray408, DiagSubGroup408 },
  { 15, "unused-variable",                                       DiagArray409, 0 },
  { 22, "unused-volatile-lvalue",                                DiagArray410, 0 },
  { 22, "used-but-marked-unused",                                DiagArray411, 0 },
  { 21, "user-defined-literals",                                 DiagArray412, 0 },
  { 7, "varargs",                                               DiagArray413, 0 },
  { 15, "variadic-macros",                                       DiagArray414, 0 },
  { 17, "vector-conversion",                                     DiagArray415, 0 },
  { 18, "vector-conversions",                                    0, DiagSubGroup416 },
  { 12, "vexing-parse",                                          DiagArray417, 0 },
  { 10, "visibility",                                            DiagArray418, 0 },
  { 3, "vla",                                                   DiagArray419, 0 },
  { 13, "vla-extension",                                         DiagArray420, 0 },
  { 21, "volatile-register-var",                                 0, 0 },
  { 21, "weak-template-vtables",                                 DiagArray422, 0 },
  { 12, "weak-vtables",                                          DiagArray423, 0 },
  { 13, "write-strings",                                         0, DiagSubGroup424 },
  { 17, "zero-length-array",                                     DiagArray425, 0 },
#endif // GET_DIAG_TABLE


#ifdef GET_CATEGORY_TABLE
CATEGORY("", DiagCat_None)
CATEGORY("Lexical or Preprocessor Issue", DiagCat_Lexical_or_Preprocessor_Issue)
CATEGORY("Semantic Issue", DiagCat_Semantic_Issue)
CATEGORY("Lambda Issue", DiagCat_Lambda_Issue)
CATEGORY("Parse Issue", DiagCat_Parse_Issue)
CATEGORY("ARC Semantic Issue", DiagCat_ARC_Semantic_Issue)
CATEGORY("ARC and @properties", DiagCat_ARC_and__properties)
CATEGORY("ARC Casting Rules", DiagCat_ARC_Casting_Rules)
CATEGORY("ARC Parse Issue", DiagCat_ARC_Parse_Issue)
CATEGORY("ARC Weak References", DiagCat_ARC_Weak_References)
CATEGORY("ARC Restrictions", DiagCat_ARC_Restrictions)
CATEGORY("Inline Assembly Issue", DiagCat_Inline_Assembly_Issue)
CATEGORY("Modules Issue", DiagCat_Modules_Issue)
CATEGORY("OpenMP Issue", DiagCat_OpenMP_Issue)
CATEGORY("User Defined Issues", DiagCat_User_Defined_Issues)
CATEGORY("Value Conversion Issue", DiagCat_Value_Conversion_Issue)
CATEGORY("Documentation Issue", DiagCat_Documentation_Issue)
CATEGORY("ARC Retain Cycle", DiagCat_ARC_Retain_Cycle)
CATEGORY("Related Result Type Issue", DiagCat_Related_Result_Type_Issue)
CATEGORY("#warning Directive", DiagCat__warning_Directive)
CATEGORY("Deprecations", DiagCat_Deprecations)
CATEGORY("Format String Issue", DiagCat_Format_String_Issue)
CATEGORY("Cocoa API Issue", DiagCat_Cocoa_API_Issue)
CATEGORY("#pragma message Directive", DiagCat__pragma_message_Directive)
CATEGORY("Unused Entity Issue", DiagCat_Unused_Entity_Issue)
#endif // GET_CATEGORY_TABLE

