/* This file is auto-generated by optc-gen.awk.  */

#include "config.h"
#include "system.h"
#include "coretypes.h"
#include "options.h"
#include "tm.h"
#include "opts.h"
#include "intl.h"
#include "insn-attr-common.h"

#include "cpplib.h"
#include "diagnostic-color.h"
#include "diagnostic.h"
#include "pretty-print.h"

static const struct cl_enum_arg cl_enum_aarch64_abi_data[] = 
{
  { "ilp32", AARCH64_ABI_ILP32, 0 },
  { "lp64", AARCH64_ABI_LP64, 0 },
  { NULL, 0, 0 }
};

static void
cl_enum_aarch64_abi_set (void *var, int value)
{
  *((int *) var) = (int) value;
}

static int
cl_enum_aarch64_abi_get (const void *var)
{
  return (int) *((const int *) var);
}

static const struct cl_enum_arg cl_enum_aarch64_ra_sign_scope_t_data[] = 
{
  { "all", AARCH64_FUNCTION_ALL, 0 },
  { "non-leaf", AARCH64_FUNCTION_NON_LEAF, 0 },
  { "none", AARCH64_FUNCTION_NONE, 0 },
  { NULL, 0, 0 }
};

static void
cl_enum_aarch64_ra_sign_scope_t_set (void *var, int value)
{
  *((enum aarch64_function_type *) var) = (enum aarch64_function_type) value;
}

static int
cl_enum_aarch64_ra_sign_scope_t_get (const void *var)
{
  return (int) *((const enum aarch64_function_type *) var);
}

static const struct cl_enum_arg cl_enum_aarch64_tls_size_data[] = 
{
  { "12", 12, 0 },
  { "24", 24, 0 },
  { "32", 32, 0 },
  { "48", 48, 0 },
  { NULL, 0, 0 }
};

static void
cl_enum_aarch64_tls_size_set (void *var, int value)
{
  *((int *) var) = (int) value;
}

static int
cl_enum_aarch64_tls_size_get (const void *var)
{
  return (int) *((const int *) var);
}

static const struct cl_enum_arg cl_enum_bounds_check_data[] = 
{
  { "off", 0, 0 },
  { "on", 2, 0 },
  { "safeonly", 1, 0 },
  { NULL, 0, 0 }
};

static void
cl_enum_bounds_check_set (void *var, int value)
{
  *((int *) var) = (int) value;
}

static int
cl_enum_bounds_check_get (const void *var)
{
  return (int) *((const int *) var);
}

static const struct cl_enum_arg cl_enum_cf_protection_level_data[] = 
{
  { "branch", CF_BRANCH, 0 },
  { "full", CF_FULL, 0 },
  { "none", CF_NONE, 0 },
  { "return", CF_RETURN, 0 },
  { NULL, 0, 0 }
};

static void
cl_enum_cf_protection_level_set (void *var, int value)
{
  *((enum cf_protection_level *) var) = (enum cf_protection_level) value;
}

static int
cl_enum_cf_protection_level_get (const void *var)
{
  return (int) *((const enum cf_protection_level *) var);
}

static const struct cl_enum_arg cl_enum_cmodel_data[] = 
{
  { "large", AARCH64_CMODEL_LARGE, 0 },
  { "small", AARCH64_CMODEL_SMALL, 0 },
  { "tiny", AARCH64_CMODEL_TINY, 0 },
  { NULL, 0, 0 }
};

static void
cl_enum_cmodel_set (void *var, int value)
{
  *((enum aarch64_code_model *) var) = (enum aarch64_code_model) value;
}

static int
cl_enum_cmodel_get (const void *var)
{
  return (int) *((const enum aarch64_code_model *) var);
}

static const struct cl_enum_arg cl_enum_compressed_debug_sections_data[] = 
{
  { "none", 0, 0 },
  { "zlib", 1, 0 },
  { "zlib-gnu", 2, 0 },
  { NULL, 0, 0 }
};

static void
cl_enum_compressed_debug_sections_set (void *var, int value)
{
  *((int *) var) = (int) value;
}

static int
cl_enum_compressed_debug_sections_get (const void *var)
{
  return (int) *((const int *) var);
}

static const struct cl_enum_arg cl_enum_cpp_normalize_level_data[] = 
{
  { "id", normalized_identifier_C, 0 },
  { "nfc", normalized_C, 0 },
  { "nfkc", normalized_KC, 0 },
  { "none", normalized_none, 0 },
  { NULL, 0, 0 }
};

static void
cl_enum_cpp_normalize_level_set (void *var, int value)
{
  *((int *) var) = (int) value;
}

static int
cl_enum_cpp_normalize_level_get (const void *var)
{
  return (int) *((const int *) var);
}

static const struct cl_enum_arg cl_enum_diagnostic_color_rule_data[] = 
{
  { "always", DIAGNOSTICS_COLOR_YES, 0 },
  { "auto", DIAGNOSTICS_COLOR_AUTO, 0 },
  { "never", DIAGNOSTICS_COLOR_NO, 0 },
  { NULL, 0, 0 }
};

static void
cl_enum_diagnostic_color_rule_set (void *var, int value)
{
  *((int *) var) = (int) value;
}

static int
cl_enum_diagnostic_color_rule_get (const void *var)
{
  return (int) *((const int *) var);
}

static const struct cl_enum_arg cl_enum_diagnostic_prefixing_rule_data[] = 
{
  { "every-line", DIAGNOSTICS_SHOW_PREFIX_EVERY_LINE, 0 },
  { "once", DIAGNOSTICS_SHOW_PREFIX_ONCE, 0 },
  { NULL, 0, 0 }
};

static void
cl_enum_diagnostic_prefixing_rule_set (void *var, int value)
{
  *((int *) var) = (int) value;
}

static int
cl_enum_diagnostic_prefixing_rule_get (const void *var)
{
  return (int) *((const int *) var);
}

static const struct cl_enum_arg cl_enum_diagnostics_output_format_data[] = 
{
  { "json", DIAGNOSTICS_OUTPUT_FORMAT_JSON, 0 },
  { "text", DIAGNOSTICS_OUTPUT_FORMAT_TEXT, 0 },
  { NULL, 0, 0 }
};

static void
cl_enum_diagnostics_output_format_set (void *var, int value)
{
  *((int *) var) = (int) value;
}

static int
cl_enum_diagnostics_output_format_get (const void *var)
{
  return (int) *((const int *) var);
}

static const struct cl_enum_arg cl_enum_dwarf_gnat_encodings_data[] = 
{
  { "all", DWARF_GNAT_ENCODINGS_ALL, 0 },
  { "gdb", DWARF_GNAT_ENCODINGS_GDB, 0 },
  { "minimal", DWARF_GNAT_ENCODINGS_MINIMAL, 0 },
  { NULL, 0, 0 }
};

static void
cl_enum_dwarf_gnat_encodings_set (void *var, int value)
{
  *((int *) var) = (int) value;
}

static int
cl_enum_dwarf_gnat_encodings_get (const void *var)
{
  return (int) *((const int *) var);
}

static const struct cl_enum_arg cl_enum_excess_precision_data[] = 
{
  { "fast", EXCESS_PRECISION_FAST, 0 },
  { "standard", EXCESS_PRECISION_STANDARD, 0 },
  { NULL, 0, 0 }
};

static void
cl_enum_excess_precision_set (void *var, int value)
{
  *((enum excess_precision *) var) = (enum excess_precision) value;
}

static int
cl_enum_excess_precision_get (const void *var)
{
  return (int) *((const enum excess_precision *) var);
}

static const struct cl_enum_arg cl_enum_fp_contract_mode_data[] = 
{
  { "fast", FP_CONTRACT_FAST, 0 },
  { "off", FP_CONTRACT_OFF, 0 },
  { "on", FP_CONTRACT_OFF, 0 },
  { NULL, 0, 0 }
};

static void
cl_enum_fp_contract_mode_set (void *var, int value)
{
  *((enum fp_contract_mode *) var) = (enum fp_contract_mode) value;
}

static int
cl_enum_fp_contract_mode_get (const void *var)
{
  return (int) *((const enum fp_contract_mode *) var);
}

static const struct cl_enum_arg cl_enum_gfc_convert_data[] = 
{
  { "big-endian", GFC_FLAG_CONVERT_BIG, 0 },
  { "little-endian", GFC_FLAG_CONVERT_LITTLE, 0 },
  { "native", GFC_FLAG_CONVERT_NATIVE, 0 },
  { "swap", GFC_FLAG_CONVERT_SWAP, 0 },
  { NULL, 0, 0 }
};

static void
cl_enum_gfc_convert_set (void *var, int value)
{
  *((enum gfc_convert *) var) = (enum gfc_convert) value;
}

static int
cl_enum_gfc_convert_get (const void *var)
{
  return (int) *((const enum gfc_convert *) var);
}

static const struct cl_enum_arg cl_enum_gfc_fcoarray_data[] = 
{
  { "lib", GFC_FCOARRAY_LIB, 0 },
  { "none", GFC_FCOARRAY_NONE, 0 },
  { "single", GFC_FCOARRAY_SINGLE, 0 },
  { NULL, 0, 0 }
};

static void
cl_enum_gfc_fcoarray_set (void *var, int value)
{
  *((enum gfc_fcoarray *) var) = (enum gfc_fcoarray) value;
}

static int
cl_enum_gfc_fcoarray_get (const void *var)
{
  return (int) *((const enum gfc_fcoarray *) var);
}

static const struct cl_enum_arg cl_enum_gfc_init_local_real_data[] = 
{
  { "-inf", GFC_INIT_REAL_NEG_INF, 0 },
  { "inf", GFC_INIT_REAL_INF, 0 },
  { "nan", GFC_INIT_REAL_NAN, 0 },
  { "snan", GFC_INIT_REAL_SNAN, 0 },
  { "zero", GFC_INIT_REAL_ZERO, 0 },
  { NULL, 0, 0 }
};

static void
cl_enum_gfc_init_local_real_set (void *var, int value)
{
  *((enum gfc_init_local_real *) var) = (enum gfc_init_local_real) value;
}

static int
cl_enum_gfc_init_local_real_get (const void *var)
{
  return (int) *((const enum gfc_init_local_real *) var);
}

static const struct cl_enum_arg cl_enum_ira_algorithm_data[] = 
{
  { "CB", IRA_ALGORITHM_CB, 0 },
  { "priority", IRA_ALGORITHM_PRIORITY, 0 },
  { NULL, 0, 0 }
};

static void
cl_enum_ira_algorithm_set (void *var, int value)
{
  *((enum ira_algorithm *) var) = (enum ira_algorithm) value;
}

static int
cl_enum_ira_algorithm_get (const void *var)
{
  return (int) *((const enum ira_algorithm *) var);
}

static const struct cl_enum_arg cl_enum_ira_region_data[] = 
{
  { "all", IRA_REGION_ALL, 0 },
  { "mixed", IRA_REGION_MIXED, 0 },
  { "one", IRA_REGION_ONE, 0 },
  { NULL, 0, 0 }
};

static void
cl_enum_ira_region_set (void *var, int value)
{
  *((enum ira_region *) var) = (enum ira_region) value;
}

static int
cl_enum_ira_region_get (const void *var)
{
  return (int) *((const enum ira_region *) var);
}

static const struct cl_enum_arg cl_enum_ivar_visibility_data[] = 
{
  { "package", IVAR_VISIBILITY_PACKAGE, 0 },
  { "private", IVAR_VISIBILITY_PRIVATE, 0 },
  { "protected", IVAR_VISIBILITY_PROTECTED, 0 },
  { "public", IVAR_VISIBILITY_PUBLIC, 0 },
  { NULL, 0, 0 }
};

static void
cl_enum_ivar_visibility_set (void *var, int value)
{
  *((enum ivar_visibility *) var) = (enum ivar_visibility) value;
}

static int
cl_enum_ivar_visibility_get (const void *var)
{
  return (int) *((const enum ivar_visibility *) var);
}

static const struct cl_enum_arg cl_enum_live_patching_level_data[] = 
{
  { "inline-clone", LIVE_PATCHING_INLINE_CLONE, 0 },
  { "inline-only-static", LIVE_PATCHING_INLINE_ONLY_STATIC, 0 },
  { NULL, 0, 0 }
};

static void
cl_enum_live_patching_level_set (void *var, int value)
{
  *((enum live_patching_level *) var) = (enum live_patching_level) value;
}

static int
cl_enum_live_patching_level_get (const void *var)
{
  return (int) *((const enum live_patching_level *) var);
}

static const struct cl_enum_arg cl_enum_lto_linker_output_data[] = 
{
  { "dyn", LTO_LINKER_OUTPUT_DYN, 0 },
  { "exec", LTO_LINKER_OUTPUT_EXEC, 0 },
  { "nolto-rel", LTO_LINKER_OUTPUT_NOLTOREL, 0 },
  { "pie", LTO_LINKER_OUTPUT_PIE, 0 },
  { "rel", LTO_LINKER_OUTPUT_REL, 0 },
  { "unknown", LTO_LINKER_OUTPUT_UNKNOWN, 0 },
  { NULL, 0, 0 }
};

static void
cl_enum_lto_linker_output_set (void *var, int value)
{
  *((enum lto_linker_output *) var) = (enum lto_linker_output) value;
}

static int
cl_enum_lto_linker_output_get (const void *var)
{
  return (int) *((const enum lto_linker_output *) var);
}

static const struct cl_enum_arg cl_enum_lto_partition_model_data[] = 
{
  { "1to1", LTO_PARTITION_1TO1, 0 },
  { "balanced", LTO_PARTITION_BALANCED, 0 },
  { "max", LTO_PARTITION_MAX, 0 },
  { "none", LTO_PARTITION_NONE, 0 },
  { "one", LTO_PARTITION_ONE, 0 },
  { NULL, 0, 0 }
};

static void
cl_enum_lto_partition_model_set (void *var, int value)
{
  *((enum lto_partition_model *) var) = (enum lto_partition_model) value;
}

static int
cl_enum_lto_partition_model_get (const void *var)
{
  return (int) *((const enum lto_partition_model *) var);
}

static const struct cl_enum_arg cl_enum_offload_abi_data[] = 
{
  { "ilp32", OFFLOAD_ABI_ILP32, 0 },
  { "lp64", OFFLOAD_ABI_LP64, 0 },
  { NULL, 0, 0 }
};

static void
cl_enum_offload_abi_set (void *var, int value)
{
  *((enum offload_abi *) var) = (enum offload_abi) value;
}

static int
cl_enum_offload_abi_get (const void *var)
{
  return (int) *((const enum offload_abi *) var);
}

static const struct cl_enum_arg cl_enum_permitted_flt_eval_methods_data[] = 
{
  { "c11", PERMITTED_FLT_EVAL_METHODS_C11, 0 },
  { "ts-18661-3", PERMITTED_FLT_EVAL_METHODS_TS_18661, 0 },
  { NULL, 0, 0 }
};

static void
cl_enum_permitted_flt_eval_methods_set (void *var, int value)
{
  *((enum permitted_flt_eval_methods *) var) = (enum permitted_flt_eval_methods) value;
}

static int
cl_enum_permitted_flt_eval_methods_get (const void *var)
{
  return (int) *((const enum permitted_flt_eval_methods *) var);
}

static const struct cl_enum_arg cl_enum_profile_update_data[] = 
{
  { "atomic", PROFILE_UPDATE_ATOMIC, 0 },
  { "prefer-atomic", PROFILE_UPDATE_PREFER_ATOMIC, 0 },
  { "single", PROFILE_UPDATE_SINGLE, 0 },
  { NULL, 0, 0 }
};

static void
cl_enum_profile_update_set (void *var, int value)
{
  *((enum profile_update *) var) = (enum profile_update) value;
}

static int
cl_enum_profile_update_get (const void *var)
{
  return (int) *((const enum profile_update *) var);
}

static const struct cl_enum_arg cl_enum_reorder_blocks_algorithm_data[] = 
{
  { "simple", REORDER_BLOCKS_ALGORITHM_SIMPLE, 0 },
  { "stc", REORDER_BLOCKS_ALGORITHM_STC, 0 },
  { NULL, 0, 0 }
};

static void
cl_enum_reorder_blocks_algorithm_set (void *var, int value)
{
  *((enum reorder_blocks_algorithm *) var) = (enum reorder_blocks_algorithm) value;
}

static int
cl_enum_reorder_blocks_algorithm_get (const void *var)
{
  return (int) *((const enum reorder_blocks_algorithm *) var);
}

static const struct cl_enum_arg cl_enum_sso_struct_data[] = 
{
  { "big-endian", SSO_BIG_ENDIAN, 0 },
  { "little-endian", SSO_LITTLE_ENDIAN, 0 },
  { "native", SSO_NATIVE, 0 },
  { NULL, 0, 0 }
};

static void
cl_enum_sso_struct_set (void *var, int value)
{
  *((enum scalar_storage_order_kind *) var) = (enum scalar_storage_order_kind) value;
}

static int
cl_enum_sso_struct_get (const void *var)
{
  return (int) *((const enum scalar_storage_order_kind *) var);
}

static const struct cl_enum_arg cl_enum_stack_protector_guard_data[] = 
{
  { "global", SSP_GLOBAL, 0 },
  { "sysreg", SSP_SYSREG, 0 },
  { NULL, 0, 0 }
};

static void
cl_enum_stack_protector_guard_set (void *var, int value)
{
  *((enum stack_protector_guard *) var) = (enum stack_protector_guard) value;
}

static int
cl_enum_stack_protector_guard_get (const void *var)
{
  return (int) *((const enum stack_protector_guard *) var);
}

static const struct cl_enum_arg cl_enum_stack_reuse_level_data[] = 
{
  { "all", SR_ALL, 0 },
  { "named_vars", SR_NAMED_VARS, 0 },
  { "none", SR_NONE, 0 },
  { NULL, 0, 0 }
};

static void
cl_enum_stack_reuse_level_set (void *var, int value)
{
  *((enum stack_reuse_level *) var) = (enum stack_reuse_level) value;
}

static int
cl_enum_stack_reuse_level_get (const void *var)
{
  return (int) *((const enum stack_reuse_level *) var);
}

static const struct cl_enum_arg cl_enum_strong_eval_order_data[] = 
{
  { "all", 2, 0 },
  { "none", 0, 0 },
  { "some", 1, 0 },
  { NULL, 0, 0 }
};

static void
cl_enum_strong_eval_order_set (void *var, int value)
{
  *((int *) var) = (int) value;
}

static int
cl_enum_strong_eval_order_get (const void *var)
{
  return (int) *((const int *) var);
}

static const struct cl_enum_arg cl_enum_sve_vector_bits_data[] = 
{
  { "1024", SVE_1024, 0 },
  { "128", SVE_128, 0 },
  { "2048", SVE_2048, 0 },
  { "256", SVE_256, 0 },
  { "512", SVE_512, 0 },
  { "scalable", SVE_SCALABLE, 0 },
  { NULL, 0, 0 }
};

static void
cl_enum_sve_vector_bits_set (void *var, int value)
{
  *((enum aarch64_sve_vector_bits_enum *) var) = (enum aarch64_sve_vector_bits_enum) value;
}

static int
cl_enum_sve_vector_bits_get (const void *var)
{
  return (int) *((const enum aarch64_sve_vector_bits_enum *) var);
}

static const struct cl_enum_arg cl_enum_symbol_visibility_data[] = 
{
  { "default", VISIBILITY_DEFAULT, 0 },
  { "hidden", VISIBILITY_HIDDEN, 0 },
  { "internal", VISIBILITY_INTERNAL, 0 },
  { "protected", VISIBILITY_PROTECTED, 0 },
  { NULL, 0, 0 }
};

static void
cl_enum_symbol_visibility_set (void *var, int value)
{
  *((enum symbol_visibility *) var) = (enum symbol_visibility) value;
}

static int
cl_enum_symbol_visibility_get (const void *var)
{
  return (int) *((const enum symbol_visibility *) var);
}

static const struct cl_enum_arg cl_enum_tls_model_data[] = 
{
  { "global-dynamic", TLS_MODEL_GLOBAL_DYNAMIC, 0 },
  { "initial-exec", TLS_MODEL_INITIAL_EXEC, 0 },
  { "local-dynamic", TLS_MODEL_LOCAL_DYNAMIC, 0 },
  { "local-exec", TLS_MODEL_LOCAL_EXEC, 0 },
  { NULL, 0, 0 }
};

static void
cl_enum_tls_model_set (void *var, int value)
{
  *((enum tls_model *) var) = (enum tls_model) value;
}

static int
cl_enum_tls_model_get (const void *var)
{
  return (int) *((const enum tls_model *) var);
}

static const struct cl_enum_arg cl_enum_tls_type_data[] = 
{
  { "desc", TLS_DESCRIPTORS, 0 },
  { "trad", TLS_TRADITIONAL, 0 },
  { NULL, 0, 0 }
};

static void
cl_enum_tls_type_set (void *var, int value)
{
  *((enum aarch64_tls_type *) var) = (enum aarch64_tls_type) value;
}

static int
cl_enum_tls_type_get (const void *var)
{
  return (int) *((const enum aarch64_tls_type *) var);
}

static const struct cl_enum_arg cl_enum_vect_cost_model_data[] = 
{
  { "cheap", VECT_COST_MODEL_CHEAP, 0 },
  { "dynamic", VECT_COST_MODEL_DYNAMIC, 0 },
  { "unlimited", VECT_COST_MODEL_UNLIMITED, 0 },
  { NULL, 0, 0 }
};

static void
cl_enum_vect_cost_model_set (void *var, int value)
{
  *((enum vect_cost_model *) var) = (enum vect_cost_model) value;
}

static int
cl_enum_vect_cost_model_get (const void *var)
{
  return (int) *((const enum vect_cost_model *) var);
}

static const struct cl_enum_arg cl_enum_vtv_priority_data[] = 
{
  { "none", VTV_NO_PRIORITY, 0 },
  { "preinit", VTV_PREINIT_PRIORITY, 0 },
  { "std", VTV_STANDARD_PRIORITY, 0 },
  { NULL, 0, 0 }
};

static void
cl_enum_vtv_priority_set (void *var, int value)
{
  *((enum vtv_priority *) var) = (enum vtv_priority) value;
}

static int
cl_enum_vtv_priority_get (const void *var)
{
  return (int) *((const enum vtv_priority *) var);
}

static const struct cl_enum_arg cl_enum_warn_aligned_new_level_data[] = 
{
  { "all", 2, 0 },
  { "global", 1, 0 },
  { "none", 0, 0 },
  { NULL, 0, 0 }
};

static void
cl_enum_warn_aligned_new_level_set (void *var, int value)
{
  *((int *) var) = (int) value;
}

static int
cl_enum_warn_aligned_new_level_get (const void *var)
{
  return (int) *((const int *) var);
}

const struct cl_enum cl_enums[] =
{
  {
    "Known AArch64 ABIs (for use with the -mabi= option):",
    NULL,
    cl_enum_aarch64_abi_data,
    sizeof (int),
    cl_enum_aarch64_abi_set,
    cl_enum_aarch64_abi_get
  },
  {
    "Supported AArch64 return address signing scope (for use with -msign-return-address= option):",
    NULL,
    cl_enum_aarch64_ra_sign_scope_t_data,
    sizeof (enum aarch64_function_type),
    cl_enum_aarch64_ra_sign_scope_t_set,
    cl_enum_aarch64_ra_sign_scope_t_get
  },
  {
    NULL,
    NULL,
    cl_enum_aarch64_tls_size_data,
    sizeof (int),
    cl_enum_aarch64_tls_size_set,
    cl_enum_aarch64_tls_size_get
  },
  {
    NULL,
    "unknown array bounds setting %qs",
    cl_enum_bounds_check_data,
    sizeof (int),
    cl_enum_bounds_check_set,
    cl_enum_bounds_check_get
  },
  {
    NULL,
    "unknown Control-Flow Protection Level %qs",
    cl_enum_cf_protection_level_data,
    sizeof (enum cf_protection_level),
    cl_enum_cf_protection_level_set,
    cl_enum_cf_protection_level_get
  },
  {
    "The code model option names for -mcmodel:",
    NULL,
    cl_enum_cmodel_data,
    sizeof (enum aarch64_code_model),
    cl_enum_cmodel_set,
    cl_enum_cmodel_get
  },
  {
    NULL,
    NULL,
    cl_enum_compressed_debug_sections_data,
    sizeof (int),
    cl_enum_compressed_debug_sections_set,
    cl_enum_compressed_debug_sections_get
  },
  {
    NULL,
    "argument %qs to %<-Wnormalized%> not recognized",
    cl_enum_cpp_normalize_level_data,
    sizeof (int),
    cl_enum_cpp_normalize_level_set,
    cl_enum_cpp_normalize_level_get
  },
  {
    NULL,
    NULL,
    cl_enum_diagnostic_color_rule_data,
    sizeof (int),
    cl_enum_diagnostic_color_rule_set,
    cl_enum_diagnostic_color_rule_get
  },
  {
    NULL,
    NULL,
    cl_enum_diagnostic_prefixing_rule_data,
    sizeof (int),
    cl_enum_diagnostic_prefixing_rule_set,
    cl_enum_diagnostic_prefixing_rule_get
  },
  {
    NULL,
    NULL,
    cl_enum_diagnostics_output_format_data,
    sizeof (int),
    cl_enum_diagnostics_output_format_set,
    cl_enum_diagnostics_output_format_get
  },
  {
    NULL,
    NULL,
    cl_enum_dwarf_gnat_encodings_data,
    sizeof (int),
    cl_enum_dwarf_gnat_encodings_set,
    cl_enum_dwarf_gnat_encodings_get
  },
  {
    NULL,
    "unknown excess precision style %qs",
    cl_enum_excess_precision_data,
    sizeof (enum excess_precision),
    cl_enum_excess_precision_set,
    cl_enum_excess_precision_get
  },
  {
    NULL,
    "unknown floating point contraction style %qs",
    cl_enum_fp_contract_mode_data,
    sizeof (enum fp_contract_mode),
    cl_enum_fp_contract_mode_set,
    cl_enum_fp_contract_mode_get
  },
  {
    NULL,
    "Unrecognized option to endianness value: %qs",
    cl_enum_gfc_convert_data,
    sizeof (enum gfc_convert),
    cl_enum_gfc_convert_set,
    cl_enum_gfc_convert_get
  },
  {
    NULL,
    "Unrecognized option: %qs",
    cl_enum_gfc_fcoarray_data,
    sizeof (enum gfc_fcoarray),
    cl_enum_gfc_fcoarray_set,
    cl_enum_gfc_fcoarray_get
  },
  {
    NULL,
    "Unrecognized option to floating-point init value: %qs",
    cl_enum_gfc_init_local_real_data,
    sizeof (enum gfc_init_local_real),
    cl_enum_gfc_init_local_real_set,
    cl_enum_gfc_init_local_real_get
  },
  {
    NULL,
    "unknown IRA algorithm %qs",
    cl_enum_ira_algorithm_data,
    sizeof (enum ira_algorithm),
    cl_enum_ira_algorithm_set,
    cl_enum_ira_algorithm_get
  },
  {
    NULL,
    "unknown IRA region %qs",
    cl_enum_ira_region_data,
    sizeof (enum ira_region),
    cl_enum_ira_region_set,
    cl_enum_ira_region_get
  },
  {
    NULL,
    "unrecognized ivar visibility value %qs",
    cl_enum_ivar_visibility_data,
    sizeof (enum ivar_visibility),
    cl_enum_ivar_visibility_set,
    cl_enum_ivar_visibility_get
  },
  {
    NULL,
    "unknown Live-Patching Level %qs",
    cl_enum_live_patching_level_data,
    sizeof (enum live_patching_level),
    cl_enum_live_patching_level_set,
    cl_enum_live_patching_level_get
  },
  {
    NULL,
    "unknown linker output %qs",
    cl_enum_lto_linker_output_data,
    sizeof (enum lto_linker_output),
    cl_enum_lto_linker_output_set,
    cl_enum_lto_linker_output_get
  },
  {
    NULL,
    "unknown LTO partitioning model %qs",
    cl_enum_lto_partition_model_data,
    sizeof (enum lto_partition_model),
    cl_enum_lto_partition_model_set,
    cl_enum_lto_partition_model_get
  },
  {
    NULL,
    "unknown offload ABI %qs",
    cl_enum_offload_abi_data,
    sizeof (enum offload_abi),
    cl_enum_offload_abi_set,
    cl_enum_offload_abi_get
  },
  {
    NULL,
    "unknown specification for the set of FLT_EVAL_METHOD values to permit %qs",
    cl_enum_permitted_flt_eval_methods_data,
    sizeof (enum permitted_flt_eval_methods),
    cl_enum_permitted_flt_eval_methods_set,
    cl_enum_permitted_flt_eval_methods_get
  },
  {
    NULL,
    "unknown profile update method %qs",
    cl_enum_profile_update_data,
    sizeof (enum profile_update),
    cl_enum_profile_update_set,
    cl_enum_profile_update_get
  },
  {
    NULL,
    "unknown basic block reordering algorithm %qs",
    cl_enum_reorder_blocks_algorithm_data,
    sizeof (enum reorder_blocks_algorithm),
    cl_enum_reorder_blocks_algorithm_set,
    cl_enum_reorder_blocks_algorithm_get
  },
  {
    NULL,
    "unrecognized scalar storage order value %qs",
    cl_enum_sso_struct_data,
    sizeof (enum scalar_storage_order_kind),
    cl_enum_sso_struct_set,
    cl_enum_sso_struct_get
  },
  {
    "Valid arguments to -mstack-protector-guard=:",
    NULL,
    cl_enum_stack_protector_guard_data,
    sizeof (enum stack_protector_guard),
    cl_enum_stack_protector_guard_set,
    cl_enum_stack_protector_guard_get
  },
  {
    NULL,
    "unknown Stack Reuse Level %qs",
    cl_enum_stack_reuse_level_data,
    sizeof (enum stack_reuse_level),
    cl_enum_stack_reuse_level_set,
    cl_enum_stack_reuse_level_get
  },
  {
    NULL,
    NULL,
    cl_enum_strong_eval_order_data,
    sizeof (int),
    cl_enum_strong_eval_order_set,
    cl_enum_strong_eval_order_get
  },
  {
    "The possible SVE vector lengths:",
    NULL,
    cl_enum_sve_vector_bits_data,
    sizeof (enum aarch64_sve_vector_bits_enum),
    cl_enum_sve_vector_bits_set,
    cl_enum_sve_vector_bits_get
  },
  {
    NULL,
    "unrecognized visibility value %qs",
    cl_enum_symbol_visibility_data,
    sizeof (enum symbol_visibility),
    cl_enum_symbol_visibility_set,
    cl_enum_symbol_visibility_get
  },
  {
    NULL,
    "unknown TLS model %qs",
    cl_enum_tls_model_data,
    sizeof (enum tls_model),
    cl_enum_tls_model_set,
    cl_enum_tls_model_get
  },
  {
    "The possible TLS dialects:",
    NULL,
    cl_enum_tls_type_data,
    sizeof (enum aarch64_tls_type),
    cl_enum_tls_type_set,
    cl_enum_tls_type_get
  },
  {
    NULL,
    "unknown vectorizer cost model %qs",
    cl_enum_vect_cost_model_data,
    sizeof (enum vect_cost_model),
    cl_enum_vect_cost_model_set,
    cl_enum_vect_cost_model_get
  },
  {
    NULL,
    "unknown vtable verify initialization priority %qs",
    cl_enum_vtv_priority_data,
    sizeof (enum vtv_priority),
    cl_enum_vtv_priority_set,
    cl_enum_vtv_priority_get
  },
  {
    NULL,
    "argument %qs to %<-Waligned-new%> not recognized",
    cl_enum_warn_aligned_new_level_data,
    sizeof (int),
    cl_enum_warn_aligned_new_level_set,
    cl_enum_warn_aligned_new_level_get
  },
};
const unsigned int cl_enums_count = 38;

const struct gcc_options global_options_init =
{
  aarch64_no_arch, /* explicit_arch */
  aarch64_none, /* explicit_tune_core */
  0, /* aarch64_stack_protector_guard_offset */
  2, /* aarch64_enable_bti */
  0, /* aarch64_isa_flags */
  0, /* function_entry_patch_area_size */
  0, /* function_entry_patch_area_start */
  false, /* dump_base_name_prefixed */
  0, /* exit_after_options */
  false, /* flag_disable_hsa */
  0, /* flag_dump_all_passed */
  0, /* flag_opts_finished */
  false, /* flag_stack_usage_info */
  false, /* flag_warn_unused_result */
  false, /* in_lto_p */
  0, /* use_gnu_debug_info_extensions */
  0, /* help_enum_printed */
  0, /* help_printed */
  0, /* main_input_basename */
  0, /* main_input_filename */
  DINFO_LEVEL_NONE, /* debug_info_level */
  NO_DEBUG, /* write_symbols */
  { DINFO_STRUCT_FILE_ANY, DINFO_STRUCT_FILE_ANY, DINFO_STRUCT_FILE_ANY }, /* debug_struct_generic */
  { DINFO_STRUCT_FILE_ANY, DINFO_STRUCT_FILE_ANY, DINFO_STRUCT_FILE_ANY }, /* debug_struct_ordinary */
  DWARF_GNAT_ENCODINGS_DEFAULT, /* gnat_encodings */
  INCREMENTAL_LINK_NONE, /* flag_incremental_link */
  NO_STACK_CHECK, /* flag_stack_check */
  0, /* param_values */
  1, /* flag_complex_method */
  0, /* flag_debug_asm */
  0, /* flag_dump_rtl_in_asm */
  0, /* flag_gen_aux_info */
  0, /* flag_generate_lto */
  0, /* flag_generate_offload */
  0, /* flag_print_asm_name */
  0, /* flag_shlib */
  0, /* main_input_baselength */
  0, /* optimize */
  0, /* optimize_debug */
  0, /* optimize_fast */
  0, /* optimize_size */
  0, /* rtl_dump_and_exit */
  0, /* target_flags */
  0, /* flag_sanitize */
  0, /* flag_sanitize_coverage */
  (SANITIZE_UNDEFINED | SANITIZE_UNDEFINED_NONDEFAULT | SANITIZE_KERNEL_ADDRESS) & ~(SANITIZE_UNREACHABLE | SANITIZE_RETURN), /* flag_sanitize_recover */
  0, /* help_columns */
  TARGET_DEFAULT_PACK_STRUCT, /* initial_max_fld_align */
  0, /* flag_instrument_functions_exclude_files */
  0, /* flag_instrument_functions_exclude_functions */
  0, /* help_flag */
  0, /* no_sysroot_suffix */
  0, /* flag_preprocess_only */
  0, /* warn_abi */
  0, /* warn_abi_tag */
  0, /* warn_absolute_value */
  0, /* warn_address */
  1, /* warn_address_of_packed_member */
  0, /* warn_aggregate_return */
  1, /* warn_aggressive_loop_optimizations */
  0, /* warn_aliasing */
  1, /* warn_align_commons */
  0, /* warn_aligned_new */
  HOST_WIDE_INT_MAX, /* warn_alloc_size_limit */
  0, /* warn_alloc_zero */
  0, /* warn_alloca */
  HOST_WIDE_INT_MAX, /* warn_alloca_limit */
  0, /* warn_ampersand */
  1, /* warn_argument_mismatch */
  0, /* warn_array_bounds */
  0, /* warn_array_temporaries */
  0, /* warn_assign_intercept */
  1, /* warn_attribute_alias */
  1, /* warn_attribute_warning */
  1, /* warn_attributes */
  0, /* warn_bad_function_cast */
  0, /* warn_bool_compare */
  0, /* warn_bool_op */
  1, /* warn_builtin_declaraion_mismatch */
  1, /* cpp_warn_builtin_macro_redefined */
  0, /* warn_cxx_compat */
  0, /* warn_cxx11_compat */
  0, /* warn_cxx14_compat */
  0, /* warn_cxx17_compat */
  0, /* warn_c_binding_type */
  -1, /* warn_c11_c2x_compat */
  -1, /* warn_c90_c99_compat */
  -1, /* warn_c99_c11_compat */
  1, /* warn_cannot_profile */
  0, /* warn_cast_align */
  0, /* warn_cast_function_type */
  0, /* warn_cast_qual */
  0, /* warn_cast_result */
  0, /* warn_catch_value */
  0, /* warn_char_subscripts */
  0, /* warn_character_truncation */
  1, /* warn_class_conversion */
  0, /* warn_class_memaccess */
  0, /* warn_clobbered */
  0, /* cpp_warn_comment */
  0, /* warn_compare_reals */
  0, /* warn_conditionally_supported */
  0, /* warn_conversion */
  0, /* warn_conversion_extra */
  1, /* warn_conversion_null */
  1, /* warn_coverage_mismatch */
  1, /* warn_cpp */
  0, /* warn_ctor_dtor_privacy */
  0, /* warn_dangling_else */
  0, /* cpp_warn_date_time */
  -1, /* warn_declaration_after_statement */
  1, /* warn_delete_incomplete */
  0, /* warn_delnonvdtor */
  1, /* warn_deprecated */
  0, /* warn_deprecated_copy */
  1, /* warn_deprecated_decl */
  1, /* warn_designated_init */
  0, /* warn_disabled_optimization */
  1, /* warn_discarded_array_qualifiers */
  1, /* warn_discarded_qualifiers */
  1, /* warn_div_by_zero */
  0, /* warn_do_subscript */
  0, /* warn_double_promotion */
  0, /* warn_duplicate_decl_specifier */
  0, /* warn_duplicated_branches */
  0, /* warn_duplicated_cond */
  0, /* warn_ecpp */
  0, /* warn_empty_body */
  1, /* cpp_warn_endif_labels */
  -1, /* warn_enum_compare */
  0, /* warnings_are_errors */
  0, /* cpp_warn_expansion_to_defined */
  0, /* extra_warnings */
  0, /* warn_extra_semi */
  0, /* flag_fatal_errors */
  0, /* warn_float_conversion */
  0, /* warn_float_equal */
  0, /* warn_format_contains_nul */
  0, /* warn_format_extra_args */
  0, /* warn_format_nonliteral */
  0, /* warn_format_overflow */
  0, /* warn_format_security */
  0, /* warn_format_signedness */
  0, /* warn_format_trunc */
  0, /* warn_format_y2k */
  0, /* warn_format_zero_length */
  0, /* warn_format */
  0, /* warn_frame_address */
  HOST_WIDE_INT_MAX, /* warn_frame_larger_than_size */
  1, /* warn_free_nonheap_object */
  0, /* flag_warn_frontend_loop_interchange */
  0, /* warn_function_elimination */
  1, /* warn_hsa */
  1, /* warn_if_not_aligned */
  1, /* warn_ignored_attributes */
  0, /* warn_ignored_qualifiers */
  0, /* warn_implicit */
  0, /* warn_implicit_fallthrough */
  -1, /* warn_implicit_function_declaration */
  -1, /* warn_implicit_int */
  0, /* warn_implicit_interface */
  0, /* warn_implicit_procedure */
  1, /* warn_incompatible_pointer_types */
  1, /* warn_inh_var_ctor */
  1, /* warn_init_list */
  0, /* warn_init_self */
  0, /* warn_inline */
  1, /* warn_int_conversion */
  0, /* warn_int_in_bool_context */
  1, /* warn_int_to_pointer_cast */
  0, /* warn_integer_division */
  0, /* warn_intrinsic_shadow */
  0, /* warn_intrinsics_std */
  1, /* warn_invalid_memory_model */
  1, /* warn_invalid_offsetof */
  0, /* cpp_warn_invalid_pch */
  0, /* warn_jump_misses_init */
  HOST_WIDE_INT_MAX, /* warn_larger_than_size */
  -1, /* warn_line_truncation */
  1, /* cpp_warn_literal_suffix */
  0, /* warn_logical_not_paren */
  0, /* warn_logical_op */
  -1, /* warn_long_long */
  1, /* warn_lto_type_mismatch */
  -1, /* warn_main */
  0, /* warn_maybe_uninitialized */
  0, /* warn_memset_elt_size */
  0, /* warn_memset_transposed_args */
  0, /* warn_misleading_indentation */
  0, /* warn_missing_attributes */
  0, /* warn_missing_braces */
  0, /* warn_missing_declarations */
  0, /* warn_missing_field_initializers */
  0, /* cpp_warn_missing_include_dirs */
  0, /* warn_missing_parameter_type */
  1, /* warn_missing_profile */
  0, /* warn_missing_prototypes */
  0, /* cpp_warn_multichar */
  0, /* warn_multiple_inheritance */
  0, /* warn_multistatement_macros */
  0, /* warn_namespaces */
  -1, /* warn_narrowing */
  0, /* warn_nested_externs */
  0, /* warn_noexcept */
  0, /* warn_noexcept_type */
  1, /* warn_nontemplate_friend */
  0, /* warn_nonvdtor */
  0, /* warn_nonnull */
  0, /* warn_nonnull_compare */
  normalized_C, /* cpp_warn_normalize */
  0, /* warn_null_dereference */
  1, /* warn_odr_violations */
  0, /* warn_old_style_cast */
  0, /* warn_old_style_declaration */
  0, /* warn_old_style_definition */
  0, /* warn_openmp_simd */
  1, /* warn_overflow */
  0, /* warn_overlength_strings */
  0, /* warn_overloaded_virtual */
  0, /* warn_override_init */
  1, /* warn_override_init_side_effects */
  0, /* warn_packed */
  -1, /* warn_packed_bitfield_compat */
  0, /* warn_packed_not_aligned */
  0, /* warn_padded */
  0, /* warn_parentheses */
  0, /* pedantic */
  0, /* warn_pessimizing_move */
  -1, /* warn_placement_new */
  1, /* warn_pmf2ptr */
  0, /* warn_pointer_arith */
  1, /* warn_pointer_compare */
  0, /* warn_pointer_sign */
  1, /* warn_pointer_to_int_cast */
  1, /* flag_poison_system_directories */
  1, /* warn_pragmas */
  1, /* warn_prio_ctor_dtor */
  1, /* warn_property_assign_default */
  1, /* warn_protocol */
  1, /* warn_psabi */
  0, /* warn_real_q_constant */
  0, /* warn_realloc_lhs */
  0, /* warn_realloc_lhs_all */
  0, /* warn_redundant_decls */
  0, /* warn_redundant_move */
  0, /* warn_register */
  0, /* warn_reorder */
  0, /* warn_restrict */
  1, /* warn_return_local_addr */
  -1, /* warn_return_type */
  0, /* warn_selector */
  0, /* warn_sequence_point */
  0, /* warn_shadow */
  1, /* warn_shadow_ivar */
  0, /* warn_shadow_compatible_local */
  0, /* warn_shadow_local */
  1, /* warn_shift_count_negative */
  1, /* warn_shift_count_overflow */
  -1, /* warn_shift_negative_value */
  -1, /* warn_shift_overflow */
  0, /* warn_sign_compare */
  0, /* warn_sign_conversion */
  0, /* warn_sign_promo */
  0, /* warn_sized_deallocation */
  1, /* warn_sizeof_array_argument */
  0, /* warn_sizeof_pointer_div */
  0, /* warn_sizeof_pointer_memaccess */
  0, /* warn_stack_protect */
  HOST_WIDE_INT_MAX, /* warn_stack_usage */
  0, /* warn_strict_aliasing */
  0, /* warn_strict_null_sentinel */
  0, /* warn_strict_overflow */
  0, /* warn_strict_prototypes */
  0, /* warn_strict_selector_match */
  2, /* warn_stringop_overflow */
  0, /* warn_stringop_truncation */
  1, /* warn_subobject_linkage */
  0, /* warn_suggest_attribute_cold */
  0, /* warn_suggest_attribute_const */
  0, /* warn_suggest_attribute_format */
  0, /* warn_suggest_attribute_malloc */
  0, /* warn_suggest_attribute_noreturn */
  0, /* warn_suggest_attribute_pure */
  0, /* warn_suggest_final_methods */
  0, /* warn_suggest_final_types */
  0, /* warn_override */
  0, /* warn_surprising */
  0, /* warn_switch */
  1, /* warn_switch_bool */
  0, /* warn_switch_default */
  0, /* warn_switch_enum */
  1, /* warn_switch_unreachable */
  1, /* warn_sync_nand */
  0, /* warn_synth */
  0, /* warn_system_headers */
  0, /* warn_tabs */
  0, /* warn_target_lifetime */
  0, /* warn_tautological_compare */
  0, /* warn_templates */
  1, /* warn_terminate */
  0, /* warn_traditional */
  0, /* warn_traditional_conversion */
  0, /* warn_trampolines */
  2, /* cpp_warn_trigraphs */
  0, /* warn_type_limits */
  0, /* warn_undeclared_selector */
  0, /* cpp_warn_undef */
  0, /* warn_undefined_do_loop */
  1, /* warn_underflow */
  0, /* warn_uninitialized */
  0, /* warn_unknown_pragmas */
  0, /* warn_unsuffixed_float_constants */
  0, /* warn_unused */
  0, /* warn_unused_but_set_parameter */
  0, /* warn_unused_but_set_variable */
  0, /* warn_unused_const_variable */
  0, /* warn_unused_dummy_argument */
  0, /* warn_unused_function */
  0, /* warn_unused_label */
  0, /* warn_unused_local_typedefs */
  0, /* cpp_warn_unused_macros */
  0, /* warn_unused_parameter */
  1, /* warn_unused_result */
  0, /* warn_unused_value */
  0, /* warn_unused_variable */
  0, /* warn_use_without_only */
  0, /* warn_useless_cast */
  1, /* warn_varargs */
  0, /* cpp_warn_variadic_macros */
  0, /* warn_vector_operation_performance */
  0, /* warn_virtual_inheritance */
  1, /* warn_virtual_move_assign */
  -1, /* warn_vla */
  HOST_WIDE_INT_MAX, /* warn_vla_limit */
  0, /* warn_volatile_register_var */
  0, /* warn_write_strings */
  0, /* warn_zero_as_null_pointer_constant */
  0, /* warn_zerotrip */
  0, /* aux_info_file_name */
  0, /* aux_base_name */
  0, /* dump_base_name */
  0, /* dump_dir_name */
  -1, /* flag_pic */
  -1, /* flag_pie */
  -1, /* flag_abi_compat_version */
  0, /* flag_abi_version */
  1, /* flag_access_control */
  0, /* ada_specs_parent */
  0, /* flag_aggressive_function_elimination */
  1, /* flag_aggressive_loop_optimizations */
  1, /* flag_align_commons */
  0, /* flag_align_functions */
  0, /* str_align_functions */
  0, /* flag_align_jumps */
  0, /* str_align_jumps */
  0, /* flag_align_labels */
  0, /* str_align_labels */
  0, /* flag_align_loops */
  0, /* str_align_loops */
  -1, /* aligned_new_threshold */
  0, /* flag_all_intrinsics */
  0, /* flag_allow_leading_underscore */
  0, /* flag_allow_parameterless_variadic_functions */
  0, /* common_deferred_options */
  0, /* flag_no_asm */
  0, /* flag_assert */
  0, /* flag_associative_math */
  1, /* flag_assume_phsa */
  0, /* flag_asynchronous_unwind_tables */
  1, /* flag_auto_inc_dec */
  0, /* flag_auto_profile */
  0, /* auto_profile_file */
  1, /* flag_automatic */
  0, /* flag_backslash */
  1, /* flag_backtrace */
  30, /* flag_blas_matmul_limit */
  0, /* flag_bounds_check */
  0, /* flag_branch_on_count_reg */
  0, /* flag_branch_probabilities */
  0, /* flag_branch_target_load_optimize */
  0, /* flag_branch_target_load_optimize2 */
  0, /* flag_btr_bb_exclusive */
  0, /* flag_building_libgcc */
  0, /* flag_building_libphobos_tests */
  0, /* flag_no_builtin */
  0, /* flag_c_prototypes */
  0, /* flag_c_prototypes_external */
  0, /* flag_caller_saves */
  CF_NONE, /* flag_cf_protection */
  -1, /* flag_char8_t */
  0, /* flag_check_new */
  CHECKING_P ? ENABLE_EXTRA_CHECKING ? 2 : 1 : 0, /* flag_checking */
  GFC_FCOARRAY_NONE, /* flag_coarray */
  0, /* flag_code_hoisting */
  0, /* flag_combine_stack_adjustments */
  0, /* flag_no_common */
  0, /* flag_compare_debug */
  0, /* flag_compare_debug_opt */
  0, /* flag_compare_elim_after_reload */
  0, /* flag_concepts */
  0, /* flag_conserve_stack */
  512, /* max_constexpr_depth */
  262144, /* constexpr_loop_limit */
  33554432, /* constexpr_ops_limit */
  GFC_FLAG_CONVERT_NATIVE, /* flag_convert */
  0, /* flag_cprop_registers */
  0, /* flag_cray_pointer */
  0, /* flag_crossjumping */
  0, /* flag_cse_follow_jumps */
  0, /* flag_cx_fortran_rules */
  0, /* flag_cx_limited_range */
  0, /* flag_data_sections */
  1, /* flag_dce */
  0, /* flag_debug_types_section */
  0, /* flag_dec */
  0, /* flag_dec_include */
  0, /* flag_dec_intrinsic_ints */
  0, /* flag_dec_math */
  0, /* flag_dec_static */
  0, /* flag_dec_structure */
  -1, /* flag_declone_ctor_dtor */
  0, /* flag_deduce_init_list */
  0, /* flag_default_double */
  0, /* flag_default_integer */
  0, /* flag_default_real_10 */
  0, /* flag_default_real_16 */
  0, /* flag_default_real_8 */
  0, /* flag_defer_pop */
  0, /* flag_delayed_branch */
  0, /* flag_delete_dead_exceptions */
  -1, /* flag_delete_null_pointer_checks */
  0, /* flag_devirtualize */
  0, /* flag_ltrans_devirtualize */
  0, /* flag_devirtualize_speculatively */
  DIAGNOSTICS_COLOR_NO, /* flag_diagnostics_show_color */
  0, /* flag_diagnostics_generate_patch */
  6, /* diagnostics_minimum_margin_width */
  0, /* flag_diagnostics_parseable_fixits */
  1, /* flag_diagnostics_show_caret */
  1, /* flag_diagnostics_show_labels */
  1, /* flag_diagnostics_show_line_numbers */
  1, /* flag_diagnostics_show_option */
  0, /* flag_diagnostics_show_template_tree */
  0, /* flag_dollar_ok */
  1, /* flag_dse */
  0, /* flag_dump_ada_spec */
  0, /* flag_dump_ada_spec_slim */
  0, /* flag_dump_final_insns */
  0, /* flag_dump_fortran_global */
  0, /* flag_dump_fortran_optimized */
  0, /* flag_dump_fortran_original */
  0, /* flag_dump_go_spec */
  0, /* flag_dump_locations */
  0, /* flag_dump_noaddr */
  0, /* flag_dump_passes */
  0, /* flag_dump_unnumbered */
  0, /* flag_dump_unnumbered_links */
  HAVE_GAS_CFI_DIRECTIVE, /* flag_dwarf2_cfi_asm */
  1, /* flag_early_inlining */
  1, /* flag_elide_constructors */
  1, /* flag_elide_type */
  0, /* flag_debug_only_used_symbols */
  1, /* flag_eliminate_unused_debug_types */
  0, /* flag_emit_class_debug_always */
  1, /* flag_enforce_eh_specs */
  0, /* flag_exceptions */
  EXCESS_PRECISION_DEFAULT, /* flag_excess_precision_cmdline */
  0, /* flag_expensive_optimizations */
  1, /* flag_ext_numeric_literals */
  -1, /* flag_extern_tls_init */
  0, /* flag_external_blas */
  0, /* flag_f2c */
  0, /* flag_fat_lto_objects */
  0, /* flag_finite_math_only */
  72, /* flag_fixed_line_length */
  0, /* flag_float_store */
  0, /* flag_forward_propagate */
  FP_CONTRACT_FAST, /* flag_fp_contract_mode */
  1, /* flag_fp_int_builtin_inexact */
  132, /* flag_free_line_length */
  -1, /* flag_frontend_loop_interchange */
  -1, /* flag_frontend_optimize */
  0, /* flag_no_function_cse */
  0, /* flag_function_sections */
  0, /* flag_gcse */
  0, /* flag_gcse_after_reload */
  0, /* flag_gcse_las */
  1, /* flag_gcse_lm */
  0, /* flag_gcse_sm */
  0, /* flag_gimple */
  0, /* flag_no_gnu_keywords */
  NEXT_OBJC_RUNTIME, /* flag_next_runtime */
  0, /* flag_tm */
  1, /* flag_gnu_unique */
  -1, /* flag_gnu89_inline */
  1, /* go_check_divide_overflow */
  1, /* go_check_divide_zero */
  0, /* go_compiling_runtime */
  0, /* go_debug_escape_level */
  0, /* go_debug_escape_hash */
  0, /* flag_graphite */
  0, /* flag_graphite_identity */
  0, /* flag_guess_branch_prob */
  0, /* flag_hoist_adjacent_loads */
  0, /* flag_no_ident */
  0, /* flag_if_conversion */
  0, /* flag_if_conversion2 */
  1, /* flag_implement_inlines */
  1, /* flag_implicit_inline_templates */
  0, /* flag_implicit_none */
  1, /* flag_implicit_templates */
  0, /* flag_indirect_inlining */
  0, /* flag_inhibit_size_directive */
  0, /* flag_init_derived */
  GFC_INIT_REAL_OFF, /* flag_init_real */
  0, /* flag_no_inline */
  1, /* flag_inline_atomics */
  0, /* flag_inline_functions */
  0, /* flag_inline_functions_called_once */
  -1, /* flag_inline_matmul_limit */
  0, /* flag_inline_small_functions */
  0, /* flag_instrument_function_entry_exit */
  0, /* flag_integer4_kind */
  0, /* flag_invariants */
  0, /* flag_ipa_bit_cp */
  0, /* flag_ipa_cp */
  0, /* flag_ipa_cp_clone */
  0, /* flag_ipa_icf */
  0, /* flag_ipa_icf_functions */
  0, /* flag_ipa_icf_variables */
  0, /* flag_ipa_profile */
  0, /* flag_ipa_pta */
  0, /* flag_ipa_pure_const */
  0, /* flag_ipa_ra */
  0, /* flag_ipa_reference */
  0, /* flag_ipa_reference_addressable */
  0, /* flag_ipa_sra */
  1, /* flag_ipa_stack_alignment */
  0, /* flag_ipa_vrp */
  IRA_ALGORITHM_CB, /* flag_ira_algorithm */
  1, /* flag_ira_hoist_pressure */
  0, /* flag_ira_loop_pressure */
  IRA_REGION_AUTODETECT, /* flag_ira_region */
  1, /* flag_ira_share_save_slots */
  1, /* flag_ira_share_spill_slots */
  5, /* flag_ira_verbose */
  0, /* flag_isolate_erroneous_paths_attribute */
  0, /* flag_isolate_erroneous_paths_dereference */
  IVAR_VISIBILITY_PROTECTED, /* default_ivar_visibility */
  1, /* flag_ivopts */
  1, /* flag_jump_tables */
  0, /* flag_keep_gc_roots_live */
  1, /* flag_keep_inline_dllexport */
  0, /* flag_keep_inline_functions */
  1, /* flag_keep_static_consts */
  0, /* flag_keep_static_functions */
  0, /* flag_lax_vector_conversions */
  -1, /* flag_leading_underscore */
  2, /* flag_lifetime_dse */
  0, /* flag_limit_function_alignment */
  LTO_LINKER_OUTPUT_UNKNOWN, /* flag_lto_linker_output */
  LIVE_PATCHING_NONE, /* flag_live_patching */
  0, /* flag_live_range_shrinkage */
  1, /* flag_local_ivars */
  0, /* flag_loop_interchange */
  0, /* flag_loop_nest_optimize */
  0, /* flag_loop_parallelize_all */
  0, /* flag_unroll_jam */
  0, /* flag_lra_remat */
  -1, /* flag_lto_compression_level */
  1, /* flag_lto_odr_type_mering */
  LTO_PARTITION_BALANCED, /* flag_lto_partition */
  0, /* flag_lto_report */
  0, /* flag_lto_report_wpa */
  0, /* flag_lto */
  0, /* flag_ltrans */
  0, /* ltrans_output_list */
  1, /* flag_errno_math */
  65535, /* flag_max_array_constructor */
  0, /* flag_max_errors */
  -2, /* flag_max_stack_var_size */
  0, /* flag_max_subrecord_length */
  0, /* mem_report */
  0, /* mem_report_wpa */
  1, /* flag_merge_constants */
  1, /* flag_merge_debug_strings */
  0, /* flag_module_private */
  0, /* flag_moduleinfo */
  0, /* flag_modulo_sched */
  0, /* flag_modulo_sched_allow_regmoves */
  0, /* flag_move_loop_invariants */
  0, /* flag_ms_extensions */
  1, /* flag_new_inheriting_ctors */
  0, /* flag_new_ttp */
  1, /* flag_nil_receivers */
  0, /* flag_non_call_exceptions */
  0, /* flag_no_nonansi_builtin */
  0, /* flag_nothrow_opt */
  0, /* flag_objc_abi */
  0, /* flag_objc_call_cxx_cdtors */
  0, /* flag_objc_direct_dispatch */
  0, /* flag_objc_exceptions */
  0, /* flag_objc_gc */
  0, /* flag_objc_nilcheck */
  -1, /* flag_objc_sjlj_exceptions */
  0, /* flag_objc1_only */
  OFFLOAD_ABI_UNSET, /* flag_offload_abi */
  0, /* flag_omit_frame_pointer */
  0, /* flag_openacc */
  0, /* flag_openacc_dims */
  0, /* flag_openmp */
  0, /* flag_openmp_simd */
  0, /* flag_opt_info */
  0, /* flag_optimize_sibling_calls */
  0, /* flag_optimize_strlen */
  0, /* flag_pack_derived */
  0, /* flag_pack_struct */
  1, /* flag_pad_source */
  0, /* flag_partial_inlining */
  DEFAULT_PCC_STRUCT_RETURN, /* flag_pcc_struct_return */
  0, /* flag_peel_loops */
  0, /* flag_no_peephole */
  0, /* flag_peephole2 */
  0, /* flag_permissive */
  PERMITTED_FLT_EVAL_METHODS_DEFAULT, /* flag_permitted_flt_eval_methods */
  0, /* flag_plan9_extensions */
  1, /* flag_plt */
  0, /* post_ipa_mem_report */
  0, /* flag_postconditions */
  0, /* flag_pre_include */
  0, /* pre_ipa_mem_report */
  0, /* flag_preconditions */
  0, /* flag_predictive_commoning */
  -1, /* flag_prefetch_loop_arrays */
  1, /* flag_pretty_templates */
  1, /* flag_printf_return_value */
  0, /* profile_flag */
  0, /* profile_abs_path_flag */
  0, /* profile_arc_flag */
  0, /* flag_profile_correction */
  0, /* profile_data_prefix */
  0, /* flag_profile_exclude_files */
  0, /* flag_profile_filter_files */
  0, /* flag_profile_reorder_functions */
  0, /* profile_report */
  PROFILE_UPDATE_SINGLE, /* flag_profile_update */
  0, /* flag_profile_use */
  0, /* flag_profile_values */
  -1, /* flag_protect_parens */
  1, /* flag_range_check */
  0, /* flag_real4_kind */
  0, /* flag_real8_kind */
  -1, /* flag_realloc_lhs */
  0, /* flag_reciprocal_math */
  0, /* flag_record_gcc_switches */
  0, /* flag_record_marker */
  0, /* flag_recursive */
  0, /* flag_ree */
  2, /* flag_rename_registers */
  0, /* flag_reorder_blocks */
  REORDER_BLOCKS_ALGORITHM_SIMPLE, /* flag_reorder_blocks_algorithm */
  0, /* flag_reorder_blocks_and_partition */
  0, /* flag_reorder_functions */
  0, /* flag_repack_arrays */
  0, /* flag_replace_objc_classes */
  0, /* flag_report_bug */
  1, /* go_require_return_statement */
  0, /* flag_rerun_cse_after_loop */
  0, /* flag_resched_modulo_sched */
  0, /* flag_rounding_math */
  1, /* flag_rtti */
  0, /* flag_sanitize_address_use_after_scope */
  0, /* flag_sanitize_undefined_trap_on_error */
  0, /* flag_save_optimization_record */
  1, /* flag_sched_critical_path_heuristic */
  1, /* flag_sched_dep_count_heuristic */
  1, /* flag_sched_group_heuristic */
  1, /* flag_schedule_interblock */
  1, /* flag_sched_last_insn_heuristic */
  0, /* flag_sched_pressure */
  1, /* flag_sched_rank_heuristic */
  1, /* flag_schedule_speculative */
  1, /* flag_sched_spec_insn_heuristic */
  0, /* flag_schedule_speculative_load */
  0, /* flag_schedule_speculative_load_dangerous */
  0, /* flag_sched_stalled_insns */
  1, /* flag_sched_stalled_insns_dep */
  1, /* sched_verbose_param */
  0, /* flag_sched2_use_superblocks */
  2, /* flag_schedule_fusion */
  0, /* flag_schedule_insns */
  0, /* flag_schedule_insns_after_reload */
  -1, /* flag_second_underscore */
  0, /* flag_section_anchors */
  0, /* flag_sel_sched_pipelining */
  0, /* flag_sel_sched_pipelining_outer_loops */
  0, /* flag_sel_sched_reschedule_pipelined */
  0, /* flag_selective_scheduling */
  0, /* flag_selective_scheduling2 */
  0, /* flag_self_test */
  1, /* flag_semantic_interposition */
  0, /* flag_short_enums */
  0, /* flag_short_wchar */
  1, /* flag_show_column */
  0, /* flag_shrink_wrap */
  1, /* flag_shrink_wrap_separate */
  1, /* flag_sign_zero */
  0, /* flag_signaling_nans */
  1, /* flag_signed_bitfields */
  0, /* flag_signed_char */
  1, /* flag_signed_zeros */
  VECT_COST_MODEL_UNLIMITED, /* flag_simd_cost_model */
  0, /* flag_single_precision_constant */
  -1, /* flag_sized_deallocation */
  1, /* flag_split_ivs_in_unroller */
  0, /* flag_split_loops */
  0, /* flag_split_paths */
  -1, /* flag_split_stack */
  0, /* flag_split_wide_types */
  1, /* flag_ssa_backprop */
  0, /* flag_ssa_phiopt */
  SSO_NATIVE, /* default_sso */
  -1, /* flag_stack_arrays */
  0, /* flag_stack_clash_protection */
  -1, /* flag_stack_protect */
  SR_ALL, /* flag_stack_reuse */
  0, /* flag_stack_usage */
  0, /* flag_detailed_statistics */
  1, /* flag_stdarg_opt */
  0, /* flag_store_merging */
  0, /* flag_strict_aliasing */
  0, /* flag_strict_enums */
  -1, /* flag_strict_volatile_bitfields */
  -1, /* flag_strong_eval_order */
  0, /* flag_switch_errors */
  1, /* flag_sync_libcalls */
  0, /* flag_syntax_only */
  1, /* flag_tail_call_workaround */
  10, /* template_backtrace_limit */
  0, /* flag_test_coverage */
  0, /* flag_test_forall_temp */
  0, /* flag_thread_jumps */
  1, /* flag_threadsafe_statics */
  0, /* time_report */
  0, /* time_report_details */
  TLS_MODEL_GLOBAL_DYNAMIC, /* flag_tls_default */
  2, /* flag_toplevel_reorder */
  0, /* flag_tracer */
  0, /* flag_trampolines */
  1, /* flag_trapping_math */
  0, /* flag_trapv */
  0, /* flag_tree_bit_ccp */
  0, /* flag_tree_builtin_call_dce */
  0, /* flag_tree_ccp */
  0, /* flag_tree_ch */
  0, /* flag_tree_coalesce_vars */
  0, /* flag_tree_copy_prop */
  2, /* flag_tree_cselim */
  0, /* flag_tree_dce */
  0, /* flag_tree_dom */
  0, /* flag_tree_dse */
  1, /* flag_tree_forwprop */
  0, /* flag_tree_fre */
  0, /* flag_tree_loop_distribute_patterns */
  0, /* flag_tree_loop_distribution */
  -1, /* flag_tree_loop_if_convert */
  1, /* flag_tree_loop_im */
  1, /* flag_tree_loop_ivcanon */
  1, /* flag_tree_loop_optimize */
  0, /* flag_tree_loop_vectorize */
  0, /* flag_tree_live_range_split */
  1, /* flag_tree_parallelize_loops */
  0, /* flag_tree_partial_pre */
  1, /* flag_tree_phiprop */
  0, /* flag_tree_pre */
  0, /* flag_tree_pta */
  1, /* flag_tree_reassoc */
  1, /* flag_tree_scev_cprop */
  0, /* flag_tree_sink */
  0, /* flag_tree_slp_vectorize */
  0, /* flag_tree_slsr */
  0, /* flag_tree_sra */
  0, /* flag_tree_switch_conversion */
  0, /* flag_tree_tail_merge */
  0, /* flag_tree_ter */
  0, /* flag_tree_vrp */
  0, /* flag_unconstrained_commons */
  1, /* flag_underscoring */
  1, /* flag_unit_at_a_time */
  0, /* flag_unroll_all_loops */
  0, /* flag_unroll_loops */
  0, /* flag_unsafe_math_optimizations */
  0, /* flag_unswitch_loops */
  0, /* flag_unwind_tables */
  DEFAULT_USE_CXA_ATEXIT, /* flag_use_cxa_atexit */
  2, /* flag_use_cxa_get_exception_ptr */
  0, /* flag_use_linker_plugin */
  2, /* flag_var_tracking */
  2, /* flag_var_tracking_assignments */
  0, /* flag_var_tracking_assignments_toggle */
  0, /* flag_var_tracking_uninit */
  0, /* flag_variable_expansion_in_unroller */
  VECT_COST_MODEL_DEFAULT, /* flag_vect_cost_model */
  0, /* flag_verbose_asm */
  0, /* flag_version_loops_for_strides */
  0, /* flag_visibility_ms_compat */
  VISIBILITY_DEFAULT, /* default_visibility */
  0, /* flag_value_profile_transformations */
  VTV_NO_PRIORITY, /* flag_vtable_verify */
  0, /* flag_vtv_counts */
  0, /* flag_vtv_debug */
  1, /* flag_weak */
  2, /* flag_web */
  0, /* flag_whole_program */
  -1, /* flag_working_directory */
  0, /* flag_wpa */
  0, /* flag_wrapv */
  0, /* flag_wrapv_pointer */
  1, /* flag_zero_initialized_in_bss */
  0, /* flag_zero_link */
  2, /* dwarf2out_as_loc_support */
  2, /* dwarf2out_as_locview_support */
  1, /* debug_column_info */
  0, /* flag_describe_dies */
  4, /* dwarf_version */
  0, /* flag_gen_declaration */
  -1, /* debug_generate_pub_sections */
  2, /* debug_inline_points */
  2, /* debug_internal_reset_location_views */
  1, /* dwarf_record_gcc_switches */
  0, /* dwarf_split_debug_info */
  2, /* debug_nonbind_markers_p */
  0, /* dwarf_strict */
  0, /* flag_gtoggle */
  2, /* debug_variable_location_views */
  0, /* imultiarch */
  0, /* plugindir_string */
  AARCH64_ABI_DEFAULT, /* aarch64_abi */
  0, /* aarch64_arch_string */
  DEFAULT_LIBC, /* linux_libc */
  0, /* aarch64_branch_protection_string */
  AARCH64_CMODEL_SMALL, /* aarch64_cmodel_var */
  0, /* aarch64_cpu_string */
  2, /* aarch64_fix_a53_err835769 */
  2, /* aarch64_fix_a53_err843419 */
  0, /* flag_mlow_precision_div */
  0, /* flag_mrecip_low_precision_sqrt */
  0, /* flag_mlow_precision_sqrt */
  2, /* flag_omit_leaf_frame_pointer */
  0, /* aarch64_override_tune_string */
  2, /* pcrelative_literal_loads */
  AARCH64_FUNCTION_NONE, /* aarch64_ra_sign_scope */
  0, /* aarch64_stack_protector_guard_offset_str */
  0, /* aarch64_stack_protector_guard_reg_str */
  SSP_GLOBAL, /* aarch64_stack_protector_guard */
  SVE_SCALABLE, /* aarch64_sve_vector_bits */
  TLS_DESCRIPTORS, /* aarch64_tls_dialect */
  0, /* aarch64_tls_size */
  0, /* aarch64_track_speculation */
  0, /* aarch64_tune_string */
  0, /* flag_aarch64_verbose_cost */
  0, /* asm_file_name */
  0, /* pass_exit_codes */
  0, /* flag_pedantic_errors */
  0, /* use_pipes */
  0, /* print_file_name */
  0, /* print_multi_directory */
  0, /* print_multi_lib */
  0, /* print_multi_os_directory */
  0, /* print_multiarch */
  0, /* print_prog_name */
  0, /* print_search_dirs */
  0, /* print_sysroot */
  0, /* print_sysroot_headers_suffix */
  0, /* quiet_flag */
  0, /* report_times */
  0, /* flag_undef */
  0, /* verbose_flag */
  0, /* version_flag */
  0, /* inhibit_warnings */
  0, /* wrapper_string */
  false, /* frontend_set_flag_associative_math */
  false, /* frontend_set_flag_cx_limited_range */
  false, /* frontend_set_flag_excess_precision_cmdline */
  false, /* frontend_set_flag_finite_math_only */
  false, /* frontend_set_flag_errno_math */
  false, /* frontend_set_flag_reciprocal_math */
  false, /* frontend_set_flag_rounding_math */
  false, /* frontend_set_flag_signaling_nans */
  false, /* frontend_set_flag_signed_zeros */
  false, /* frontend_set_flag_trapping_math */
  false, /* frontend_set_flag_unsafe_math_optimizations */
};

struct gcc_options global_options;
struct gcc_options global_options_set;

const char * const lang_names[] =
{
  "Ada",
  "AdaSCIL",
  "AdaWhy",
  "BRIG",
  "C",
  "C++",
  "D",
  "Fortran",
  "Go",
  "LTO",
  "ObjC",
  "ObjC++",
  0
};

const unsigned int cl_options_count = N_OPTS;

#if (1U << 12) > CL_MIN_OPTION_CLASS
  #error the number of languages exceeds the implementation limit
#endif
const unsigned int cl_lang_count = 12;

const struct cl_option cl_options[] =
{
 /* [0] = */ {
    "-###",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 3, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1] = */ {
    "--all-warnings",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_Wall, N_OPTS, 13, /* .neg_idx = */ -1,
    CL_Ada | CL_AdaSCIL | CL_AdaWhy | CL_C | CL_CXX | CL_Fortran | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [2] = */ {
    "--ansi",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_ansi, N_OPTS, 5, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [3] = */ {
    "--assemble",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_S, N_OPTS, 9, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [4] = */ {
    "--assert",
    NULL,
    "assertion missing after %qs",
    NULL,
    NULL, NULL, OPT_A, N_OPTS, 7, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_Fortran | CL_ObjC | CL_ObjCXX | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [5] = */ {
    "--assert=",
    NULL,
    "assertion missing after %qs",
    NULL,
    NULL, NULL, OPT_A, N_OPTS, 8, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_Fortran | CL_ObjC | CL_ObjCXX | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [6] = */ {
    "--comments",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_C, N_OPTS, 9, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_Fortran | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [7] = */ {
    "--comments-in-macros",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_CC, N_OPTS, 19, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_Fortran | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [8] = */ {
    "--compile",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_c, N_OPTS, 8, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [9] = */ {
    "--completion=",
    "Provide bash completion for options starting with provided string.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ -1,
    CL_COMMON | CL_DRIVER | CL_JOINED | CL_UNDOCUMENTED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [10] = */ {
    "--coverage",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_coverage, N_OPTS, 9, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [11] = */ {
    "--debug",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_g, N_OPTS, 6, /* .neg_idx = */ -1,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [12] = */ {
    "--define-macro",
    NULL,
    "macro name missing after %qs",
    NULL,
    NULL, NULL, OPT_D, N_OPTS, 13, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_Fortran | CL_ObjC | CL_ObjCXX | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [13] = */ {
    "--define-macro=",
    NULL,
    "macro name missing after %qs",
    NULL,
    NULL, NULL, OPT_D, N_OPTS, 14, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_Fortran | CL_ObjC | CL_ObjCXX | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [14] = */ {
    "--dependencies",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_M, N_OPTS, 13, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_D | CL_Fortran | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [15] = */ {
    "--dump",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_d, N_OPTS, 5, /* .neg_idx = */ -1,
    CL_BRIG | CL_C | CL_CXX | CL_Fortran | CL_ObjC | CL_ObjCXX | CL_COMMON | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [16] = */ {
    "--dump=",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_d, N_OPTS, 6, /* .neg_idx = */ -1,
    CL_BRIG | CL_C | CL_CXX | CL_Fortran | CL_ObjC | CL_ObjCXX | CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [17] = */ {
    "--dumpbase",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_dumpbase, N_OPTS, 9, /* .neg_idx = */ -1,
    CL_COMMON | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [18] = */ {
    "--dumpdir",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_dumpdir, N_OPTS, 8, /* .neg_idx = */ -1,
    CL_COMMON | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [19] = */ {
    "--entry",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_e, N_OPTS, 6, /* .neg_idx = */ -1,
    CL_DRIVER | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [20] = */ {
    "--entry=",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_e, N_OPTS, 7, /* .neg_idx = */ -1,
    CL_DRIVER | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [21] = */ {
    "--extra-warnings",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_Wextra, N_OPTS, 15, /* .neg_idx = */ -1,
    CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [22] = */ {
    "--for-assembler",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_Xassembler, N_OPTS, 14, /* .neg_idx = */ -1,
    CL_DRIVER | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [23] = */ {
    "--for-assembler=",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_Xassembler, N_OPTS, 15, /* .neg_idx = */ -1,
    CL_DRIVER | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 1 /* JoinedOrMissing */, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [24] = */ {
    "--for-linker",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_Xlinker, N_OPTS, 11, /* .neg_idx = */ -1,
    CL_DRIVER | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [25] = */ {
    "--for-linker=",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_Xlinker, N_OPTS, 12, /* .neg_idx = */ -1,
    CL_DRIVER | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 1 /* JoinedOrMissing */, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [26] = */ {
    "--force-link",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_u, N_OPTS, 11, /* .neg_idx = */ -1,
    CL_DRIVER | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [27] = */ {
    "--force-link=",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_u, N_OPTS, 12, /* .neg_idx = */ -1,
    CL_DRIVER | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [28] = */ {
    "--help",
    "Display this information.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 5, /* .neg_idx = */ -1,
    CL_COMMON | CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_help_flag), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [29] = */ {
    "--help=",
    "--help=<class>	Display descriptions of a specific class of options.  <class> is one or more of optimizers, target, warnings, undocumented, params.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 6, /* .neg_idx = */ -1,
    CL_COMMON | CL_DRIVER | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [30] = */ {
    "--imacros",
    NULL,
    "missing filename after %qs",
    NULL,
    NULL, NULL, OPT_imacros, N_OPTS, 8, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [31] = */ {
    "--imacros=",
    NULL,
    "missing filename after %qs",
    NULL,
    NULL, NULL, OPT_imacros, N_OPTS, 9, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [32] = */ {
    "--include",
    NULL,
    "missing filename after %qs",
    NULL,
    NULL, NULL, OPT_include, N_OPTS, 8, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [33] = */ {
    "--include-barrier",
    NULL,
    NULL,
    NULL,
    "-", NULL, OPT_I, N_OPTS, 16, /* .neg_idx = */ -1,
    CL_Ada | CL_AdaSCIL | CL_AdaWhy | CL_C | CL_CXX | CL_Fortran | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [34] = */ {
    "--include-directory",
    NULL,
    "missing path after %qs",
    NULL,
    NULL, NULL, OPT_I, N_OPTS, 18, /* .neg_idx = */ -1,
    CL_Ada | CL_AdaSCIL | CL_AdaWhy | CL_C | CL_CXX | CL_Fortran | CL_ObjC | CL_ObjCXX | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [35] = */ {
    "--include-directory-after",
    NULL,
    "missing path after %qs",
    NULL,
    NULL, NULL, OPT_idirafter, N_OPTS, 24, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_Fortran | CL_ObjC | CL_ObjCXX | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [36] = */ {
    "--include-directory-after=",
    NULL,
    "missing path after %qs",
    NULL,
    NULL, NULL, OPT_idirafter, N_OPTS, 25, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_Fortran | CL_ObjC | CL_ObjCXX | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [37] = */ {
    "--include-directory=",
    NULL,
    "missing path after %qs",
    NULL,
    NULL, NULL, OPT_I, N_OPTS, 19, /* .neg_idx = */ -1,
    CL_Ada | CL_AdaSCIL | CL_AdaWhy | CL_C | CL_CXX | CL_Fortran | CL_ObjC | CL_ObjCXX | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [38] = */ {
    "--include-prefix",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_iprefix, N_OPTS, 15, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_Fortran | CL_ObjC | CL_ObjCXX | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [39] = */ {
    "--include-prefix=",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_iprefix, N_OPTS, 16, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_Fortran | CL_ObjC | CL_ObjCXX | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 1 /* JoinedOrMissing */, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [40] = */ {
    "--include-with-prefix",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_iwithprefix, N_OPTS, 20, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [41] = */ {
    "--include-with-prefix-after",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_iwithprefix, N_OPTS, 26, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [42] = */ {
    "--include-with-prefix-after=",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_iwithprefix, N_OPTS, 27, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 1 /* JoinedOrMissing */, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [43] = */ {
    "--include-with-prefix-before",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_iwithprefixbefore, N_OPTS, 27, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [44] = */ {
    "--include-with-prefix-before=",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_iwithprefixbefore, N_OPTS, 28, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 1 /* JoinedOrMissing */, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [45] = */ {
    "--include-with-prefix=",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_iwithprefix, N_OPTS, 21, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 1 /* JoinedOrMissing */, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [46] = */ {
    "--include=",
    NULL,
    "missing filename after %qs",
    NULL,
    NULL, NULL, OPT_include, N_OPTS, 9, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [47] = */ {
    "--language",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_x, N_OPTS, 9, /* .neg_idx = */ -1,
    CL_DRIVER | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [48] = */ {
    "--language=",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_x, N_OPTS, 10, /* .neg_idx = */ -1,
    CL_DRIVER | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [49] = */ {
    "--library-directory",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_L, N_OPTS, 18, /* .neg_idx = */ -1,
    CL_DRIVER | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [50] = */ {
    "--library-directory=",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_L, N_OPTS, 19, /* .neg_idx = */ -1,
    CL_DRIVER | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [51] = */ {
    "--no-canonical-prefixes",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_no_canonical_prefixes, N_OPTS, 22, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [52] = */ {
    "--no-integrated-cpp",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_no_integrated_cpp, N_OPTS, 18, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [53] = */ {
    "--no-line-commands",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_P, N_OPTS, 17, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_Fortran | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [54] = */ {
    "--no-standard-includes",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_nostdinc, N_OPTS, 21, /* .neg_idx = */ -1,
    CL_Ada | CL_AdaSCIL | CL_AdaWhy | CL_C | CL_CXX | CL_Fortran | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [55] = */ {
    "--no-standard-libraries",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_nostdlib, N_OPTS, 22, /* .neg_idx = */ -1,
    CL_Ada | CL_AdaSCIL | CL_AdaWhy | CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [56] = */ {
    "--no-sysroot-suffix",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 18, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_no_sysroot_suffix), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [57] = */ {
    "--no-warnings",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_w, N_OPTS, 12, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [58] = */ {
    "--optimize",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_O, N_OPTS, 9, /* .neg_idx = */ -1,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [59] = */ {
    "--output",
    NULL,
    "missing filename after %qs",
    NULL,
    NULL, NULL, OPT_o, N_OPTS, 7, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_Fortran | CL_ObjC | CL_ObjCXX | CL_COMMON | CL_DRIVER | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [60] = */ {
    "--output-pch=",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_JOINED | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [61] = */ {
    "--output=",
    NULL,
    "missing filename after %qs",
    NULL,
    NULL, NULL, OPT_o, N_OPTS, 8, /* .neg_idx = */ -1,
    CL_BRIG | CL_C | CL_CXX | CL_Fortran | CL_ObjC | CL_ObjCXX | CL_COMMON | CL_DRIVER | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [62] = */ {
    "--param",
    "--param <param>=<value>	Set parameter <param> to value.  See below for a complete list of parameters.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 6, /* .neg_idx = */ -1,
    CL_COMMON | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [63] = */ {
    "--param=",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT__param, N_OPTS, 7, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [64] = */ {
    "--pass-exit-codes",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_pass_exit_codes, N_OPTS, 16, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [65] = */ {
    "--pedantic",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_Wpedantic, N_OPTS, 9, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [66] = */ {
    "--pedantic-errors",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_pedantic_errors, N_OPTS, 16, /* .neg_idx = */ -1,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [67] = */ {
    "--pie",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_pie, N_OPTS, 4, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [68] = */ {
    "--pipe",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_pipe, N_OPTS, 5, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [69] = */ {
    "--prefix",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_B, N_OPTS, 7, /* .neg_idx = */ -1,
    CL_DRIVER | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [70] = */ {
    "--prefix=",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_B, N_OPTS, 8, /* .neg_idx = */ -1,
    CL_DRIVER | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 1 /* JoinedOrMissing */, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [71] = */ {
    "--preprocess",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_E, N_OPTS, 11, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_Fortran | CL_ObjC | CL_ObjCXX | CL_DRIVER | CL_UNDOCUMENTED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [72] = */ {
    "--print-file-name",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_print_file_name_, N_OPTS, 16, /* .neg_idx = */ -1,
    CL_DRIVER | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [73] = */ {
    "--print-file-name=",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_print_file_name_, N_OPTS, 17, /* .neg_idx = */ -1,
    CL_DRIVER | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 1 /* JoinedOrMissing */, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [74] = */ {
    "--print-libgcc-file-name",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_print_libgcc_file_name, N_OPTS, 23, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [75] = */ {
    "--print-missing-file-dependencies",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_MG, N_OPTS, 32, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_D | CL_Fortran | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [76] = */ {
    "--print-multi-directory",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_print_multi_directory, N_OPTS, 22, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [77] = */ {
    "--print-multi-lib",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_print_multi_lib, N_OPTS, 16, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [78] = */ {
    "--print-multi-os-directory",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_print_multi_os_directory, N_OPTS, 25, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [79] = */ {
    "--print-multiarch",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_print_multiarch, N_OPTS, 16, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [80] = */ {
    "--print-prog-name",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_print_prog_name_, N_OPTS, 16, /* .neg_idx = */ -1,
    CL_DRIVER | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [81] = */ {
    "--print-prog-name=",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_print_prog_name_, N_OPTS, 17, /* .neg_idx = */ -1,
    CL_DRIVER | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 1 /* JoinedOrMissing */, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [82] = */ {
    "--print-search-dirs",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_print_search_dirs, N_OPTS, 18, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [83] = */ {
    "--print-sysroot",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_print_sysroot, N_OPTS, 14, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [84] = */ {
    "--print-sysroot-headers-suffix",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_print_sysroot_headers_suffix, N_OPTS, 29, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [85] = */ {
    "--profile",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_p, N_OPTS, 8, /* .neg_idx = */ -1,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [86] = */ {
    "--save-temps",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_save_temps, N_OPTS, 11, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [87] = */ {
    "--shared",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_shared, N_OPTS, 7, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [88] = */ {
    "--specs",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_specs_, N_OPTS, 6, /* .neg_idx = */ -1,
    CL_DRIVER | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [89] = */ {
    "--specs=",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_specs_, N_OPTS, 7, /* .neg_idx = */ -1,
    CL_DRIVER | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [90] = */ {
    "--static",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_static, N_OPTS, 7, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [91] = */ {
    "--static-pie",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_static_pie, N_OPTS, 11, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [92] = */ {
    "--symbolic",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_symbolic, N_OPTS, 9, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [93] = */ {
    "--sysroot",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT__sysroot_, N_OPTS, 8, /* .neg_idx = */ -1,
    CL_DRIVER | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [94] = */ {
    "--sysroot=",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ -1,
    CL_DRIVER | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 1 /* JoinedOrMissing */, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [95] = */ {
    "--target-help",
    "Alias for --help=target.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ -1,
    CL_COMMON | CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [96] = */ {
    "--time",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_time, N_OPTS, 5, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [97] = */ {
    "--trace-includes",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_H, N_OPTS, 15, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_Fortran | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [98] = */ {
    "--traditional",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_traditional, N_OPTS, 12, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [99] = */ {
    "--traditional-cpp",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_traditional_cpp, N_OPTS, 16, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [100] = */ {
    "--trigraphs",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_trigraphs, N_OPTS, 10, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [101] = */ {
    "--undefine-macro",
    NULL,
    "macro name missing after %qs",
    NULL,
    NULL, NULL, OPT_U, N_OPTS, 15, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_Fortran | CL_ObjC | CL_ObjCXX | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [102] = */ {
    "--undefine-macro=",
    NULL,
    "macro name missing after %qs",
    NULL,
    NULL, NULL, OPT_U, N_OPTS, 16, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_Fortran | CL_ObjC | CL_ObjCXX | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [103] = */ {
    "--user-dependencies",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_MM, N_OPTS, 18, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_D | CL_Fortran | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [104] = */ {
    "--verbose",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_v, N_OPTS, 8, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_D | CL_Fortran | CL_ObjC | CL_ObjCXX | CL_COMMON | CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [105] = */ {
    "--version",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 8, /* .neg_idx = */ -1,
    CL_COMMON | CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [106] = */ {
    "--write-dependencies",
    NULL,
    "missing filename after %qs",
    NULL,
    NULL, NULL, OPT_MD, N_OPTS, 19, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_D | CL_Fortran | CL_ObjC | CL_ObjCXX | CL_SEPARATE,
    0, 0, 0, 0, 1 /* NoDriverArg */, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [107] = */ {
    "--write-user-dependencies",
    NULL,
    "missing filename after %qs",
    NULL,
    NULL, NULL, OPT_MMD, N_OPTS, 24, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_D | CL_Fortran | CL_ObjC | CL_ObjCXX | CL_SEPARATE,
    0, 0, 0, 0, 1 /* NoDriverArg */, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [108] = */ {
    "-A",
    "-A<question>=<answer>	Assert the <answer> to <question>.  Putting '-' before <question> disables the <answer> to <question>.",
    "assertion missing after %qs",
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 1, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_Fortran | CL_ObjC | CL_ObjCXX | CL_JOINED | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [109] = */ {
    "-B",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 1, /* .neg_idx = */ -1,
    CL_DRIVER | CL_JOINED | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [110] = */ {
    "-C",
    "Do not discard comments.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 1, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_Fortran | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [111] = */ {
    "-CC",
    "Do not discard comments in macro expansions.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 2, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_Fortran | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [112] = */ {
    "-D",
    "-D<macro>[=<val>]	Define a <macro> with <val> as its value.  If just <macro> is given, <val> is taken to be 1.",
    "macro name missing after %qs",
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 1, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_Fortran | CL_ObjC | CL_ObjCXX | CL_JOINED | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [113] = */ {
    "-E",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 1, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_Fortran | CL_ObjC | CL_ObjCXX | CL_DRIVER | CL_UNDOCUMENTED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_preprocess_only), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [114] = */ {
    "-F",
    "-F <dir>	Add <dir> to the end of the main framework include path.",
    "missing path after %qs",
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 1, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_DRIVER | CL_JOINED | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [115] = */ {
    "-H",
    "Print the name of header files as they are used.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 1, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_D | CL_Fortran | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [116] = */ {
    "-Hd",
    "-Hd <dir>	Write D interface files to directory <dir>.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 2, /* .neg_idx = */ -1,
    CL_D | CL_JOINED | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [117] = */ {
    "-Hf",
    "-Hf <file>	Write D interface to <file>.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 2, /* .neg_idx = */ -1,
    CL_D | CL_JOINED | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [118] = */ {
    "-I",
    "-I <dir>	Add <dir> to the end of the main include path.",
    "missing path after %qs",
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 1, /* .neg_idx = */ -1,
    CL_Ada | CL_AdaSCIL | CL_AdaWhy | CL_C | CL_CXX | CL_D | CL_Fortran | CL_Go | CL_ObjC | CL_ObjCXX | CL_JOINED | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [119] = */ {
    "-J",
    "-J<directory>	Put MODULE files in 'directory'.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 1, /* .neg_idx = */ -1,
    CL_D | CL_Fortran | CL_JOINED | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [120] = */ {
    "-L",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 1, /* .neg_idx = */ -1,
    CL_BRIG | CL_Go | CL_DRIVER | CL_JOINED | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [121] = */ {
    "-M",
    "Generate make dependencies.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 1, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_D | CL_Fortran | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [122] = */ {
    "-MD",
    "Generate make dependencies and compile.",
    "missing filename after %qs",
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 2, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_D | CL_Fortran | CL_ObjC | CL_ObjCXX | CL_SEPARATE,
    0, 0, 0, 0, 1 /* NoDriverArg */, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [123] = */ {
    "-MF",
    "-MF <file>	Write dependency output to the given file.",
    "missing filename after %qs",
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 2, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_D | CL_Fortran | CL_ObjC | CL_ObjCXX | CL_JOINED | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [124] = */ {
    "-MG",
    "Treat missing header files as generated files.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 2, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_D | CL_Fortran | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [125] = */ {
    "-MM",
    "Like -M but ignore system header files.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 2, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_D | CL_Fortran | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [126] = */ {
    "-MMD",
    "Like -MD but ignore system header files.",
    "missing filename after %qs",
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 3, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_D | CL_Fortran | CL_ObjC | CL_ObjCXX | CL_SEPARATE,
    0, 0, 0, 0, 1 /* NoDriverArg */, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [127] = */ {
    "-MP",
    "Generate phony targets for all headers.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 2, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_D | CL_Fortran | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [128] = */ {
    "-MQ",
    "-MQ <target>	Add a MAKE-quoted target.",
    "missing makefile target after %qs",
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 2, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_D | CL_Fortran | CL_ObjC | CL_ObjCXX | CL_JOINED | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [129] = */ {
    "-MT",
    "-MT <target>	Add an unquoted target.",
    "missing makefile target after %qs",
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 2, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_D | CL_Fortran | CL_ObjC | CL_ObjCXX | CL_JOINED | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [130] = */ {
    "-N",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 1, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [131] = */ {
    "-O",
    "-O<number>	Set optimization level to <number>.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 1, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 1 /* JoinedOrMissing */, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [132] = */ {
    "-Ofast",
    "Optimize for speed disregarding exact standards compliance.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_O, 5, /* .neg_idx = */ -1,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [133] = */ {
    "-Og",
    "Optimize for debugging experience rather than speed or size.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_O, 2, /* .neg_idx = */ -1,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [134] = */ {
    "-Os",
    "Optimize for space rather than speed.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_O, 2, /* .neg_idx = */ -1,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [135] = */ {
    "-P",
    "Do not generate #line directives.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 1, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_Fortran | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [136] = */ {
    "-Q",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 1, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [137] = */ {
    "-Qn",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 2, /* .neg_idx = */ 138,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [138] = */ {
    "-Qy",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 2, /* .neg_idx = */ 137,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [139] = */ {
    "-R",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 1, /* .neg_idx = */ -1,
    CL_DRIVER | CL_JOINED | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [140] = */ {
    "-S",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 1, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [141] = */ {
    "-T",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 1, /* .neg_idx = */ -1,
    CL_DRIVER | CL_JOINED | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [142] = */ {
    "-Tbss",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_T, 4, /* .neg_idx = */ -1,
    CL_DRIVER | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [143] = */ {
    "-Tbss=",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_T, 5, /* .neg_idx = */ -1,
    CL_DRIVER | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [144] = */ {
    "-Tdata",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_T, 5, /* .neg_idx = */ -1,
    CL_DRIVER | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [145] = */ {
    "-Tdata=",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_T, 6, /* .neg_idx = */ -1,
    CL_DRIVER | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [146] = */ {
    "-Ttext",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_T, 5, /* .neg_idx = */ -1,
    CL_DRIVER | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [147] = */ {
    "-Ttext=",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_T, 6, /* .neg_idx = */ -1,
    CL_DRIVER | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [148] = */ {
    "-U",
    "-U<macro>	Undefine <macro>.",
    "macro name missing after %qs",
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 1, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_Fortran | CL_ObjC | CL_ObjCXX | CL_JOINED | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [149] = */ {
    "-W",
    "This switch is deprecated; use -Wextra instead.",
    NULL,
    NULL,
    NULL, NULL, OPT_Wextra, N_OPTS, 1, /* .neg_idx = */ -1,
    CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [150] = */ {
    "-Wa,",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 3, /* .neg_idx = */ -1,
    CL_DRIVER | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 1 /* JoinedOrMissing */, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [151] = */ {
    "-Wabi",
    "Warn about things that will change when compiling with an ABI-compliant compiler.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 4, /* .neg_idx = */ 151,
    CL_C | CL_CXX | CL_LTO | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_abi), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [152] = */ {
    "-Wabi-tag",
    "Warn if a subobject has an abi_tag attribute that the complete object type does not have.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 8, /* .neg_idx = */ 152,
    CL_CXX | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_abi_tag), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [153] = */ {
    "-Wabi=",
    "Warn about things that change between the current -fabi-version and the specified version.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 5, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_LTO | CL_ObjC | CL_ObjCXX | CL_JOINED | CL_WARNING,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 1 /* UInteger */, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [154] = */ {
    "-Wabsolute-value",
    "Warn on suspicious calls of standard functions computing absolute values.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ 154,
    CL_C | CL_ObjC | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_absolute_value), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [155] = */ {
    "-Waddress",
    "Warn about suspicious uses of memory addresses.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 8, /* .neg_idx = */ 155,
    CL_C | CL_CXX | CL_D | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_address), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [156] = */ {
    "-Waddress-of-packed-member",
    "Warn when the address of packed member of struct or union is taken.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 25, /* .neg_idx = */ 156,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_address_of_packed_member), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [157] = */ {
    "-Waggregate-return",
    "Warn about returning structures, unions or arrays.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ 157,
    CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_aggregate_return), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [158] = */ {
    "-Waggressive-loop-optimizations",
    "Warn if a loop with constant number of iterations triggers undefined behavior.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 30, /* .neg_idx = */ 158,
    CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_aggressive_loop_optimizations), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [159] = */ {
    "-Waliasing",
    "Warn about possible aliasing of dummy arguments.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ 159,
    CL_Fortran | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_aliasing), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [160] = */ {
    "-Walign-commons",
    "Warn about alignment of COMMON blocks.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 14, /* .neg_idx = */ 160,
    CL_Fortran | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_align_commons), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [161] = */ {
    "-Waligned-new",
    "Warn about 'new' of type with extended alignment without -faligned-new.",
    NULL,
    NULL,
    "global", "none", OPT_Waligned_new_, N_OPTS, 12, /* .neg_idx = */ 161,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [162] = */ {
    "-Waligned-new=",
    "-Waligned-new=[none|global|all]	Warn even if 'new' uses a class member allocation function.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ -1,
    CL_CXX | CL_ObjCXX | CL_JOINED | CL_WARNING,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_aligned_new), 37, CLVC_ENUM, 0, -1, -1 },
 /* [163] = */ {
    "-Wall",
    "Enable most warning messages.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 4, /* .neg_idx = */ 163,
    CL_Ada | CL_AdaSCIL | CL_AdaWhy | CL_C | CL_CXX | CL_D | CL_Fortran | CL_Go | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [164] = */ {
    "-Walloc-size-larger-than=",
    "-Walloc-size-larger-than=<bytes> Warn for calls to allocation functions that attempt to allocate objects larger than the specified number of bytes.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 24, /* .neg_idx = */ 164,
    CL_C | CL_CXX | CL_LTO | CL_ObjC | CL_ObjCXX | CL_JOINED | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Host_Wide_Int */, 0, 0, 1 /* ByteSize */,
    offsetof (struct gcc_options, x_warn_alloc_size_limit), 0, CLVC_SIZE, 0, -1, -1 },
 /* [165] = */ {
    "-Walloc-zero",
    "-Walloc-zero Warn for calls to allocation functions that specify zero bytes.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 11, /* .neg_idx = */ 165,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_alloc_zero), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [166] = */ {
    "-Walloca",
    "Warn on any use of alloca.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 7, /* .neg_idx = */ 166,
    CL_C | CL_CXX | CL_D | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_alloca), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [167] = */ {
    "-Walloca-larger-than=",
    "-Walloca-larger-than=<number>	Warn on unbounded uses of alloca, and on bounded uses of alloca whose bound can be larger than <number> bytes.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 20, /* .neg_idx = */ 167,
    CL_C | CL_CXX | CL_D | CL_LTO | CL_ObjC | CL_ObjCXX | CL_JOINED | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Host_Wide_Int */, 0, 0, 1 /* ByteSize */,
    offsetof (struct gcc_options, x_warn_alloca_limit), 0, CLVC_SIZE, 0, -1, -1 },
 /* [168] = */ {
    "-Wampersand",
    "Warn about missing ampersand in continued character constants.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 10, /* .neg_idx = */ 168,
    CL_Fortran | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_ampersand), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [169] = */ {
    "-Wargument-mismatch",
    "Warn about type and rank mismatches between arguments and parameters.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 18, /* .neg_idx = */ 169,
    CL_Fortran | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_argument_mismatch), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [170] = */ {
    "-Warray-bounds",
    "Warn if an array is accessed out of bounds.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ 170,
    CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_array_bounds), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [171] = */ {
    "-Warray-bounds=",
    "Warn if an array is accessed out of bounds.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 14, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED | CL_WARNING,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 1 /* UInteger */, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_array_bounds), 0, CLVC_BOOLEAN, 0, 0, 2 },
 /* [172] = */ {
    "-Warray-temporaries",
    "Warn about creation of array temporaries.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 18, /* .neg_idx = */ 172,
    CL_Fortran | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_array_temporaries), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [173] = */ {
    "-Wassign-intercept",
    "Warn whenever an Objective-C assignment is being intercepted by the garbage collector.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ 173,
    CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_assign_intercept), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [174] = */ {
    "-Wattribute-alias",
    "Warn about type safety and similar errors and mismatches in declarations with alias attributes.",
    NULL,
    NULL,
    "1", "0", OPT_Wattribute_alias_, N_OPTS, 16, /* .neg_idx = */ 174,
    CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [175] = */ {
    "-Wattribute-alias=",
    "Warn about type safety and similar errors and mismatches in declarations with alias attributes.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED | CL_WARNING,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 1 /* UInteger */, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_attribute_alias), 0, CLVC_BOOLEAN, 0, 0, 2 },
 /* [176] = */ {
    "-Wattribute-warning",
    "Warn about uses of __attribute__((warning)) declarations.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 18, /* .neg_idx = */ 176,
    CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_attribute_warning), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [177] = */ {
    "-Wattributes",
    "Warn about inappropriate attribute usage.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 11, /* .neg_idx = */ 177,
    CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_attributes), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [178] = */ {
    "-Wbad-function-cast",
    "Warn about casting functions to incompatible types.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 18, /* .neg_idx = */ 178,
    CL_C | CL_ObjC | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_bad_function_cast), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [179] = */ {
    "-Wbool-compare",
    "Warn about boolean expression compared with an integer value different from true/false.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ 179,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_bool_compare), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [180] = */ {
    "-Wbool-operation",
    "Warn about certain operations on boolean expressions.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ 180,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_bool_op), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [181] = */ {
    "-Wbuiltin-declaration-mismatch",
    "Warn when a built-in function is declared with the wrong signature.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 29, /* .neg_idx = */ 181,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_builtin_declaraion_mismatch), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [182] = */ {
    "-Wbuiltin-macro-redefined",
    "Warn when a built-in preprocessor macro is undefined or redefined.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 24, /* .neg_idx = */ 182,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_cpp_warn_builtin_macro_redefined), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [183] = */ {
    "-Wc++-compat",
    "Warn about C constructs that are not in the common subset of C and C++.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 11, /* .neg_idx = */ 183,
    CL_C | CL_ObjC | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_cxx_compat), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [184] = */ {
    "-Wc++0x-compat",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_Wc__11_compat, N_OPTS, 13, /* .neg_idx = */ 184,
    CL_CXX | CL_ObjCXX | CL_UNDOCUMENTED | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [185] = */ {
    "-Wc++11-compat",
    "Warn about C++ constructs whose meaning differs between ISO C++ 1998 and ISO C++ 2011.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ 185,
    CL_CXX | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_cxx11_compat), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [186] = */ {
    "-Wc++14-compat",
    "Warn about C++ constructs whose meaning differs between ISO C++ 2011 and ISO C++ 2014.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ 186,
    CL_CXX | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_cxx14_compat), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [187] = */ {
    "-Wc++17-compat",
    "Warn about C++ constructs whose meaning differs between ISO C++ 2014 and ISO C++ 2017.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ 187,
    CL_CXX | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_cxx17_compat), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [188] = */ {
    "-Wc++1z-compat",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_Wc__17_compat, N_OPTS, 13, /* .neg_idx = */ 188,
    CL_CXX | CL_ObjCXX | CL_UNDOCUMENTED | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [189] = */ {
    "-Wc-binding-type",
    "Warn if the type of a variable might be not interoperable with C.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ 189,
    CL_Fortran | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_c_binding_type), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [190] = */ {
    "-Wc11-c2x-compat",
    "Warn about features not present in ISO C11, but present in ISO C2X.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ 190,
    CL_C | CL_ObjC | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_c11_c2x_compat), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [191] = */ {
    "-Wc90-c99-compat",
    "Warn about features not present in ISO C90, but present in ISO C99.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ 191,
    CL_C | CL_ObjC | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_c90_c99_compat), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [192] = */ {
    "-Wc99-c11-compat",
    "Warn about features not present in ISO C99, but present in ISO C11.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ 192,
    CL_C | CL_ObjC | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_c99_c11_compat), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [193] = */ {
    "-Wcannot-profile",
    "Warn when profiling instrumentation was requested, but could not be applied to a certain function.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ 193,
    CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_cannot_profile), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [194] = */ {
    "-Wcast-align",
    "Warn about pointer casts which increase alignment.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 11, /* .neg_idx = */ 194,
    CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_cast_align), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [195] = */ {
    "-Wcast-align=strict",
    "Warn about pointer casts which increase alignment.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 18, /* .neg_idx = */ 195,
    CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_cast_align), 0, CLVC_EQUAL, 2, -1, -1 },
 /* [196] = */ {
    "-Wcast-function-type",
    "Warn about casts between incompatible function types.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 19, /* .neg_idx = */ 196,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_cast_function_type), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [197] = */ {
    "-Wcast-qual",
    "Warn about casts which discard qualifiers.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 10, /* .neg_idx = */ 197,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_cast_qual), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [198] = */ {
    "-Wcast-result",
    "Warn about casts that will produce a null result.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ 198,
    CL_D | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_cast_result), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [199] = */ {
    "-Wcatch-value",
    "Warn about catch handlers of non-reference type.",
    NULL,
    NULL,
    "1", "0", OPT_Wcatch_value_, N_OPTS, 12, /* .neg_idx = */ 199,
    CL_CXX | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [200] = */ {
    "-Wcatch-value=",
    "Warn about catch handlers of non-reference type.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ -1,
    CL_CXX | CL_ObjCXX | CL_JOINED | CL_WARNING,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 1 /* UInteger */, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_catch_value), 0, CLVC_BOOLEAN, 0, 0, 3 },
 /* [201] = */ {
    "-Wchar-subscripts",
    "Warn about subscripts whose type is \"char\".",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ 201,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_char_subscripts), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [202] = */ {
    "-Wcharacter-truncation",
    "Warn about truncated character expressions.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 21, /* .neg_idx = */ 202,
    CL_Fortran | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_character_truncation), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [203] = */ {
    "-Wchkp",
    "Deprecated in GCC 9.  This switch has no effect.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_deprecated, N_OPTS, 5, /* .neg_idx = */ 203,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [204] = */ {
    "-Wclass-conversion",
    "Warn when a conversion function will never be called due to the type it converts to.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ 204,
    CL_CXX | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_class_conversion), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [205] = */ {
    "-Wclass-memaccess",
    "Warn for unsafe raw memory writes to objects of class types.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ 205,
    CL_CXX | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_class_memaccess), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [206] = */ {
    "-Wclobbered",
    "Warn about variables that might be changed by \"longjmp\" or \"vfork\".",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 10, /* .neg_idx = */ 206,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_clobbered), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [207] = */ {
    "-Wcomment",
    "Warn about possibly nested block comments, and C++ comments spanning more than one physical line.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 8, /* .neg_idx = */ 207,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_cpp_warn_comment), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [208] = */ {
    "-Wcomments",
    "Synonym for -Wcomment.",
    NULL,
    NULL,
    NULL, NULL, OPT_Wcomment, N_OPTS, 9, /* .neg_idx = */ 208,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [209] = */ {
    "-Wcompare-reals",
    "Warn about equality comparisons involving REAL or COMPLEX expressions.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 14, /* .neg_idx = */ 209,
    CL_Fortran | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_compare_reals), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [210] = */ {
    "-Wconditionally-supported",
    "Warn for conditionally-supported constructs.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 24, /* .neg_idx = */ 210,
    CL_CXX | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_conditionally_supported), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [211] = */ {
    "-Wconversion",
    "Warn for implicit type conversions that may change a value.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 11, /* .neg_idx = */ 211,
    CL_C | CL_CXX | CL_Fortran | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_conversion), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [212] = */ {
    "-Wconversion-extra",
    "Warn about most implicit conversions.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ 212,
    CL_Fortran | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_conversion_extra), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [213] = */ {
    "-Wconversion-null",
    "Warn for converting NULL from/to a non-pointer type.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ 213,
    CL_CXX | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_conversion_null), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [214] = */ {
    "-Wcoverage-mismatch",
    "Warn in case profiles in -fprofile-use do not match.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 18, /* .neg_idx = */ 214,
    CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_coverage_mismatch), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [215] = */ {
    "-Wcpp",
    "Warn when a #warning directive is encountered.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 4, /* .neg_idx = */ 215,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_cpp), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [216] = */ {
    "-Wctor-dtor-privacy",
    "Warn when all constructors and destructors are private.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 18, /* .neg_idx = */ 216,
    CL_CXX | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_ctor_dtor_privacy), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [217] = */ {
    "-Wdangling-else",
    "Warn about dangling else.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 14, /* .neg_idx = */ 217,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_dangling_else), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [218] = */ {
    "-Wdate-time",
    "Warn about __TIME__, __DATE__ and __TIMESTAMP__ usage.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 10, /* .neg_idx = */ 218,
    CL_C | CL_CXX | CL_Fortran | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_cpp_warn_date_time), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [219] = */ {
    "-Wdeclaration-after-statement",
    "Warn when a declaration is found after a statement.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 28, /* .neg_idx = */ 219,
    CL_C | CL_ObjC | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_declaration_after_statement), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [220] = */ {
    "-Wdelete-incomplete",
    "Warn when deleting a pointer to incomplete type.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 18, /* .neg_idx = */ 220,
    CL_CXX | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_delete_incomplete), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [221] = */ {
    "-Wdelete-non-virtual-dtor",
    "Warn about deleting polymorphic objects with non-virtual destructors.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 24, /* .neg_idx = */ 221,
    CL_CXX | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_delnonvdtor), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [222] = */ {
    "-Wdeprecated",
    "Warn if a deprecated compiler feature, class, method, or field is used.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 11, /* .neg_idx = */ 222,
    CL_C | CL_CXX | CL_D | CL_ObjC | CL_ObjCXX | CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_deprecated), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [223] = */ {
    "-Wdeprecated-copy",
    "Mark implicitly-declared copy operations as deprecated if the class has a user-provided copy operation.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ 223,
    CL_CXX | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_deprecated_copy), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [224] = */ {
    "-Wdeprecated-copy-dtor",
    "Mark implicitly-declared copy operations as deprecated if the class has a user-provided copy operation or destructor.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 21, /* .neg_idx = */ 224,
    CL_CXX | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_deprecated_copy), 0, CLVC_EQUAL, 2, -1, -1 },
 /* [225] = */ {
    "-Wdeprecated-declarations",
    "Warn about uses of __attribute__((deprecated)) declarations.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 24, /* .neg_idx = */ 225,
    CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_deprecated_decl), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [226] = */ {
    "-Wdesignated-init",
    "Warn about positional initialization of structs requiring designated initializers.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ 226,
    CL_C | CL_ObjC | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_designated_init), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [227] = */ {
    "-Wdisabled-optimization",
    "Warn when an optimization pass is disabled.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 22, /* .neg_idx = */ 227,
    CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_disabled_optimization), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [228] = */ {
    "-Wdiscarded-array-qualifiers",
    "Warn if qualifiers on arrays which are pointer targets are discarded.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 27, /* .neg_idx = */ 228,
    CL_C | CL_ObjC | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_discarded_array_qualifiers), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [229] = */ {
    "-Wdiscarded-qualifiers",
    "Warn if type qualifiers on pointers are discarded.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 21, /* .neg_idx = */ 229,
    CL_C | CL_ObjC | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_discarded_qualifiers), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [230] = */ {
    "-Wdiv-by-zero",
    "Warn about compile-time integer division by zero.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ 230,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_div_by_zero), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [231] = */ {
    "-Wdo-subscript",
    "Warn about possibly incorrect subscripts in do loops.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ 231,
    CL_Fortran | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_do_subscript), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [232] = */ {
    "-Wdouble-promotion",
    "Warn about implicit conversions from \"float\" to \"double\".",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ 232,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_double_promotion), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [233] = */ {
    "-Wduplicate-decl-specifier",
    "Warn when a declaration has duplicate const, volatile, restrict or _Atomic specifier.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 25, /* .neg_idx = */ 233,
    CL_C | CL_ObjC | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_duplicate_decl_specifier), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [234] = */ {
    "-Wduplicated-branches",
    "Warn about duplicated branches in if-else statements.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 20, /* .neg_idx = */ 234,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_duplicated_branches), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [235] = */ {
    "-Wduplicated-cond",
    "Warn about duplicated conditions in an if-else-if chain.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ 235,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_duplicated_cond), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [236] = */ {
    "-Weffc++",
    "Warn about violations of Effective C++ style rules.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 7, /* .neg_idx = */ 236,
    CL_CXX | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_ecpp), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [237] = */ {
    "-Wempty-body",
    "Warn about an empty body in an if or else statement.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 11, /* .neg_idx = */ 237,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_empty_body), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [238] = */ {
    "-Wendif-labels",
    "Warn about stray tokens after #else and #endif.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ 238,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_cpp_warn_endif_labels), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [239] = */ {
    "-Wenum-compare",
    "Warn about comparison of different enum types.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ 239,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_enum_compare), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [240] = */ {
    "-Werror",
    "Treat all warnings as errors.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 6, /* .neg_idx = */ 240,
    CL_C | CL_CXX | CL_D | CL_ObjC | CL_ObjCXX | CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warnings_are_errors), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [241] = */ {
    "-Werror-implicit-function-declaration",
    "This switch is deprecated; use -Werror=implicit-function-declaration instead.",
    NULL,
    NULL,
    "implicit-function-declaration", NULL, OPT_Werror_, N_OPTS, 36, /* .neg_idx = */ -1,
    CL_C | CL_ObjC | CL_WARNING,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [242] = */ {
    "-Werror=",
    "Treat specified warning as error.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 7, /* .neg_idx = */ 242,
    CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [243] = */ {
    "-Wexpansion-to-defined",
    "Warn if \"defined\" is used outside #if.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 21, /* .neg_idx = */ 243,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_cpp_warn_expansion_to_defined), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [244] = */ {
    "-Wextra",
    "Print extra (possibly unwanted) warnings.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 6, /* .neg_idx = */ 244,
    CL_C | CL_CXX | CL_Fortran | CL_ObjC | CL_ObjCXX | CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_extra_warnings), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [245] = */ {
    "-Wextra-semi",
    "Warn about semicolon after in-class function definition.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 11, /* .neg_idx = */ 245,
    CL_CXX | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_extra_semi), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [246] = */ {
    "-Wfatal-errors",
    "Exit on the first error occurred.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ 246,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_fatal_errors), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [247] = */ {
    "-Wfloat-conversion",
    "Warn for implicit type conversions that cause loss of floating point precision.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ 247,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_float_conversion), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [248] = */ {
    "-Wfloat-equal",
    "Warn if testing floating point numbers for equality.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ 248,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_float_equal), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [249] = */ {
    "-Wformat",
    "Warn about printf/scanf/strftime/strfmon format string anomalies.",
    NULL,
    NULL,
    "1", "0", OPT_Wformat_, N_OPTS, 7, /* .neg_idx = */ 249,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [250] = */ {
    "-Wformat-contains-nul",
    "Warn about format strings that contain NUL bytes.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 20, /* .neg_idx = */ 250,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_format_contains_nul), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [251] = */ {
    "-Wformat-extra-args",
    "Warn if passing too many arguments to a function for its format string.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 18, /* .neg_idx = */ 251,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_format_extra_args), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [252] = */ {
    "-Wformat-nonliteral",
    "Warn about format strings that are not literals.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 18, /* .neg_idx = */ 252,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_format_nonliteral), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [253] = */ {
    "-Wformat-overflow",
    "Warn about function calls with format strings that write past the end of the destination region.  Same as -Wformat-overflow=1.",
    NULL,
    NULL,
    "1", "0", OPT_Wformat_overflow_, N_OPTS, 16, /* .neg_idx = */ 253,
    CL_C | CL_CXX | CL_LTO | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, 0, 2 },
 /* [254] = */ {
    "-Wformat-overflow=",
    "Warn about function calls with format strings that write past the end of the destination region.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_LTO | CL_ObjC | CL_ObjCXX | CL_JOINED | CL_WARNING,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 1 /* UInteger */, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_format_overflow), 0, CLVC_BOOLEAN, 0, 0, 2 },
 /* [255] = */ {
    "-Wformat-security",
    "Warn about possible security problems with format functions.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ 255,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_format_security), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [256] = */ {
    "-Wformat-signedness",
    "Warn about sign differences with format functions.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 18, /* .neg_idx = */ 256,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_format_signedness), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [257] = */ {
    "-Wformat-truncation",
    "Warn about calls to snprintf and similar functions that truncate output. Same as -Wformat-truncation=1.",
    NULL,
    NULL,
    "1", "0", OPT_Wformat_truncation_, N_OPTS, 18, /* .neg_idx = */ 257,
    CL_C | CL_CXX | CL_LTO | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [258] = */ {
    "-Wformat-truncation=",
    "Warn about calls to snprintf and similar functions that truncate output.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 19, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_LTO | CL_ObjC | CL_ObjCXX | CL_JOINED | CL_WARNING,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 1 /* UInteger */, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_format_trunc), 0, CLVC_BOOLEAN, 0, 0, 2 },
 /* [259] = */ {
    "-Wformat-y2k",
    "Warn about strftime formats yielding 2-digit years.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 11, /* .neg_idx = */ 259,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_format_y2k), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [260] = */ {
    "-Wformat-zero-length",
    "Warn about zero-length formats.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 19, /* .neg_idx = */ 260,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_format_zero_length), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [261] = */ {
    "-Wformat=",
    "Warn about printf/scanf/strftime/strfmon format string anomalies.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 8, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_JOINED | CL_WARNING,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 1 /* UInteger */, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_format), 0, CLVC_BOOLEAN, 0, 0, 2 },
 /* [262] = */ {
    "-Wframe-address",
    "Warn when __builtin_frame_address or __builtin_return_address is used unsafely.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 14, /* .neg_idx = */ 262,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_frame_address), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [263] = */ {
    "-Wframe-larger-than=",
    "-Wframe-larger-than=<byte-size>	Warn if a function's stack frame requires in excess of <byte-size>.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 19, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED | CL_WARNING,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 1 /* Host_Wide_Int */, 0, 0, 1 /* ByteSize */,
    offsetof (struct gcc_options, x_warn_frame_larger_than_size), 0, CLVC_SIZE, 0, -1, -1 },
 /* [264] = */ {
    "-Wfree-nonheap-object",
    "Warn when attempting to free a non-heap object.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 20, /* .neg_idx = */ 264,
    CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_free_nonheap_object), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [265] = */ {
    "-Wfrontend-loop-interchange",
    "Warn if loops have been interchanged.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 26, /* .neg_idx = */ 265,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_warn_frontend_loop_interchange), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [266] = */ {
    "-Wfunction-elimination",
    "Warn about function call elimination.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 21, /* .neg_idx = */ 266,
    CL_Fortran | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_function_elimination), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [267] = */ {
    "-Whsa",
    "Warn when a function cannot be expanded to HSAIL.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 4, /* .neg_idx = */ 267,
    CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_hsa), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [268] = */ {
    "-Wif-not-aligned",
    "Warn when the field in a struct is not aligned.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ 268,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_if_not_aligned), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [269] = */ {
    "-Wignored-attributes",
    "Warn whenever attributes are ignored.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 19, /* .neg_idx = */ 269,
    CL_C | CL_CXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_ignored_attributes), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [270] = */ {
    "-Wignored-qualifiers",
    "Warn whenever type qualifiers are ignored.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 19, /* .neg_idx = */ 270,
    CL_C | CL_CXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_ignored_qualifiers), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [271] = */ {
    "-Wimplicit",
    "Warn about implicit declarations.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ 271,
    CL_C | CL_ObjC | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_implicit), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [272] = */ {
    "-Wimplicit-fallthrough",
    NULL,
    NULL,
    NULL,
    "3", "0", OPT_Wimplicit_fallthrough_, N_OPTS, 21, /* .neg_idx = */ 272,
    CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [273] = */ {
    "-Wimplicit-fallthrough=",
    "Warn when a switch case falls through.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 22, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED | CL_WARNING,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 1 /* UInteger */, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_implicit_fallthrough), 0, CLVC_BOOLEAN, 0, 0, 5 },
 /* [274] = */ {
    "-Wimplicit-function-declaration",
    "Warn about implicit function declarations.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 30, /* .neg_idx = */ 274,
    CL_C | CL_ObjC | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_implicit_function_declaration), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [275] = */ {
    "-Wimplicit-int",
    "Warn when a declaration does not specify a type.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ 275,
    CL_C | CL_ObjC | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_implicit_int), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [276] = */ {
    "-Wimplicit-interface",
    "Warn about calls with implicit interface.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 19, /* .neg_idx = */ 276,
    CL_Fortran | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_implicit_interface), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [277] = */ {
    "-Wimplicit-procedure",
    "Warn about called procedures not explicitly declared.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 19, /* .neg_idx = */ 277,
    CL_Fortran | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_implicit_procedure), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [278] = */ {
    "-Wimport",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_ignore, N_OPTS, 7, /* .neg_idx = */ 278,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_UNDOCUMENTED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [279] = */ {
    "-Wincompatible-pointer-types",
    "Warn when there is a conversion between pointers that have incompatible types.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 27, /* .neg_idx = */ 279,
    CL_C | CL_ObjC | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_incompatible_pointer_types), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [280] = */ {
    "-Winherited-variadic-ctor",
    "Warn about C++11 inheriting constructors when the base has a variadic constructor.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 24, /* .neg_idx = */ 280,
    CL_CXX | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_inh_var_ctor), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [281] = */ {
    "-Winit-list-lifetime",
    "Warn about uses of std::initializer_list that can result in dangling pointers.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 19, /* .neg_idx = */ 281,
    CL_CXX | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_init_list), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [282] = */ {
    "-Winit-self",
    "Warn about variables which are initialized to themselves.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 10, /* .neg_idx = */ 282,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_init_self), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [283] = */ {
    "-Winline",
    "Warn when an inlined function cannot be inlined.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 7, /* .neg_idx = */ 283,
    CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_inline), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [284] = */ {
    "-Wint-conversion",
    "Warn about incompatible integer to pointer and pointer to integer conversions.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ 284,
    CL_C | CL_ObjC | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_int_conversion), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [285] = */ {
    "-Wint-in-bool-context",
    "Warn for suspicious integer expressions in boolean context.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 20, /* .neg_idx = */ 285,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_int_in_bool_context), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [286] = */ {
    "-Wint-to-pointer-cast",
    "Warn when there is a cast to a pointer from an integer of a different size.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 20, /* .neg_idx = */ 286,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_int_to_pointer_cast), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [287] = */ {
    "-Winteger-division",
    "Warn about constant integer divisions with truncated results.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ 287,
    CL_Fortran | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_integer_division), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [288] = */ {
    "-Wintrinsic-shadow",
    "Warn if a user-procedure has the same name as an intrinsic.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ 288,
    CL_Fortran | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_intrinsic_shadow), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [289] = */ {
    "-Wintrinsics-std",
    "Warn on intrinsics not part of the selected standard.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ 289,
    CL_Fortran | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_intrinsics_std), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [290] = */ {
    "-Winvalid-memory-model",
    "Warn when an atomic memory model parameter is known to be outside the valid range.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 21, /* .neg_idx = */ 290,
    CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_invalid_memory_model), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [291] = */ {
    "-Winvalid-offsetof",
    "Warn about invalid uses of the \"offsetof\" macro.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ 291,
    CL_CXX | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_invalid_offsetof), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [292] = */ {
    "-Winvalid-pch",
    "Warn about PCH files that are found but not used.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ 292,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_cpp_warn_invalid_pch), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [293] = */ {
    "-Wjump-misses-init",
    "Warn when a jump misses a variable initialization.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ 293,
    CL_C | CL_ObjC | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_jump_misses_init), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [294] = */ {
    "-Wl,",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 3, /* .neg_idx = */ -1,
    CL_DRIVER | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 1 /* JoinedOrMissing */, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [295] = */ {
    "-Wlarger-than-",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_Wlarger_than_, N_OPTS, 13, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED | CL_UNDOCUMENTED | CL_WARNING,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [296] = */ {
    "-Wlarger-than=",
    "-Wlarger-than=<byte-size>	Warn if an object's size exceeds <byte-size>.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED | CL_WARNING,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 1 /* Host_Wide_Int */, 0, 0, 1 /* ByteSize */,
    offsetof (struct gcc_options, x_warn_larger_than_size), 0, CLVC_SIZE, 0, -1, -1 },
 /* [297] = */ {
    "-Wline-truncation",
    "Warn about truncated source lines.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ 297,
    CL_Fortran | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_line_truncation), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [298] = */ {
    "-Wliteral-suffix",
    "Warn when a string or character literal is followed by a ud-suffix which does not begin with an underscore.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ 298,
    CL_CXX | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_cpp_warn_literal_suffix), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [299] = */ {
    "-Wlogical-not-parentheses",
    "Warn when logical not is used on the left hand side operand of a comparison.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 24, /* .neg_idx = */ 299,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_logical_not_paren), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [300] = */ {
    "-Wlogical-op",
    "Warn when a logical operator is suspiciously always evaluating to true or false.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 11, /* .neg_idx = */ 300,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_logical_op), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [301] = */ {
    "-Wlong-long",
    "Do not warn about using \"long long\" when -pedantic.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 10, /* .neg_idx = */ 301,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_long_long), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [302] = */ {
    "-Wlto-type-mismatch",
    "During link time optimization warn about mismatched types of global declarations.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 18, /* .neg_idx = */ 302,
    CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_lto_type_mismatch), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [303] = */ {
    "-Wmain",
    "Warn about suspicious declarations of \"main\".",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 5, /* .neg_idx = */ 303,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_main), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [304] = */ {
    "-Wmaybe-uninitialized",
    "Warn about maybe uninitialized automatic variables.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 20, /* .neg_idx = */ 304,
    CL_C | CL_CXX | CL_Fortran | CL_LTO | CL_ObjC | CL_ObjCXX | CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_maybe_uninitialized), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [305] = */ {
    "-Wmemset-elt-size",
    "Warn about suspicious calls to memset where the third argument contains the number of elements not multiplied by the element size.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ 305,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_memset_elt_size), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [306] = */ {
    "-Wmemset-transposed-args",
    "Warn about suspicious calls to memset where the third argument is constant literal zero and the second is not.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 23, /* .neg_idx = */ 306,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_memset_transposed_args), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [307] = */ {
    "-Wmisleading-indentation",
    "Warn when the indentation of the code does not reflect the block structure.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 23, /* .neg_idx = */ 307,
    CL_C | CL_CXX | CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_misleading_indentation), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [308] = */ {
    "-Wmissing-attributes",
    "Warn about declarations of entities that may be missing attributes that related entities have been declared with.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 19, /* .neg_idx = */ 308,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_missing_attributes), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [309] = */ {
    "-Wmissing-braces",
    "Warn about possibly missing braces around initializers.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ 309,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_missing_braces), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [310] = */ {
    "-Wmissing-declarations",
    "Warn about global functions without previous declarations.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 21, /* .neg_idx = */ 310,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_missing_declarations), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [311] = */ {
    "-Wmissing-field-initializers",
    "Warn about missing fields in struct initializers.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 27, /* .neg_idx = */ 311,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_missing_field_initializers), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [312] = */ {
    "-Wmissing-format-attribute",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_Wsuggest_attribute_format, N_OPTS, 25, /* .neg_idx = */ 312,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [313] = */ {
    "-Wmissing-include-dirs",
    "Warn about user-specified include directories that do not exist.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 21, /* .neg_idx = */ 313,
    CL_C | CL_CXX | CL_Fortran | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_cpp_warn_missing_include_dirs), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [314] = */ {
    "-Wmissing-noreturn",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_Wsuggest_attribute_noreturn, N_OPTS, 17, /* .neg_idx = */ 314,
    CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [315] = */ {
    "-Wmissing-parameter-type",
    "Warn about function parameters declared without a type specifier in K&R-style functions.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 23, /* .neg_idx = */ 315,
    CL_C | CL_ObjC | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_missing_parameter_type), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [316] = */ {
    "-Wmissing-profile",
    "Warn in case profiles in -fprofile-use do not exist.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ 316,
    CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_missing_profile), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [317] = */ {
    "-Wmissing-prototypes",
    "Warn about global functions without prototypes.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 19, /* .neg_idx = */ 317,
    CL_C | CL_ObjC | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_missing_prototypes), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [318] = */ {
    "-Wmudflap",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_deprecated, N_OPTS, 8, /* .neg_idx = */ 318,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [319] = */ {
    "-Wmultichar",
    "Warn about use of multi-character character constants.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 10, /* .neg_idx = */ 319,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_cpp_warn_multichar), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [320] = */ {
    "-Wmultiple-inheritance",
    "Warn on direct multiple inheritance.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 21, /* .neg_idx = */ 320,
    CL_CXX | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_multiple_inheritance), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [321] = */ {
    "-Wmultistatement-macros",
    "Warn about unsafe macros expanding to multiple statements used as a body of a clause such as if, else, while, switch, or for.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 22, /* .neg_idx = */ 321,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_multistatement_macros), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [322] = */ {
    "-Wnamespaces",
    "Warn on namespace definition.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 11, /* .neg_idx = */ 322,
    CL_CXX | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_namespaces), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [323] = */ {
    "-Wnarrowing",
    "Warn about narrowing conversions within { } that are ill-formed in C++11.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 10, /* .neg_idx = */ 323,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_narrowing), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [324] = */ {
    "-Wnested-externs",
    "Warn about \"extern\" declarations not at file scope.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ 324,
    CL_C | CL_ObjC | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_nested_externs), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [325] = */ {
    "-Wno-alloc-size-larger-than",
    "-Wno-alloc-size-larger-than Disable Walloc-size-larger-than= warning.  Equivalent to Walloc-size-larger-than=<SIZE_MAX> or larger.",
    NULL,
    NULL,
    "18446744073709551615EiB", "none", OPT_Walloc_size_larger_than_, N_OPTS, 26, /* .neg_idx = */ 325,
    CL_C | CL_CXX | CL_LTO | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [326] = */ {
    "-Wno-alloca-larger-than",
    "-Wno-alloca-larger-than Disable Walloca-larger-than= warning.  Equivalent to Walloca-larger-than=<SIZE_MAX> or larger.",
    NULL,
    NULL,
    "18446744073709551615EiB", "none", OPT_Walloca_larger_than_, N_OPTS, 22, /* .neg_idx = */ 326,
    CL_C | CL_CXX | CL_D | CL_LTO | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [327] = */ {
    "-Wno-vla-larger-than",
    "-Wno-vla-larger-than Disable Wvla-larger-than= warning.  Equivalent to Wvla-larger-than=<SIZE_MAX> or larger.",
    NULL,
    NULL,
    "18446744073709551615EiB", "none", OPT_Wvla_larger_than_, N_OPTS, 19, /* .neg_idx = */ 327,
    CL_C | CL_CXX | CL_LTO | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [328] = */ {
    "-Wnoexcept",
    "Warn when a noexcept expression evaluates to false even though the expression can't actually throw.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ 328,
    CL_CXX | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_noexcept), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [329] = */ {
    "-Wnoexcept-type",
    "Warn if C++17 noexcept function type will change the mangled name of a symbol.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 14, /* .neg_idx = */ 329,
    CL_CXX | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_noexcept_type), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [330] = */ {
    "-Wnon-template-friend",
    "Warn when non-templatized friend functions are declared within a template.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 20, /* .neg_idx = */ 330,
    CL_CXX | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_nontemplate_friend), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [331] = */ {
    "-Wnon-virtual-dtor",
    "Warn about non-virtual destructors.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ 331,
    CL_CXX | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_nonvdtor), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [332] = */ {
    "-Wnonnull",
    "Warn about NULL being passed to argument slots marked as requiring non-NULL.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 8, /* .neg_idx = */ 332,
    CL_C | CL_CXX | CL_LTO | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_nonnull), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [333] = */ {
    "-Wnonnull-compare",
    "Warn if comparing pointer parameter with nonnull attribute with NULL.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ 333,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_nonnull_compare), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [334] = */ {
    "-Wnormalized",
    NULL,
    NULL,
    NULL,
    "nfc", "none", OPT_Wnormalized_, N_OPTS, 11, /* .neg_idx = */ 334,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [335] = */ {
    "-Wnormalized=",
    "-Wnormalized=[none|id|nfc|nfkc]	Warn about non-normalized Unicode strings.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_JOINED | CL_WARNING,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_cpp_warn_normalize), 7, CLVC_ENUM, 0, -1, -1 },
 /* [336] = */ {
    "-Wnull-dereference",
    "Warn if dereferencing a NULL pointer may lead to erroneous or undefined behavior.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ 336,
    CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_null_dereference), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [337] = */ {
    "-Wodr",
    "Warn about some C++ One Definition Rule violations during link time optimization.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 4, /* .neg_idx = */ 337,
    CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_odr_violations), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [338] = */ {
    "-Wold-style-cast",
    "Warn if a C-style cast is used in a program.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ 338,
    CL_CXX | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_old_style_cast), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [339] = */ {
    "-Wold-style-declaration",
    "Warn for obsolescent usage in a declaration.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 22, /* .neg_idx = */ 339,
    CL_C | CL_ObjC | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_old_style_declaration), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [340] = */ {
    "-Wold-style-definition",
    "Warn if an old-style parameter definition is used.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 21, /* .neg_idx = */ 340,
    CL_C | CL_ObjC | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_old_style_definition), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [341] = */ {
    "-Wopenmp-simd",
    "Warn if a simd directive is overridden by the vectorizer cost model.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ 341,
    CL_C | CL_CXX | CL_Fortran | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_openmp_simd), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [342] = */ {
    "-Woverflow",
    "Warn about overflow in arithmetic expressions.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ 342,
    CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_overflow), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [343] = */ {
    "-Woverlength-strings",
    "Warn if a string is longer than the maximum portable length specified by the standard.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 19, /* .neg_idx = */ 343,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_overlength_strings), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [344] = */ {
    "-Woverloaded-virtual",
    "Warn about overloaded virtual function names.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 19, /* .neg_idx = */ 344,
    CL_CXX | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_overloaded_virtual), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [345] = */ {
    "-Woverride-init",
    "Warn about overriding initializers without side effects.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 14, /* .neg_idx = */ 345,
    CL_C | CL_ObjC | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_override_init), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [346] = */ {
    "-Woverride-init-side-effects",
    "Warn about overriding initializers with side effects.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 27, /* .neg_idx = */ 346,
    CL_C | CL_ObjC | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_override_init_side_effects), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [347] = */ {
    "-Wp,",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 3, /* .neg_idx = */ -1,
    CL_DRIVER | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 1 /* JoinedOrMissing */, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [348] = */ {
    "-Wpacked",
    "Warn when the packed attribute has no effect on struct layout.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 7, /* .neg_idx = */ 348,
    CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_packed), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [349] = */ {
    "-Wpacked-bitfield-compat",
    "Warn about packed bit-fields whose offset changed in GCC 4.4.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 23, /* .neg_idx = */ 349,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_packed_bitfield_compat), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [350] = */ {
    "-Wpacked-not-aligned",
    "Warn when fields in a struct with the packed attribute are misaligned.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 19, /* .neg_idx = */ 350,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_packed_not_aligned), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [351] = */ {
    "-Wpadded",
    "Warn when padding is required to align structure members.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 7, /* .neg_idx = */ 351,
    CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_padded), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [352] = */ {
    "-Wparentheses",
    "Warn about possibly missing parentheses.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ 352,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_parentheses), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [353] = */ {
    "-Wpedantic",
    "Issue warnings needed for strict compliance to the standard.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ 353,
    CL_C | CL_CXX | CL_Fortran | CL_ObjC | CL_ObjCXX | CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_pedantic), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [354] = */ {
    "-Wpessimizing-move",
    "Warn about calling std::move on a local object in a return statement preventing copy elision.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ 354,
    CL_CXX | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_pessimizing_move), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [355] = */ {
    "-Wplacement-new",
    "Warn for placement new expressions with undefined behavior.",
    NULL,
    NULL,
    "1", "0", OPT_Wplacement_new_, N_OPTS, 14, /* .neg_idx = */ 355,
    CL_CXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [356] = */ {
    "-Wplacement-new=",
    "Warn for placement new expressions with undefined behavior.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ -1,
    CL_CXX | CL_JOINED | CL_WARNING,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 1 /* UInteger */, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_placement_new), 0, CLVC_BOOLEAN, 0, 0, 2 },
 /* [357] = */ {
    "-Wpmf-conversions",
    "Warn when converting the type of pointers to member functions.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ 357,
    CL_CXX | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_pmf2ptr), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [358] = */ {
    "-Wpointer-arith",
    "Warn about function pointer arithmetic.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 14, /* .neg_idx = */ 358,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_pointer_arith), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [359] = */ {
    "-Wpointer-compare",
    "Warn when a pointer is compared with a zero character constant.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ 359,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_pointer_compare), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [360] = */ {
    "-Wpointer-sign",
    "Warn when a pointer differs in signedness in an assignment.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ 360,
    CL_C | CL_ObjC | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_pointer_sign), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [361] = */ {
    "-Wpointer-to-int-cast",
    "Warn when a pointer is cast to an integer of a different size.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 20, /* .neg_idx = */ 361,
    CL_C | CL_ObjC | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_pointer_to_int_cast), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [362] = */ {
    "-Wpoison-system-directories",
    "Warn for -I and -L options using system directories if cross compiling",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 26, /* .neg_idx = */ 362,
    CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_poison_system_directories), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [363] = */ {
    "-Wpragmas",
    "Warn about misuses of pragmas.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 8, /* .neg_idx = */ 363,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_pragmas), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [364] = */ {
    "-Wprio-ctor-dtor",
    "Warn if constructor or destructors with priorities from 0 to 100 are used.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ 364,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_prio_ctor_dtor), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [365] = */ {
    "-Wproperty-assign-default",
    "Warn if a property for an Objective-C object has no assign semantics specified.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 24, /* .neg_idx = */ 365,
    CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_property_assign_default), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [366] = */ {
    "-Wprotocol",
    "Warn if inherited methods are unimplemented.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ 366,
    CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_protocol), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [367] = */ {
    "-Wpsabi",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 6, /* .neg_idx = */ 367,
    CL_C | CL_CXX | CL_D | CL_LTO | CL_ObjC | CL_ObjCXX | CL_UNDOCUMENTED | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_psabi), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [368] = */ {
    "-Wreal-q-constant",
    "Warn about real-literal-constants with 'q' exponent-letter.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ 368,
    CL_Fortran | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_real_q_constant), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [369] = */ {
    "-Wrealloc-lhs",
    "Warn when a left-hand-side array variable is reallocated.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ 369,
    CL_Fortran | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_realloc_lhs), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [370] = */ {
    "-Wrealloc-lhs-all",
    "Warn when a left-hand-side variable is reallocated.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ 370,
    CL_Fortran | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_realloc_lhs_all), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [371] = */ {
    "-Wredundant-decls",
    "Warn about multiple declarations of the same object.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ 371,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_redundant_decls), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [372] = */ {
    "-Wredundant-move",
    "Warn about redundant calls to std::move.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ 372,
    CL_CXX | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_redundant_move), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [373] = */ {
    "-Wregister",
    "Warn about uses of register storage specifier.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ 373,
    CL_CXX | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_register), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [374] = */ {
    "-Wreorder",
    "Warn when the compiler reorders code.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 8, /* .neg_idx = */ 374,
    CL_CXX | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_reorder), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [375] = */ {
    "-Wrestrict",
    "Warn when an argument passed to a restrict-qualified parameter aliases with another argument.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ 375,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_restrict), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [376] = */ {
    "-Wreturn-local-addr",
    "Warn about returning a pointer/reference to a local or temporary variable.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 18, /* .neg_idx = */ 376,
    CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_return_local_addr), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [377] = */ {
    "-Wreturn-type",
    "Warn whenever a function's return type defaults to \"int\" (C), or about inconsistent return types (C++).",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ 377,
    CL_C | CL_CXX | CL_Fortran | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_return_type), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [378] = */ {
    "-Wscalar-storage-order",
    "Warn on suspicious constructs involving reverse scalar storage order.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 21, /* .neg_idx = */ 378,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [379] = */ {
    "-Wselector",
    "Warn if a selector has multiple methods.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ 379,
    CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_selector), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [380] = */ {
    "-Wsequence-point",
    "Warn about possible violations of sequence point rules.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ 380,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_sequence_point), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [381] = */ {
    "-Wshadow",
    "Warn when one variable shadows another.  Same as -Wshadow=global.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 7, /* .neg_idx = */ 381,
    CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_shadow), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [382] = */ {
    "-Wshadow-compatible-local",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_Wshadow_compatible_local, N_OPTS, 24, /* .neg_idx = */ 382,
    CL_COMMON | CL_UNDOCUMENTED | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [383] = */ {
    "-Wshadow-ivar",
    "Warn if a local declaration hides an instance variable.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ 383,
    CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_shadow_ivar), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [384] = */ {
    "-Wshadow-local",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_Wshadow_local, N_OPTS, 13, /* .neg_idx = */ 384,
    CL_COMMON | CL_UNDOCUMENTED | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [385] = */ {
    "-Wshadow=compatible-local",
    "Warn when one local variable shadows another local variable or parameter of compatible type.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 24, /* .neg_idx = */ 385,
    CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_shadow_compatible_local), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [386] = */ {
    "-Wshadow=global",
    "Warn when one variable shadows another (globally).",
    NULL,
    NULL,
    NULL, NULL, OPT_Wshadow, N_OPTS, 14, /* .neg_idx = */ 386,
    CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [387] = */ {
    "-Wshadow=local",
    "Warn when one local variable shadows another local variable or parameter.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ 387,
    CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_shadow_local), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [388] = */ {
    "-Wshift-count-negative",
    "Warn if shift count is negative.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 21, /* .neg_idx = */ 388,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_shift_count_negative), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [389] = */ {
    "-Wshift-count-overflow",
    "Warn if shift count >= width of type.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 21, /* .neg_idx = */ 389,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_shift_count_overflow), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [390] = */ {
    "-Wshift-negative-value",
    "Warn if left shifting a negative value.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 21, /* .neg_idx = */ 390,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_shift_negative_value), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [391] = */ {
    "-Wshift-overflow",
    "Warn if left shift of a signed value overflows.",
    NULL,
    NULL,
    "1", "0", OPT_Wshift_overflow_, N_OPTS, 15, /* .neg_idx = */ 391,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [392] = */ {
    "-Wshift-overflow=",
    "Warn if left shift of a signed value overflows.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_JOINED | CL_WARNING,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 1 /* UInteger */, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_shift_overflow), 0, CLVC_BOOLEAN, 0, 0, 2 },
 /* [393] = */ {
    "-Wsign-compare",
    "Warn about signed-unsigned comparisons.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ 393,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_sign_compare), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [394] = */ {
    "-Wsign-conversion",
    "Warn for implicit type conversions between signed and unsigned integers.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ 394,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_sign_conversion), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [395] = */ {
    "-Wsign-promo",
    "Warn when overload promotes from unsigned to signed.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 11, /* .neg_idx = */ 395,
    CL_CXX | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_sign_promo), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [396] = */ {
    "-Wsized-deallocation",
    "Warn about missing sized deallocation functions.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 19, /* .neg_idx = */ 396,
    CL_CXX | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_sized_deallocation), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [397] = */ {
    "-Wsizeof-array-argument",
    "Warn when sizeof is applied on a parameter declared as an array.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 22, /* .neg_idx = */ 397,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_sizeof_array_argument), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [398] = */ {
    "-Wsizeof-pointer-div",
    "Warn about suspicious divisions of two sizeof expressions that don't work correctly with pointers.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 19, /* .neg_idx = */ 398,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_sizeof_pointer_div), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [399] = */ {
    "-Wsizeof-pointer-memaccess",
    "Warn about suspicious length parameters to certain string functions if the argument uses sizeof.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 25, /* .neg_idx = */ 399,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_sizeof_pointer_memaccess), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [400] = */ {
    "-Wspeculative",
    "Warn from speculative compiles such as __traits(compiles).",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ 400,
    CL_D,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [401] = */ {
    "-Wstack-protector",
    "Warn when not issuing stack smashing protection for some reason.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ 401,
    CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_stack_protect), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [402] = */ {
    "-Wstack-usage=",
    "-Wstack-usage=<byte-size>	Warn if stack usage might exceed <byte-size>.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED | CL_WARNING,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 1 /* Host_Wide_Int */, 0, 0, 1 /* ByteSize */,
    offsetof (struct gcc_options, x_warn_stack_usage), 0, CLVC_SIZE, 0, -1, -1 },
 /* [403] = */ {
    "-Wstrict-aliasing",
    "Warn about code which might break strict aliasing rules.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ 403,
    CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [404] = */ {
    "-Wstrict-aliasing=",
    "Warn about code which might break strict aliasing rules.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_COMMON | CL_JOINED | CL_WARNING,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 1 /* UInteger */, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_strict_aliasing), 0, CLVC_BOOLEAN, 0, 0, 3 },
 /* [405] = */ {
    "-Wstrict-null-sentinel",
    "Warn about uncasted NULL used as sentinel.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 21, /* .neg_idx = */ 405,
    CL_CXX | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_strict_null_sentinel), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [406] = */ {
    "-Wstrict-overflow",
    "Warn about optimizations that assume that signed overflow is undefined.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ 406,
    CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [407] = */ {
    "-Wstrict-overflow=",
    "Warn about optimizations that assume that signed overflow is undefined.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_COMMON | CL_JOINED | CL_WARNING,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 1 /* UInteger */, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_strict_overflow), 0, CLVC_BOOLEAN, 0, 0, 5 },
 /* [408] = */ {
    "-Wstrict-prototypes",
    "Warn about unprototyped function declarations.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 18, /* .neg_idx = */ 408,
    CL_C | CL_ObjC | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_strict_prototypes), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [409] = */ {
    "-Wstrict-selector-match",
    "Warn if type signatures of candidate methods do not match exactly.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 22, /* .neg_idx = */ 409,
    CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_strict_selector_match), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [410] = */ {
    "-Wstringop-overflow",
    "Warn about buffer overflow in string manipulation functions like memcpy and strcpy.",
    NULL,
    NULL,
    "2", "0", OPT_Wstringop_overflow_, N_OPTS, 18, /* .neg_idx = */ 410,
    CL_C | CL_CXX | CL_LTO | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [411] = */ {
    "-Wstringop-overflow=",
    "Under the control of Object Size type, warn about buffer overflow in string manipulation functions like memcpy and strcpy.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 19, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_LTO | CL_ObjC | CL_ObjCXX | CL_JOINED | CL_WARNING,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 1 /* UInteger */, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_stringop_overflow), 0, CLVC_BOOLEAN, 0, 0, 4 },
 /* [412] = */ {
    "-Wstringop-truncation",
    "Warn about truncation in string manipulation functions like strncat and strncpy.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 20, /* .neg_idx = */ 412,
    CL_C | CL_CXX | CL_LTO | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_stringop_truncation), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [413] = */ {
    "-Wsubobject-linkage",
    "Warn if a class type has a base or a field whose type uses the anonymous namespace or depends on a type with no linkage.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 18, /* .neg_idx = */ 413,
    CL_CXX | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_subobject_linkage), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [414] = */ {
    "-Wsuggest-attribute=cold",
    "Warn about functions which might be candidates for __attribute__((cold)).",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 23, /* .neg_idx = */ 414,
    CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_suggest_attribute_cold), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [415] = */ {
    "-Wsuggest-attribute=const",
    "Warn about functions which might be candidates for __attribute__((const)).",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 24, /* .neg_idx = */ 415,
    CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_suggest_attribute_const), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [416] = */ {
    "-Wsuggest-attribute=format",
    "Warn about functions which might be candidates for format attributes.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 25, /* .neg_idx = */ 416,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_suggest_attribute_format), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [417] = */ {
    "-Wsuggest-attribute=malloc",
    "Warn about functions which might be candidates for __attribute__((malloc)).",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 25, /* .neg_idx = */ 417,
    CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_suggest_attribute_malloc), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [418] = */ {
    "-Wsuggest-attribute=noreturn",
    "Warn about functions which might be candidates for __attribute__((noreturn)).",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 27, /* .neg_idx = */ 418,
    CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_suggest_attribute_noreturn), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [419] = */ {
    "-Wsuggest-attribute=pure",
    "Warn about functions which might be candidates for __attribute__((pure)).",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 23, /* .neg_idx = */ 419,
    CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_suggest_attribute_pure), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [420] = */ {
    "-Wsuggest-final-methods",
    "Warn about C++ virtual methods where adding final keyword would improve code quality.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 22, /* .neg_idx = */ 420,
    CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_suggest_final_methods), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [421] = */ {
    "-Wsuggest-final-types",
    "Warn about C++ polymorphic types where adding final keyword would improve code quality.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 20, /* .neg_idx = */ 421,
    CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_suggest_final_types), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [422] = */ {
    "-Wsuggest-override",
    "Suggest that the override keyword be used when the declaration of a virtual function overrides another.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ 422,
    CL_CXX | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_override), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [423] = */ {
    "-Wsurprising",
    "Warn about \"suspicious\" constructs.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 11, /* .neg_idx = */ 423,
    CL_Fortran | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_surprising), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [424] = */ {
    "-Wswitch",
    "Warn about enumerated switches, with no default, missing a case.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 7, /* .neg_idx = */ 424,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_switch), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [425] = */ {
    "-Wswitch-bool",
    "Warn about switches with boolean controlling expression.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ 425,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_switch_bool), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [426] = */ {
    "-Wswitch-default",
    "Warn about enumerated switches missing a \"default:\" statement.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ 426,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_switch_default), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [427] = */ {
    "-Wswitch-enum",
    "Warn about all enumerated switches missing a specific case.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ 427,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_switch_enum), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [428] = */ {
    "-Wswitch-unreachable",
    "Warn about statements between switch's controlling expression and the first case.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 19, /* .neg_idx = */ 428,
    CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_switch_unreachable), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [429] = */ {
    "-Wsync-nand",
    "Warn when __sync_fetch_and_nand and __sync_nand_and_fetch built-in functions are used.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 10, /* .neg_idx = */ 429,
    CL_C | CL_CXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_sync_nand), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [430] = */ {
    "-Wsynth",
    "Deprecated.  This switch has no effect.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 6, /* .neg_idx = */ 430,
    CL_CXX | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_synth), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [431] = */ {
    "-Wsystem-headers",
    "Do not suppress warnings from system headers.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ 431,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_system_headers), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [432] = */ {
    "-Wtabs",
    "Permit nonconforming uses of the tab character.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 5, /* .neg_idx = */ 432,
    CL_Fortran | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_tabs), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [433] = */ {
    "-Wtarget-lifetime",
    "Warn if the pointer in a pointer assignment might outlive its target.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ 433,
    CL_Fortran | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_target_lifetime), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [434] = */ {
    "-Wtautological-compare",
    "Warn if a comparison always evaluates to true or false.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 21, /* .neg_idx = */ 434,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_tautological_compare), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [435] = */ {
    "-Wtemplates",
    "Warn on primary template declaration.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 10, /* .neg_idx = */ 435,
    CL_CXX | CL_D | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_templates), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [436] = */ {
    "-Wterminate",
    "Warn if a throw expression will always result in a call to terminate().",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 10, /* .neg_idx = */ 436,
    CL_CXX | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_terminate), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [437] = */ {
    "-Wtraditional",
    "Warn about features not present in traditional C.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ 437,
    CL_C | CL_ObjC | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_traditional), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [438] = */ {
    "-Wtraditional-conversion",
    "Warn of prototypes causing type conversions different from what would happen in the absence of prototype.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 23, /* .neg_idx = */ 438,
    CL_C | CL_ObjC | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_traditional_conversion), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [439] = */ {
    "-Wtrampolines",
    "Warn whenever a trampoline is generated.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ 439,
    CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_trampolines), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [440] = */ {
    "-Wtrigraphs",
    "Warn if trigraphs are encountered that might affect the meaning of the program.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 10, /* .neg_idx = */ 440,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_cpp_warn_trigraphs), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [441] = */ {
    "-Wtype-limits",
    "Warn if a comparison is always true or always false due to the limited range of the data type.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ 441,
    CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_type_limits), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [442] = */ {
    "-Wundeclared-selector",
    "Warn about @selector()s without previously declared methods.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 20, /* .neg_idx = */ 442,
    CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_undeclared_selector), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [443] = */ {
    "-Wundef",
    "Warn if an undefined macro is used in an #if directive.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 6, /* .neg_idx = */ 443,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_cpp_warn_undef), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [444] = */ {
    "-Wundefined-do-loop",
    "Warn about an invalid DO loop.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 18, /* .neg_idx = */ 444,
    CL_Fortran | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_undefined_do_loop), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [445] = */ {
    "-Wunderflow",
    "Warn about underflow of numerical constant expressions.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 10, /* .neg_idx = */ 445,
    CL_Fortran | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_underflow), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [446] = */ {
    "-Wuninitialized",
    "Warn about uninitialized automatic variables.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 14, /* .neg_idx = */ 446,
    CL_C | CL_CXX | CL_Fortran | CL_LTO | CL_ObjC | CL_ObjCXX | CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_uninitialized), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [447] = */ {
    "-Wunknown-pragmas",
    "Warn about unrecognized pragmas.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ 447,
    CL_C | CL_CXX | CL_D | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_unknown_pragmas), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [448] = */ {
    "-Wunreachable-code",
    "Does nothing. Preserved for backward compatibility.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_ignore, N_OPTS, 17, /* .neg_idx = */ 448,
    CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [449] = */ {
    "-Wunsafe-loop-optimizations",
    "Does nothing. Preserved for backward compatibility.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_ignore, N_OPTS, 26, /* .neg_idx = */ 449,
    CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [450] = */ {
    "-Wunsuffixed-float-constants",
    "Warn about unsuffixed float constants.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 27, /* .neg_idx = */ 450,
    CL_C | CL_ObjC | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_unsuffixed_float_constants), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [451] = */ {
    "-Wunused",
    "Enable all -Wunused- warnings.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 7, /* .neg_idx = */ 451,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_unused), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [452] = */ {
    "-Wunused-but-set-parameter",
    "Warn when a function parameter is only set, otherwise unused.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 25, /* .neg_idx = */ 452,
    CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_unused_but_set_parameter), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [453] = */ {
    "-Wunused-but-set-variable",
    "Warn when a variable is only set, otherwise unused.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 24, /* .neg_idx = */ 453,
    CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_unused_but_set_variable), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [454] = */ {
    "-Wunused-const-variable",
    "Warn when a const variable is unused.",
    NULL,
    NULL,
    "2", "0", OPT_Wunused_const_variable_, N_OPTS, 22, /* .neg_idx = */ 454,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [455] = */ {
    "-Wunused-const-variable=",
    "Warn when a const variable is unused.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 23, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_JOINED | CL_WARNING,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 1 /* UInteger */, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_unused_const_variable), 0, CLVC_BOOLEAN, 0, 0, 2 },
 /* [456] = */ {
    "-Wunused-dummy-argument",
    "Warn about unused dummy arguments.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 22, /* .neg_idx = */ 456,
    CL_Fortran | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_unused_dummy_argument), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [457] = */ {
    "-Wunused-function",
    "Warn when a function is unused.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ 457,
    CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_unused_function), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [458] = */ {
    "-Wunused-label",
    "Warn when a label is unused.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ 458,
    CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_unused_label), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [459] = */ {
    "-Wunused-local-typedefs",
    "Warn when typedefs locally defined in a function are not used.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 22, /* .neg_idx = */ 459,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_unused_local_typedefs), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [460] = */ {
    "-Wunused-macros",
    "Warn about macros defined in the main file that are not used.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 14, /* .neg_idx = */ 460,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_cpp_warn_unused_macros), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [461] = */ {
    "-Wunused-parameter",
    "Warn when a function parameter is unused.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ 461,
    CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_unused_parameter), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [462] = */ {
    "-Wunused-result",
    "Warn if a caller of a function, marked with attribute warn_unused_result, does not use its return value.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 14, /* .neg_idx = */ 462,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_unused_result), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [463] = */ {
    "-Wunused-value",
    "Warn when an expression value is unused.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ 463,
    CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_unused_value), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [464] = */ {
    "-Wunused-variable",
    "Warn when a variable is unused.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ 464,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_unused_variable), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [465] = */ {
    "-Wuse-without-only",
    "Warn about USE statements that have no ONLY qualifier.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ 465,
    CL_Fortran | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_use_without_only), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [466] = */ {
    "-Wuseless-cast",
    "Warn about useless casts.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ 466,
    CL_CXX | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_useless_cast), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [467] = */ {
    "-Wvarargs",
    "Warn about questionable usage of the macros used to retrieve variable arguments.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 8, /* .neg_idx = */ 467,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_varargs), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [468] = */ {
    "-Wvariadic-macros",
    "Warn about using variadic macros.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ 468,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_cpp_warn_variadic_macros), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [469] = */ {
    "-Wvector-operation-performance",
    "Warn when a vector operation is compiled outside the SIMD.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 29, /* .neg_idx = */ 469,
    CL_COMMON | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_vector_operation_performance), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [470] = */ {
    "-Wvirtual-inheritance",
    "Warn on direct virtual inheritance.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 20, /* .neg_idx = */ 470,
    CL_CXX | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_virtual_inheritance), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [471] = */ {
    "-Wvirtual-move-assign",
    "Warn if a virtual base has a non-trivial move assignment operator.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 20, /* .neg_idx = */ 471,
    CL_CXX | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_virtual_move_assign), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [472] = */ {
    "-Wvla",
    "Warn if a variable length array is used.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 4, /* .neg_idx = */ 472,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_vla), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [473] = */ {
    "-Wvla-larger-than=",
    "-Wvla-larger-than=<number>	Warn on unbounded uses of variable-length arrays, and on bounded uses of variable-length arrays whose bound can be larger than <number> bytes. <number> bytes.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ 473,
    CL_C | CL_CXX | CL_LTO | CL_ObjC | CL_ObjCXX | CL_JOINED | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Host_Wide_Int */, 0, 0, 1 /* ByteSize */,
    offsetof (struct gcc_options, x_warn_vla_limit), 0, CLVC_SIZE, 0, -1, -1 },
 /* [474] = */ {
    "-Wvolatile-register-var",
    "Warn when a register variable is declared volatile.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 22, /* .neg_idx = */ 474,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_volatile_register_var), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [475] = */ {
    "-Wwrite-strings",
    "In C++, nonzero means warn about deprecated conversion from string literals to 'char *'.  In C, similar warning, except that the conversion is of course not deprecated by the ISO C standard.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 14, /* .neg_idx = */ 475,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_write_strings), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [476] = */ {
    "-Wzero-as-null-pointer-constant",
    "Warn when a literal '0' is used as null pointer.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 30, /* .neg_idx = */ 476,
    CL_CXX | CL_ObjCXX | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_zero_as_null_pointer_constant), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [477] = */ {
    "-Wzerotrip",
    "Warn about zero-trip DO loops.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ 477,
    CL_Fortran | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_warn_zerotrip), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [478] = */ {
    "-X",
    "Generate JSON file.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 1, /* .neg_idx = */ -1,
    CL_D,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [479] = */ {
    "-Xassembler",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 10, /* .neg_idx = */ -1,
    CL_DRIVER | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [480] = */ {
    "-Xf",
    "-Xf <file>	Write JSON output to the given <file>.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 2, /* .neg_idx = */ -1,
    CL_D | CL_JOINED | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [481] = */ {
    "-Xlinker",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 7, /* .neg_idx = */ -1,
    CL_DRIVER | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [482] = */ {
    "-Xpreprocessor",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ -1,
    CL_DRIVER | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [483] = */ {
    "-Z",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 1, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [484] = */ {
    "-ansi",
    "A synonym for -std=c89 (for C) or -std=c++98 (for C++).",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 4, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [485] = */ {
    "-aux-info",
    "-aux-info <file>	Emit declaration information into <file>.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 8, /* .neg_idx = */ -1,
    CL_COMMON | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_aux_info_file_name), 0, CLVC_STRING, 0, -1, -1 },
 /* [486] = */ {
    "-aux-info=",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_aux_info, N_OPTS, 9, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [487] = */ {
    "-auxbase",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 7, /* .neg_idx = */ -1,
    CL_COMMON | CL_SEPARATE,
    0, 0, 0, 0, 0, 1 /* RejectDriver */, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_aux_base_name), 0, CLVC_STRING, 0, -1, -1 },
 /* [488] = */ {
    "-auxbase-strip",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ -1,
    CL_COMMON | CL_SEPARATE,
    0, 0, 0, 0, 0, 1 /* RejectDriver */, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [489] = */ {
    "-c",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 1, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [490] = */ {
    "-coverage",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 8, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [491] = */ {
    "-cpp",
    "Enable preprocessing.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 3, /* .neg_idx = */ 1310,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [492] = */ {
    "-cpp=",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 4, /* .neg_idx = */ 1310,
    CL_Fortran | CL_JOINED | CL_UNDOCUMENTED | CL_NO_DWARF_RECORD,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [493] = */ {
    "-d",
    "-d<letters>	Enable dumps from specific passes of the compiler.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 1, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_Fortran | CL_ObjC | CL_ObjCXX | CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [494] = */ {
    "-debuglib=",
    "Debug library to use instead of phobos.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_d, 9, /* .neg_idx = */ -1,
    CL_DRIVER | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [495] = */ {
    "-defaultlib=",
    "Default library to use instead of phobos.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_d, 11, /* .neg_idx = */ -1,
    CL_DRIVER | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [496] = */ {
    "-dstartfiles",
    "Do link the standard D startup files in the compilation.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_d, 11, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [497] = */ {
    "-dumpbase",
    "-dumpbase <file>	Set the file basename to be used for dumps.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_d, 8, /* .neg_idx = */ -1,
    CL_COMMON | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_dump_base_name), 0, CLVC_STRING, 0, -1, -1 },
 /* [498] = */ {
    "-dumpdir",
    "-dumpdir <dir>	Set the directory name to be used for dumps.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_d, 7, /* .neg_idx = */ -1,
    CL_COMMON | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_dump_dir_name), 0, CLVC_STRING, 0, -1, -1 },
 /* [499] = */ {
    "-dumpfullversion",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_d, 15, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [500] = */ {
    "-dumpmachine",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_d, 11, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [501] = */ {
    "-dumpspecs",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_d, 9, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [502] = */ {
    "-dumpversion",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_d, 11, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [503] = */ {
    "-e",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 1, /* .neg_idx = */ -1,
    CL_DRIVER | CL_JOINED | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [504] = */ {
    "-export-dynamic",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_e, 14, /* .neg_idx = */ -1,
    CL_DRIVER | CL_UNDOCUMENTED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [505] = */ {
    "-fPIC",
    "Generate position-independent code if possible (large mode).",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 4, /* .neg_idx = */ 506,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_pic), 0, CLVC_EQUAL, 2, -1, -1 },
 /* [506] = */ {
    "-fPIE",
    "Generate position-independent code for executables if possible (large mode).",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 4, /* .neg_idx = */ 940,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_pie), 0, CLVC_EQUAL, 2, -1, -1 },
 /* [507] = */ {
    "-fRTS=",
    "Select the runtime.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 5, /* .neg_idx = */ -1,
    CL_Ada | CL_AdaSCIL | CL_AdaWhy | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [508] = */ {
    "-fabi-compat-version=",
    "The version of the C++ ABI used for -Wabi warnings and link compatibility aliases.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 20, /* .neg_idx = */ -1,
    CL_CXX | CL_ObjCXX | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 1 /* UInteger */, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_abi_compat_version), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [509] = */ {
    "-fabi-version=",
    "The version of the C++ ABI in use.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 1 /* UInteger */, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_abi_version), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [510] = */ {
    "-faccess-control",
    "Enforce class member access control semantics.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ 510,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_access_control), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [511] = */ {
    "-fada-spec-parent=",
    "-fada-spec-parent=unit  Dump Ada specs as child units of given parent.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_ada_specs_parent), 0, CLVC_STRING, 0, -1, -1 },
 /* [512] = */ {
    "-faggressive-function-elimination",
    "Eliminate multiple function invocations also for impure functions.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 32, /* .neg_idx = */ 512,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_aggressive_function_elimination), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [513] = */ {
    "-faggressive-loop-optimizations",
    "Aggressively optimize loops using language constraints.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 30, /* .neg_idx = */ 513,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_aggressive_loop_optimizations), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [514] = */ {
    "-falign-commons",
    "Enable alignment of COMMON blocks.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 14, /* .neg_idx = */ 514,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_align_commons), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [515] = */ {
    "-falign-functions",
    "Align the start of functions.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ 515,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_align_functions), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [516] = */ {
    "-falign-functions=",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_str_align_functions), 0, CLVC_STRING, 0, -1, -1 },
 /* [517] = */ {
    "-falign-jumps",
    "Align labels which are only reached by jumping.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ 517,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_align_jumps), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [518] = */ {
    "-falign-jumps=",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_str_align_jumps), 0, CLVC_STRING, 0, -1, -1 },
 /* [519] = */ {
    "-falign-labels",
    "Align all labels.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ 519,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_align_labels), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [520] = */ {
    "-falign-labels=",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 14, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_str_align_labels), 0, CLVC_STRING, 0, -1, -1 },
 /* [521] = */ {
    "-falign-loops",
    "Align the start of loops.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ 521,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_align_loops), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [522] = */ {
    "-falign-loops=",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_str_align_loops), 0, CLVC_STRING, 0, -1, -1 },
 /* [523] = */ {
    "-faligned-new",
    "Support C++17 allocation of over-aligned types.",
    NULL,
    NULL,
    "1", "0", OPT_faligned_new_, N_OPTS, 12, /* .neg_idx = */ 523,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [524] = */ {
    "-faligned-new=",
    "-faligned-new=<N> Use C++17 over-aligned type allocation for alignments greater than N.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ -1,
    CL_CXX | CL_ObjCXX | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 1 /* UInteger */, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_aligned_new_threshold), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [525] = */ {
    "-fall-instantiations",
    "Generate code for all template instantiations.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 19, /* .neg_idx = */ 525,
    CL_D,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [526] = */ {
    "-fall-intrinsics",
    "All intrinsics procedures are available regardless of selected standard.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ -1,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_all_intrinsics), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [527] = */ {
    "-fall-virtual",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_deprecated, N_OPTS, 12, /* .neg_idx = */ 527,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [528] = */ {
    "-fallow-leading-underscore",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 25, /* .neg_idx = */ 528,
    CL_Fortran | CL_UNDOCUMENTED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_allow_leading_underscore), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [529] = */ {
    "-fallow-parameterless-variadic-functions",
    "Allow variadic functions without named parameter.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 39, /* .neg_idx = */ 529,
    CL_C | CL_ObjC,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_allow_parameterless_variadic_functions), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [530] = */ {
    "-falt-external-templates",
    "No longer supported.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_deprecated, N_OPTS, 23, /* .neg_idx = */ 530,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [531] = */ {
    "-fargument-alias",
    "Does nothing. Preserved for backward compatibility.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_ignore, N_OPTS, 15, /* .neg_idx = */ 531,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [532] = */ {
    "-fargument-noalias",
    "Does nothing. Preserved for backward compatibility.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_ignore, N_OPTS, 17, /* .neg_idx = */ 532,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [533] = */ {
    "-fargument-noalias-anything",
    "Does nothing. Preserved for backward compatibility.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_ignore, N_OPTS, 26, /* .neg_idx = */ 533,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [534] = */ {
    "-fargument-noalias-global",
    "Does nothing. Preserved for backward compatibility.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_ignore, N_OPTS, 24, /* .neg_idx = */ 534,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [535] = */ {
    "-fasan-shadow-offset=",
    "-fasan-shadow-offset=<number>	Use custom shadow memory offset.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 20, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_common_deferred_options), 0, CLVC_DEFER, 0, -1, -1 },
 /* [536] = */ {
    "-fasm",
    "Recognize the \"asm\" keyword.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 4, /* .neg_idx = */ 536,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_no_asm), 0, CLVC_EQUAL, 0, -1, -1 },
 /* [537] = */ {
    "-fassert",
    "Generate code for assert contracts.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 7, /* .neg_idx = */ 537,
    CL_D,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_assert), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [538] = */ {
    "-fassociative-math",
    "Allow optimization for floating-point arithmetic which may change the result of the operation due to rounding.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ 538,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_associative_math), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [539] = */ {
    "-fassume-phsa",
    "Assume we are finalizing for phsa and its libhsail-rt.  Enables additional phsa-specific optimizations (default).",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ 539,
    CL_BRIG | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_assume_phsa), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [540] = */ {
    "-fasynchronous-unwind-tables",
    "Generate unwind tables that are exact at each instruction boundary.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 27, /* .neg_idx = */ 540,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_asynchronous_unwind_tables), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [541] = */ {
    "-fauto-inc-dec",
    "Generate auto-inc/dec instructions.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ 541,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_auto_inc_dec), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [542] = */ {
    "-fauto-profile",
    "Use sample profile information for call graph node weights. The default profile file is fbdata.afdo in 'pwd'.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ 542,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_auto_profile), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [543] = */ {
    "-fauto-profile=",
    "Use sample profile information for call graph node weights. The profile file is specified in the argument.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 14, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_auto_profile_file), 0, CLVC_STRING, 0, -1, -1 },
 /* [544] = */ {
    "-fautomatic",
    "Do not treat local variables and COMMON blocks as if they were named in SAVE statements.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 10, /* .neg_idx = */ 544,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_automatic), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [545] = */ {
    "-fbackslash",
    "Specify that backslash in string introduces an escape character.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 10, /* .neg_idx = */ 545,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_backslash), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [546] = */ {
    "-fbacktrace",
    "Produce a backtrace when a runtime error is encountered.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 10, /* .neg_idx = */ 546,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_backtrace), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [547] = */ {
    "-fblas-matmul-limit=",
    "-fblas-matmul-limit=<n>	Size of the smallest matrix for which matmul will use BLAS.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 19, /* .neg_idx = */ -1,
    CL_Fortran | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 1 /* UInteger */, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_blas_matmul_limit), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [548] = */ {
    "-fbounds-check",
    "Generate code to check bounds before indexing arrays.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ 548,
    CL_D | CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_bounds_check), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [549] = */ {
    "-fbounds-check=",
    "-fbounds-check=[on|safeonly|off]	Turn array bounds checks on, in @safe code only, or off.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 14, /* .neg_idx = */ -1,
    CL_D | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_bounds_check), 3, CLVC_ENUM, 0, -1, -1 },
 /* [550] = */ {
    "-fbranch-count-reg",
    "Replace add, compare, branch with branch on count register.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ 550,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_branch_on_count_reg), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [551] = */ {
    "-fbranch-probabilities",
    "Use profiling information for branch probabilities.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 21, /* .neg_idx = */ 551,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_branch_probabilities), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [552] = */ {
    "-fbranch-target-load-optimize",
    "Perform branch target load optimization before prologue / epilogue threading.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 28, /* .neg_idx = */ 552,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_branch_target_load_optimize), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [553] = */ {
    "-fbranch-target-load-optimize2",
    "Perform branch target load optimization after prologue / epilogue threading.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 29, /* .neg_idx = */ 553,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_branch_target_load_optimize2), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [554] = */ {
    "-fbtr-bb-exclusive",
    "Restrict target load migration not to re-use registers in any basic block.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ 554,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_btr_bb_exclusive), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [555] = */ {
    "-fbuilding-libgcc",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ 555,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_UNDOCUMENTED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_building_libgcc), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [556] = */ {
    "-fbuilding-libphobos-tests",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 25, /* .neg_idx = */ 556,
    CL_D | CL_UNDOCUMENTED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_building_libphobos_tests), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [557] = */ {
    "-fbuiltin",
    "Recognize built-in functions.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 8, /* .neg_idx = */ 557,
    CL_C | CL_CXX | CL_D | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_no_builtin), 0, CLVC_EQUAL, 0, -1, -1 },
 /* [558] = */ {
    "-fbuiltin-",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ 558,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [559] = */ {
    "-fbuiltin-printf",
    "Ignored.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_fbuiltin_, 15, /* .neg_idx = */ 559,
    CL_Ada | CL_UNDOCUMENTED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [560] = */ {
    "-fc-prototypes",
    "Generate C prototypes from BIND(C) declarations.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ 560,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_c_prototypes), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [561] = */ {
    "-fc-prototypes-external",
    "Generate C prototypes from non-BIND(C) external procedure definitions.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 22, /* .neg_idx = */ 561,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_c_prototypes_external), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [562] = */ {
    "-fcall-saved-",
    "-fcall-saved-<register>	Mark <register> as being preserved across functions.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_common_deferred_options), 0, CLVC_DEFER, 0, -1, -1 },
 /* [563] = */ {
    "-fcall-used-",
    "-fcall-used-<register>	Mark <register> as being corrupted by function calls.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 11, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_common_deferred_options), 0, CLVC_DEFER, 0, -1, -1 },
 /* [564] = */ {
    "-fcaller-saves",
    "Save registers around function calls.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ 564,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_caller_saves), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [565] = */ {
    "-fcanonical-system-headers",
    "Where shorter, use canonicalized paths to systems headers.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 25, /* .neg_idx = */ 565,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [566] = */ {
    "-fcf-protection",
    NULL,
    NULL,
    NULL,
    "full", NULL, OPT_fcf_protection_, N_OPTS, 14, /* .neg_idx = */ -1,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [567] = */ {
    "-fcf-protection=",
    "-fcf-protection=[full|branch|return|none]	Instrument functions with checks to verify jump/call/return control-flow transfer instructions have valid targets.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_cf_protection), 4, CLVC_ENUM, 0, -1, -1 },
 /* [568] = */ {
    "-fchar8_t",
    "Enable the char8_t fundamental type and use it as the type for UTF-8 string and character literals.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 8, /* .neg_idx = */ 568,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_char8_t), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [569] = */ {
    "-fcheck-array-temporaries",
    "Produce a warning at runtime if a array temporary has been created for a procedure argument.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 24, /* .neg_idx = */ 569,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [570] = */ {
    "-fcheck-data-deps",
    "This switch is deprecated; do not use.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_ignore, N_OPTS, 16, /* .neg_idx = */ 570,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [571] = */ {
    "-fcheck-new",
    "Check the return value of new in C++.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 10, /* .neg_idx = */ 571,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_check_new), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [572] = */ {
    "-fcheck-pointer-bounds",
    "Deprecated in GCC 9.  This switch has no effect.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_deprecated, N_OPTS, 21, /* .neg_idx = */ 572,
    CL_C | CL_CXX | CL_LTO | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [573] = */ {
    "-fcheck=",
    "-fcheck=[...]	Specify which runtime checks are to be performed.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 7, /* .neg_idx = */ -1,
    CL_Fortran | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 1 /* JoinedOrMissing */, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [574] = */ {
    "-fchecking",
    "Perform internal consistency checkings.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ 574,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_checking), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [575] = */ {
    "-fchecking=",
    "Perform internal consistency checkings.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 10, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 1 /* UInteger */, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_checking), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [576] = */ {
    "-fchkp-check-incomplete-type",
    "Deprecated in GCC 9.  This switch has no effect.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_deprecated, N_OPTS, 27, /* .neg_idx = */ 576,
    CL_C | CL_CXX | CL_LTO | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [577] = */ {
    "-fchkp-check-read",
    "Deprecated in GCC 9.  This switch has no effect.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_deprecated, N_OPTS, 16, /* .neg_idx = */ 577,
    CL_C | CL_CXX | CL_LTO | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [578] = */ {
    "-fchkp-check-write",
    "Deprecated in GCC 9.  This switch has no effect.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_deprecated, N_OPTS, 17, /* .neg_idx = */ 578,
    CL_C | CL_CXX | CL_LTO | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [579] = */ {
    "-fchkp-first-field-has-own-bounds",
    "Deprecated in GCC 9.  This switch has no effect.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_deprecated, N_OPTS, 32, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_LTO | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [580] = */ {
    "-fchkp-flexible-struct-trailing-arrays",
    "Deprecated in GCC 9.  This switch has no effect.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_deprecated, N_OPTS, 37, /* .neg_idx = */ 580,
    CL_C | CL_CXX | CL_LTO | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [581] = */ {
    "-fchkp-instrument-calls",
    "Deprecated in GCC 9.  This switch has no effect.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_deprecated, N_OPTS, 22, /* .neg_idx = */ 581,
    CL_C | CL_CXX | CL_LTO | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [582] = */ {
    "-fchkp-instrument-marked-only",
    "Deprecated in GCC 9.  This switch has no effect.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_deprecated, N_OPTS, 28, /* .neg_idx = */ 582,
    CL_C | CL_CXX | CL_LTO | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [583] = */ {
    "-fchkp-narrow-bounds",
    "Deprecated in GCC 9.  This switch has no effect.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_deprecated, N_OPTS, 19, /* .neg_idx = */ 583,
    CL_C | CL_CXX | CL_LTO | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [584] = */ {
    "-fchkp-narrow-to-innermost-array",
    "Deprecated in GCC 9.  This switch has no effect.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_deprecated, N_OPTS, 31, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_LTO | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [585] = */ {
    "-fchkp-optimize",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_deprecated, N_OPTS, 14, /* .neg_idx = */ 585,
    CL_C | CL_CXX | CL_LTO | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [586] = */ {
    "-fchkp-store-bounds",
    "Deprecated in GCC 9.  This switch has no effect.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_deprecated, N_OPTS, 18, /* .neg_idx = */ 586,
    CL_C | CL_CXX | CL_LTO | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [587] = */ {
    "-fchkp-treat-zero-dynamic-size-as-infinite",
    "Deprecated in GCC 9.  This switch has no effect.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_deprecated, N_OPTS, 41, /* .neg_idx = */ 587,
    CL_C | CL_CXX | CL_LTO | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [588] = */ {
    "-fchkp-use-fast-string-functions",
    "Deprecated in GCC 9.  This switch has no effect.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_deprecated, N_OPTS, 31, /* .neg_idx = */ 588,
    CL_C | CL_CXX | CL_LTO | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [589] = */ {
    "-fchkp-use-nochk-string-functions",
    "Deprecated in GCC 9.  This switch has no effect.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_deprecated, N_OPTS, 32, /* .neg_idx = */ 589,
    CL_C | CL_CXX | CL_LTO | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [590] = */ {
    "-fchkp-use-static-bounds",
    "Deprecated in GCC 9.  This switch has no effect.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_deprecated, N_OPTS, 23, /* .neg_idx = */ 590,
    CL_C | CL_CXX | CL_LTO | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [591] = */ {
    "-fchkp-use-static-const-bounds",
    "Deprecated in GCC 9.  This switch has no effect.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_deprecated, N_OPTS, 29, /* .neg_idx = */ 591,
    CL_C | CL_CXX | CL_LTO | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [592] = */ {
    "-fchkp-use-wrappers",
    "Deprecated in GCC 9.  This switch has no effect.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_deprecated, N_OPTS, 18, /* .neg_idx = */ 592,
    CL_C | CL_CXX | CL_LTO | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [593] = */ {
    "-fchkp-zero-input-bounds-for-main",
    "Deprecated in GCC 9.  This switch has no effect.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_deprecated, N_OPTS, 32, /* .neg_idx = */ 593,
    CL_C | CL_CXX | CL_LTO | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [594] = */ {
    "-fcilkplus",
    "Deprecated in GCC 8.  This switch has no effect.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_ignore, N_OPTS, 9, /* .neg_idx = */ 594,
    CL_C | CL_CXX | CL_LTO | CL_ObjC | CL_ObjCXX | CL_UNDOCUMENTED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [595] = */ {
    "-fcoarray=",
    "-fcoarray=<none|single|lib>	Specify which coarray parallelization should be used.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ -1,
    CL_Fortran | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_coarray), 15, CLVC_ENUM, 0, -1, -1 },
 /* [596] = */ {
    "-fcode-hoisting",
    "Enable code hoisting.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 14, /* .neg_idx = */ 596,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_code_hoisting), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [597] = */ {
    "-fcombine-stack-adjustments",
    "Looks for opportunities to reduce stack adjustments and stack references.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 26, /* .neg_idx = */ 597,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_combine_stack_adjustments), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [598] = */ {
    "-fcommon",
    "Do not put uninitialized globals in the common section.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 7, /* .neg_idx = */ 598,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_no_common), 0, CLVC_EQUAL, 0, -1, -1 },
 /* [599] = */ {
    "-fcompare-debug",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 14, /* .neg_idx = */ 599,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [600] = */ {
    "-fcompare-debug-second",
    "Run only the second compilation of -fcompare-debug.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 21, /* .neg_idx = */ -1,
    CL_COMMON | CL_DRIVER,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_compare_debug), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [601] = */ {
    "-fcompare-debug=",
    "-fcompare-debug[=<opts>]	Compile with and without e.g. -gtoggle, and compare the final-insns dump.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ -1,
    CL_COMMON | CL_DRIVER | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 1 /* JoinedOrMissing */, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_compare_debug_opt), 0, CLVC_STRING, 0, -1, -1 },
 /* [602] = */ {
    "-fcompare-elim",
    "Perform comparison elimination after register allocation has finished.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ 602,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_compare_elim_after_reload), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [603] = */ {
    "-fconcepts",
    "Enable support for C++ concepts.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ 603,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_concepts), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [604] = */ {
    "-fcond-mismatch",
    "Allow the arguments of the '?' operator to have different types.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 14, /* .neg_idx = */ 604,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [605] = */ {
    "-fconserve-space",
    "Does nothing.  Preserved for backward compatibility.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_ignore, N_OPTS, 15, /* .neg_idx = */ 605,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [606] = */ {
    "-fconserve-stack",
    "Do not perform optimizations increasing noticeably stack usage.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ 606,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_conserve_stack), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [607] = */ {
    "-fconstant-string-class=",
    "-fconst-string-class=<name>	Use class <name> for constant strings.",
    "no class name specified with %qs",
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 23, /* .neg_idx = */ 607,
    CL_ObjC | CL_ObjCXX | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [608] = */ {
    "-fconstexpr-depth=",
    "-fconstexpr-depth=<number>	Specify maximum constexpr recursion depth.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ -1,
    CL_CXX | CL_ObjCXX | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 1 /* UInteger */, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_max_constexpr_depth), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [609] = */ {
    "-fconstexpr-loop-limit=",
    "-fconstexpr-loop-limit=<number>	Specify maximum constexpr loop iteration count.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 22, /* .neg_idx = */ -1,
    CL_CXX | CL_ObjCXX | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 1 /* UInteger */, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_constexpr_loop_limit), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [610] = */ {
    "-fconstexpr-ops-limit=",
    "-fconstexpr-ops-limit=<number>	Specify maximum number of constexpr operations during a single constexpr evaluation.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 21, /* .neg_idx = */ -1,
    CL_CXX | CL_ObjCXX | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 1 /* Host_Wide_Int */, 0, 0, 0,
    offsetof (struct gcc_options, x_constexpr_ops_limit), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [611] = */ {
    "-fconvert=",
    "-fconvert=<big-endian|little-endian|native|swap> The endianness used for unformatted files.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ -1,
    CL_Fortran | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_convert), 14, CLVC_ENUM, 0, -1, -1 },
 /* [612] = */ {
    "-fcprop-registers",
    "Perform a register copy-propagation optimization pass.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ 612,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_cprop_registers), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [613] = */ {
    "-fcray-pointer",
    "Use the Cray Pointer extension.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ 613,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_cray_pointer), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [614] = */ {
    "-fcrossjumping",
    "Perform cross-jumping optimization.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ 614,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_crossjumping), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [615] = */ {
    "-fcse-follow-jumps",
    "When running CSE, follow jumps to their targets.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ 615,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_cse_follow_jumps), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [616] = */ {
    "-fcse-skip-blocks",
    "Does nothing.  Preserved for backward compatibility.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_ignore, N_OPTS, 16, /* .neg_idx = */ 616,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [617] = */ {
    "-fcx-fortran-rules",
    "Complex multiplication and division follow Fortran rules.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ 617,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_cx_fortran_rules), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [618] = */ {
    "-fcx-limited-range",
    "Omit range reduction step when performing complex division.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ 618,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_cx_limited_range), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [619] = */ {
    "-fd-lines-as-code",
    "Ignore 'D' in column one in fixed form.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ -1,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [620] = */ {
    "-fd-lines-as-comments",
    "Treat lines with 'D' in column one as comments.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 20, /* .neg_idx = */ -1,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [621] = */ {
    "-fdata-sections",
    "Place data items into their own section.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 14, /* .neg_idx = */ 621,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_data_sections), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [622] = */ {
    "-fdbg-cnt-list",
    "List all available debugging counters with their limits and counts.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ 622,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_common_deferred_options), 0, CLVC_DEFER, 0, -1, -1 },
 /* [623] = */ {
    "-fdbg-cnt=",
    "-fdbg-cnt=<counter>[:<lower_limit>]:<upper_limit>[,<counter>:...]	Set the debug counter limit.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_common_deferred_options), 0, CLVC_DEFER, 0, -1, -1 },
 /* [624] = */ {
    "-fdce",
    "Use the RTL dead code elimination pass.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 4, /* .neg_idx = */ 624,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_dce), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [625] = */ {
    "-fdebug",
    "Compile in debug code.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 6, /* .neg_idx = */ 625,
    CL_D,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [626] = */ {
    "-fdebug-cpp",
    "Emit debug annotations during preprocessing.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 10, /* .neg_idx = */ 626,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [627] = */ {
    "-fdebug-prefix-map=",
    "-fdebug-prefix-map=<old>=<new> Map one directory name to another in debug information.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 18, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_common_deferred_options), 0, CLVC_DEFER, 0, -1, -1 },
 /* [628] = */ {
    "-fdebug-types-section",
    "Output .debug_types section when using DWARF v4 debuginfo.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 20, /* .neg_idx = */ 628,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_debug_types_section), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [629] = */ {
    "-fdebug=",
    "-fdebug=<level|ident>	Compile in debug code, code <= <level>, or code identified by <ident>.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 7, /* .neg_idx = */ -1,
    CL_D | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [630] = */ {
    "-fdec",
    "Enable all DEC language extensions.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 4, /* .neg_idx = */ 630,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_dec), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [631] = */ {
    "-fdec-include",
    "Enable legacy parsing of INCLUDE as statement.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ 631,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_dec_include), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [632] = */ {
    "-fdec-intrinsic-ints",
    "Enable kind-specific variants of integer intrinsic functions.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 19, /* .neg_idx = */ 632,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_dec_intrinsic_ints), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [633] = */ {
    "-fdec-math",
    "Enable legacy math intrinsics for compatibility.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ 633,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_dec_math), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [634] = */ {
    "-fdec-static",
    "Enable DEC-style STATIC and AUTOMATIC attributes.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 11, /* .neg_idx = */ 634,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_dec_static), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [635] = */ {
    "-fdec-structure",
    "Enable support for DEC STRUCTURE/RECORD.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 14, /* .neg_idx = */ 635,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_dec_structure), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [636] = */ {
    "-fdeclone-ctor-dtor",
    "Factor complex constructors and destructors to favor space over speed.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 18, /* .neg_idx = */ 636,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_declone_ctor_dtor), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [637] = */ {
    "-fdeduce-init-list",
    "-fdeduce-init-list	enable deduction of std::initializer_list for a template type parameter from a brace-enclosed initializer-list.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ 637,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_deduce_init_list), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [638] = */ {
    "-fdefault-double-8",
    "Set the default double precision kind to an 8 byte wide type.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ 638,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_default_double), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [639] = */ {
    "-fdefault-inline",
    "Does nothing.  Preserved for backward compatibility.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_ignore, N_OPTS, 15, /* .neg_idx = */ 639,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [640] = */ {
    "-fdefault-integer-8",
    "Set the default integer kind to an 8 byte wide type.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 18, /* .neg_idx = */ 640,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_default_integer), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [641] = */ {
    "-fdefault-real-10",
    "Set the default real kind to an 10 byte wide type.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ 641,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_default_real_10), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [642] = */ {
    "-fdefault-real-16",
    "Set the default real kind to an 16 byte wide type.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ 642,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_default_real_16), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [643] = */ {
    "-fdefault-real-8",
    "Set the default real kind to an 8 byte wide type.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ 643,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_default_real_8), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [644] = */ {
    "-fdefer-pop",
    "Defer popping functions args from stack until later.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 10, /* .neg_idx = */ 644,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_defer_pop), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [645] = */ {
    "-fdelayed-branch",
    "Attempt to fill delay slots of branch instructions.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ 645,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_delayed_branch), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [646] = */ {
    "-fdelete-dead-exceptions",
    "Delete dead instructions that may throw exceptions.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 23, /* .neg_idx = */ 646,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_delete_dead_exceptions), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [647] = */ {
    "-fdelete-null-pointer-checks",
    "Delete useless null pointer checks.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 27, /* .neg_idx = */ 647,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_delete_null_pointer_checks), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [648] = */ {
    "-fdevirtualize",
    "Try to convert virtual calls to direct ones.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ 648,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_devirtualize), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [649] = */ {
    "-fdevirtualize-at-ltrans",
    "Stream extra data to support more aggressive devirtualization in LTO local transformation mode.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 23, /* .neg_idx = */ 649,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_ltrans_devirtualize), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [650] = */ {
    "-fdevirtualize-speculatively",
    "Perform speculative devirtualization.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 27, /* .neg_idx = */ 650,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_devirtualize_speculatively), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [651] = */ {
    "-fdiagnostics-color",
    NULL,
    NULL,
    NULL,
    "always", "never", OPT_fdiagnostics_color_, N_OPTS, 18, /* .neg_idx = */ 651,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [652] = */ {
    "-fdiagnostics-color=",
    "-fdiagnostics-color=[never|always|auto]	Colorize diagnostics.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 19, /* .neg_idx = */ -1,
    CL_COMMON | CL_DRIVER | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_diagnostics_show_color), 8, CLVC_ENUM, 0, -1, -1 },
 /* [653] = */ {
    "-fdiagnostics-format=",
    "-fdiagnostics-format=[text|json] Select output format.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 20, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 10, CLVC_ENUM, 0, -1, -1 },
 /* [654] = */ {
    "-fdiagnostics-generate-patch",
    "Print fix-it hints to stderr in unified diff format.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 27, /* .neg_idx = */ 654,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_diagnostics_generate_patch), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [655] = */ {
    "-fdiagnostics-minimum-margin-width=",
    "Set minimum width of left margin of source code when showing source.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 34, /* .neg_idx = */ 655,
    CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 0, 1 /* UInteger */, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_diagnostics_minimum_margin_width), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [656] = */ {
    "-fdiagnostics-parseable-fixits",
    "Print fix-it hints in machine-readable form.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 29, /* .neg_idx = */ 656,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_diagnostics_parseable_fixits), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [657] = */ {
    "-fdiagnostics-show-caret",
    "Show the source line with a caret indicating the column.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 23, /* .neg_idx = */ 657,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_diagnostics_show_caret), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [658] = */ {
    "-fdiagnostics-show-labels",
    "Show labels annotating ranges of source code when showing source.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 24, /* .neg_idx = */ 658,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_diagnostics_show_labels), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [659] = */ {
    "-fdiagnostics-show-line-numbers",
    "Show line numbers in the left margin when showing source.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 30, /* .neg_idx = */ 659,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_diagnostics_show_line_numbers), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [660] = */ {
    "-fdiagnostics-show-location=",
    "-fdiagnostics-show-location=[once|every-line]	How often to emit source location at the beginning of line-wrapped diagnostics.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 27, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 9, CLVC_ENUM, 0, -1, -1 },
 /* [661] = */ {
    "-fdiagnostics-show-option",
    "Amend appropriate diagnostic messages with the command line option that controls them.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 24, /* .neg_idx = */ 661,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_diagnostics_show_option), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [662] = */ {
    "-fdiagnostics-show-template-tree",
    "Print hierarchical comparisons when template types are mismatched.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 31, /* .neg_idx = */ 662,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_diagnostics_show_template_tree), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [663] = */ {
    "-fdirectives-only",
    "Preprocess directives only.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ 663,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [664] = */ {
    "-fdisable-",
    "-fdisable-[tree|rtl|ipa]-<pass>=range1+range2 disables an optimization pass.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_common_deferred_options), 0, CLVC_DEFER, 0, -1, -1 },
 /* [665] = */ {
    "-fdoc",
    "Generate documentation.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 4, /* .neg_idx = */ 665,
    CL_D,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [666] = */ {
    "-fdoc-dir=",
    "-fdoc-dir=<dir>	Write documentation file to directory <dir>.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ -1,
    CL_D | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [667] = */ {
    "-fdoc-file=",
    "-fdoc-file=<file>	Write documentation to <file>.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 10, /* .neg_idx = */ -1,
    CL_D | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [668] = */ {
    "-fdoc-inc=",
    "-fdoc-inc=<file>	Include a Ddoc macro <file>.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ -1,
    CL_D | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [669] = */ {
    "-fdollar-ok",
    "Allow dollar signs in entity names.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 10, /* .neg_idx = */ 669,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_dollar_ok), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [670] = */ {
    "-fdollars-in-identifiers",
    "Permit '$' as an identifier character.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 23, /* .neg_idx = */ 670,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [671] = */ {
    "-fdruntime",
    "Assume that standard D runtime libraries and \"D main\" exist.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ 671,
    CL_D,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [672] = */ {
    "-fdse",
    "Use the RTL dead store elimination pass.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 4, /* .neg_idx = */ 672,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_dse), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [673] = */ {
    "-fdump-",
    "-fdump-<type>	Dump various compiler internals to a file.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 6, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_common_deferred_options), 0, CLVC_DEFER, 0, -1, -1 },
 /* [674] = */ {
    "-fdump-ada-spec",
    "Write all declarations as Ada code transitively.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_fdump_, 14, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_dump_ada_spec), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [675] = */ {
    "-fdump-ada-spec-slim",
    "Write all declarations as Ada code for the given file only.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_fdump_, 19, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_dump_ada_spec_slim), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [676] = */ {
    "-fdump-core",
    "Does nothing. Preserved for backward compatibility.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_ignore, OPT_fdump_, 10, /* .neg_idx = */ 676,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [677] = */ {
    "-fdump-d-original",
    "Display the frontend AST after parsing and semantic passes.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_fdump_, 16, /* .neg_idx = */ 677,
    CL_D,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [678] = */ {
    "-fdump-final-insns",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_fdump_, 17, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [679] = */ {
    "-fdump-final-insns=",
    "-fdump-final-insns=filename	Dump to filename the insns at the end of translation.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_fdump_, 18, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_dump_final_insns), 0, CLVC_STRING, 0, -1, -1 },
 /* [680] = */ {
    "-fdump-fortran-global",
    "Display the global symbol table after parsing.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_fdump_, 20, /* .neg_idx = */ 680,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_dump_fortran_global), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [681] = */ {
    "-fdump-fortran-optimized",
    "Display the code tree after front end optimization.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_fdump_, 23, /* .neg_idx = */ 681,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_dump_fortran_optimized), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [682] = */ {
    "-fdump-fortran-original",
    "Display the code tree after parsing.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_fdump_, 22, /* .neg_idx = */ 682,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_dump_fortran_original), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [683] = */ {
    "-fdump-go-spec=",
    "-fdump-go-spec=filename	Write all declarations to file as Go code.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_fdump_, 14, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_dump_go_spec), 0, CLVC_STRING, 0, -1, -1 },
 /* [684] = */ {
    "-fdump-internal-locations",
    "Dump detailed information on GCC's internal representation of source code locations.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_fdump_, 24, /* .neg_idx = */ 684,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_dump_locations), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [685] = */ {
    "-fdump-noaddr",
    "Suppress output of addresses in debugging dumps.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_fdump_, 12, /* .neg_idx = */ 685,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_dump_noaddr), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [686] = */ {
    "-fdump-parse-tree",
    "Display the code tree after parsing; deprecated option.",
    NULL,
    NULL,
    NULL, NULL, OPT_fdump_fortran_original, OPT_fdump_, 16, /* .neg_idx = */ 686,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [687] = */ {
    "-fdump-passes",
    "Dump optimization passes.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_fdump_, 12, /* .neg_idx = */ 687,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_dump_passes), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [688] = */ {
    "-fdump-unnumbered",
    "Suppress output of instruction numbers, line number notes and addresses in debugging dumps.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_fdump_, 16, /* .neg_idx = */ 688,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_dump_unnumbered), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [689] = */ {
    "-fdump-unnumbered-links",
    "Suppress output of previous and next insn numbers in debugging dumps.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_fdump_, 22, /* .neg_idx = */ 689,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_dump_unnumbered_links), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [690] = */ {
    "-fdwarf2-cfi-asm",
    "Enable CFI tables via GAS assembler directives.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ 690,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_dwarf2_cfi_asm), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [691] = */ {
    "-fearly-inlining",
    "Perform early inlining.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ 691,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_early_inlining), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [692] = */ {
    "-felide-constructors",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 19, /* .neg_idx = */ 692,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_elide_constructors), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [693] = */ {
    "-felide-type",
    "-fno-elide-type Do not elide common elements in template comparisons.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 11, /* .neg_idx = */ 693,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_elide_type), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [694] = */ {
    "-feliminate-dwarf2-dups",
    "Does nothing.  Preserved for backward compatibility.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_ignore, N_OPTS, 22, /* .neg_idx = */ 694,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [695] = */ {
    "-feliminate-unused-debug-symbols",
    "Perform unused symbol elimination in debug info.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 31, /* .neg_idx = */ 695,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_debug_only_used_symbols), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [696] = */ {
    "-feliminate-unused-debug-types",
    "Perform unused type elimination in debug info.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 29, /* .neg_idx = */ 696,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_eliminate_unused_debug_types), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [697] = */ {
    "-femit-class-debug-always",
    "Do not suppress C++ class debug information.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 24, /* .neg_idx = */ 697,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_emit_class_debug_always), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [698] = */ {
    "-femit-struct-debug-baseonly",
    "-femit-struct-debug-baseonly	Aggressive reduced debug info for structs.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 27, /* .neg_idx = */ 698,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [699] = */ {
    "-femit-struct-debug-detailed=",
    "-femit-struct-debug-detailed=<spec-list>	Detailed reduced debug info for structs.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 28, /* .neg_idx = */ 699,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [700] = */ {
    "-femit-struct-debug-reduced",
    "-femit-struct-debug-reduced	Conservative reduced debug info for structs.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 26, /* .neg_idx = */ 700,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [701] = */ {
    "-fenable-",
    "-fenable-[tree|rtl|ipa]-<pass>=range1+range2 enables an optimization pass.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 8, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_common_deferred_options), 0, CLVC_DEFER, 0, -1, -1 },
 /* [702] = */ {
    "-fenforce-eh-specs",
    "Generate code to check exception specifications.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ 702,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_enforce_eh_specs), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [703] = */ {
    "-fenum-int-equiv",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_deprecated, N_OPTS, 15, /* .neg_idx = */ 703,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [704] = */ {
    "-fexceptions",
    "Enable exception handling.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 11, /* .neg_idx = */ 704,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_exceptions), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [705] = */ {
    "-fexcess-precision=",
    "-fexcess-precision=[fast|standard]	Specify handling of excess floating-point precision.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 18, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_excess_precision_cmdline), 12, CLVC_ENUM, 0, -1, -1 },
 /* [706] = */ {
    "-fexec-charset=",
    "-fexec-charset=<cset>	Convert all strings and character constants to character set <cset>.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 14, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [707] = */ {
    "-fexpensive-optimizations",
    "Perform a number of minor, expensive optimizations.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 24, /* .neg_idx = */ 707,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_expensive_optimizations), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [708] = */ {
    "-fext-numeric-literals",
    "Interpret imaginary, fixed-point, or other gnu number suffix as the corresponding number literal rather than a user-defined number literal.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 21, /* .neg_idx = */ 708,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_ext_numeric_literals), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [709] = */ {
    "-fextended-identifiers",
    "Permit universal character names (\\u and \\U) in identifiers.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 21, /* .neg_idx = */ 709,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [710] = */ {
    "-fextern-tls-init",
    "Support dynamic initialization of thread-local variables in a different translation unit.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ 710,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_extern_tls_init), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [711] = */ {
    "-fexternal-blas",
    "Specify that an external BLAS library should be used for matmul calls on large-size arrays.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 14, /* .neg_idx = */ 711,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_external_blas), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [712] = */ {
    "-fexternal-templates",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_deprecated, N_OPTS, 19, /* .neg_idx = */ 712,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [713] = */ {
    "-ff2c",
    "Use f2c calling convention.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 4, /* .neg_idx = */ 713,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_f2c), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [714] = */ {
    "-ffast-math",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 10, /* .neg_idx = */ 714,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [715] = */ {
    "-ffat-lto-objects",
    "Output lto objects containing both the intermediate language and binary output.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ 715,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_fat_lto_objects), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [716] = */ {
    "-ffile-prefix-map=",
    "-ffile-prefix-map=<old>=<new> Map one directory name to another in compilation result.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_common_deferred_options), 0, CLVC_DEFER, 0, -1, -1 },
 /* [717] = */ {
    "-ffinite-math-only",
    "Assume no NaNs or infinities are generated.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ 717,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_finite_math_only), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [718] = */ {
    "-ffixed-",
    "-ffixed-<register>	Mark <register> as being unavailable to the compiler.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 7, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_common_deferred_options), 0, CLVC_DEFER, 0, -1, -1 },
 /* [719] = */ {
    "-ffixed-form",
    "Assume that the source file is fixed form.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_ffixed_, 11, /* .neg_idx = */ -1,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [720] = */ {
    "-ffixed-line-length-",
    "-ffixed-line-length-<n>	Use n as character line width in fixed mode.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_ffixed_, 19, /* .neg_idx = */ -1,
    CL_Fortran | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 1 /* UInteger */, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_fixed_line_length), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [721] = */ {
    "-ffixed-line-length-none",
    "Allow arbitrary character line width in fixed mode.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_ffixed_line_length_, 23, /* .neg_idx = */ -1,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_fixed_line_length), 0, CLVC_EQUAL, 0, -1, -1 },
 /* [722] = */ {
    "-ffloat-store",
    "Don't allocate floats and doubles in extended-precision registers.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ 722,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_float_store), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [723] = */ {
    "-ffor-scope",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_deprecated, N_OPTS, 10, /* .neg_idx = */ 723,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [724] = */ {
    "-fforce-addr",
    "Does nothing.  Preserved for backward compatibility.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_ignore, N_OPTS, 11, /* .neg_idx = */ 724,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [725] = */ {
    "-fforward-propagate",
    "Perform a forward propagation pass on RTL.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 18, /* .neg_idx = */ 725,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_forward_propagate), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [726] = */ {
    "-ffp-contract=",
    "-ffp-contract=[off|on|fast]	Perform floating-point expression contraction.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_fp_contract_mode), 13, CLVC_ENUM, 0, -1, -1 },
 /* [727] = */ {
    "-ffp-int-builtin-inexact",
    "Allow built-in functions ceil, floor, round, trunc to raise \"inexact\" exceptions.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 23, /* .neg_idx = */ 727,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_fp_int_builtin_inexact), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [728] = */ {
    "-ffpe-summary=",
    "-ffpe-summary=[...]	Print summary of floating point exceptions.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ -1,
    CL_Fortran | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 1 /* JoinedOrMissing */, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [729] = */ {
    "-ffpe-trap=",
    "-ffpe-trap=[...]	Stop on following floating point exceptions.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 10, /* .neg_idx = */ -1,
    CL_Fortran | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 1 /* JoinedOrMissing */, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [730] = */ {
    "-ffree-form",
    "Assume that the source file is free form.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 10, /* .neg_idx = */ -1,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [731] = */ {
    "-ffree-line-length-",
    "-ffree-line-length-<n>	Use n as character line width in free mode.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 18, /* .neg_idx = */ -1,
    CL_Fortran | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 1 /* UInteger */, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_free_line_length), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [732] = */ {
    "-ffree-line-length-none",
    "Allow arbitrary character line width in free mode.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_ffree_line_length_, 22, /* .neg_idx = */ -1,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_free_line_length), 0, CLVC_EQUAL, 0, -1, -1 },
 /* [733] = */ {
    "-ffreestanding",
    "Do not assume that standard C libraries and \"main\" exist.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ 733,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [734] = */ {
    "-ffriend-injection",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_deprecated, N_OPTS, 17, /* .neg_idx = */ 734,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [735] = */ {
    "-ffrontend-loop-interchange",
    "Try to interchange loops if profitable.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 26, /* .neg_idx = */ 735,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_frontend_loop_interchange), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [736] = */ {
    "-ffrontend-optimize",
    "Enable front end optimization.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 18, /* .neg_idx = */ 736,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_frontend_optimize), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [737] = */ {
    "-ffunction-cse",
    "Allow function addresses to be held in registers.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ 737,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_no_function_cse), 0, CLVC_EQUAL, 0, -1, -1 },
 /* [738] = */ {
    "-ffunction-sections",
    "Place each function into its own section.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 18, /* .neg_idx = */ 738,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_function_sections), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [739] = */ {
    "-fgcse",
    "Perform global common subexpression elimination.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 5, /* .neg_idx = */ 739,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_gcse), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [740] = */ {
    "-fgcse-after-reload",
    "Perform global common subexpression elimination after register allocation has finished.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 18, /* .neg_idx = */ 740,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_gcse_after_reload), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [741] = */ {
    "-fgcse-las",
    "Perform redundant load after store elimination in global common subexpression elimination.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ 741,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_gcse_las), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [742] = */ {
    "-fgcse-lm",
    "Perform enhanced load motion during global common subexpression elimination.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 8, /* .neg_idx = */ 742,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_gcse_lm), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [743] = */ {
    "-fgcse-sm",
    "Perform store motion after global common subexpression elimination.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 8, /* .neg_idx = */ 743,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_gcse_sm), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [744] = */ {
    "-fgimple",
    "Enable parsing GIMPLE.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 7, /* .neg_idx = */ 744,
    CL_C,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_gimple), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [745] = */ {
    "-fgnat-encodings=",
    "-fgnat-encodings=[all|gdb|minimal]	Select the balance between GNAT encodings and standard DWARF emitted in the debug information.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED | CL_UNDOCUMENTED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_gnat_encodings), 11, CLVC_ENUM, 0, -1, -1 },
 /* [746] = */ {
    "-fgnu-keywords",
    "Recognize GNU-defined keywords.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ 746,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_no_gnu_keywords), 0, CLVC_EQUAL, 0, -1, -1 },
 /* [747] = */ {
    "-fgnu-runtime",
    "Generate code for GNU runtime environment.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ -1,
    CL_LTO | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_next_runtime), 0, CLVC_EQUAL, 0, -1, -1 },
 /* [748] = */ {
    "-fgnu-tm",
    "Enable support for GNU transactional memory.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 7, /* .neg_idx = */ 748,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_tm), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [749] = */ {
    "-fgnu-unique",
    "Use STB_GNU_UNIQUE if supported by the assembler.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 11, /* .neg_idx = */ 749,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_gnu_unique), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [750] = */ {
    "-fgnu89-inline",
    "Use traditional GNU semantics for inline functions.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ 750,
    CL_C | CL_ObjC,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_gnu89_inline), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [751] = */ {
    "-fgo-c-header=",
    "-fgo-c-header=<file>	Write Go struct definitions to file as C code.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ -1,
    CL_Go | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [752] = */ {
    "-fgo-check-divide-overflow",
    "Add explicit checks for division overflow in INT_MIN / -1.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 25, /* .neg_idx = */ 752,
    CL_Go,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_go_check_divide_overflow), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [753] = */ {
    "-fgo-check-divide-zero",
    "Add explicit checks for division by zero.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 21, /* .neg_idx = */ 753,
    CL_Go,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_go_check_divide_zero), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [754] = */ {
    "-fgo-compiling-runtime",
    "Apply special rules for compiling runtime package.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 21, /* .neg_idx = */ 754,
    CL_Go,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_go_compiling_runtime), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [755] = */ {
    "-fgo-debug-escape",
    "Emit debugging information related to the escape analysis pass when run with -fgo-optimize-allocs.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ 755,
    CL_Go | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 0, 1 /* UInteger */, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_go_debug_escape_level), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [756] = */ {
    "-fgo-debug-escape-hash=",
    "-fgo-debug-escape-hash=<string>	Hash value to debug escape analysis.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_fgo_debug_escape, 22, /* .neg_idx = */ -1,
    CL_Go | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_go_debug_escape_hash), 0, CLVC_STRING, 0, -1, -1 },
 /* [757] = */ {
    "-fgo-dump-",
    "-fgo-dump-<type>	Dump Go frontend internal information.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ -1,
    CL_Go | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [758] = */ {
    "-fgo-optimize-",
    "-fgo-optimize-<type>	Turn on optimization passes in the frontend.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ 758,
    CL_Go | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [759] = */ {
    "-fgo-pkgpath=",
    "-fgo-pkgpath=<string>	Set Go package path.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ -1,
    CL_Go | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [760] = */ {
    "-fgo-prefix=",
    "-fgo-prefix=<string>	Set package-specific prefix for exported Go names.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 11, /* .neg_idx = */ -1,
    CL_Go | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [761] = */ {
    "-fgo-relative-import-path=",
    "-fgo-relative-import-path=<path>	Treat a relative import as relative to path.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 25, /* .neg_idx = */ -1,
    CL_Go | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [762] = */ {
    "-fgraphite",
    "Enable in and out of Graphite representation.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ 762,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_graphite), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [763] = */ {
    "-fgraphite-identity",
    "Enable Graphite Identity transformation.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 18, /* .neg_idx = */ 763,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_graphite_identity), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [764] = */ {
    "-fguess-branch-probability",
    "Enable guessing of branch probabilities.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 25, /* .neg_idx = */ 764,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_guess_branch_prob), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [765] = */ {
    "-fguiding-decls",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_deprecated, N_OPTS, 14, /* .neg_idx = */ 765,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [766] = */ {
    "-fhandle-exceptions",
    NULL,
    NULL,
    "%<-fhandle-exceptions%> has been renamed %<-fexceptions%> (and is now on by default)",
    NULL, NULL, OPT_fexceptions, N_OPTS, 18, /* .neg_idx = */ 766,
    CL_CXX | CL_ObjCXX | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [767] = */ {
    "-fhelp",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT__help, N_OPTS, 5, /* .neg_idx = */ 767,
    CL_COMMON | CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [768] = */ {
    "-fhelp=",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT__help_, N_OPTS, 6, /* .neg_idx = */ 768,
    CL_COMMON | CL_DRIVER | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [769] = */ {
    "-fhoist-adjacent-loads",
    "Enable hoisting adjacent loads to encourage generating conditional move instructions.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 21, /* .neg_idx = */ 769,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_hoist_adjacent_loads), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [770] = */ {
    "-fhonor-std",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_deprecated, N_OPTS, 10, /* .neg_idx = */ 770,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [771] = */ {
    "-fhosted",
    "Assume normal C execution environment.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 7, /* .neg_idx = */ 771,
    CL_C | CL_ObjC,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [772] = */ {
    "-fhuge-objects",
    "No longer supported.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_deprecated, N_OPTS, 13, /* .neg_idx = */ 772,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [773] = */ {
    "-fident",
    "Process #ident directives.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 6, /* .neg_idx = */ 773,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_no_ident), 0, CLVC_EQUAL, 0, -1, -1 },
 /* [774] = */ {
    "-fif-conversion",
    "Perform conversion of conditional jumps to branchless equivalents.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 14, /* .neg_idx = */ 774,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_if_conversion), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [775] = */ {
    "-fif-conversion2",
    "Perform conversion of conditional jumps to conditional execution.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ 775,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_if_conversion2), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [776] = */ {
    "-fignore-unknown-pragmas",
    "Ignore unsupported pragmas.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 23, /* .neg_idx = */ 776,
    CL_D,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [777] = */ {
    "-fimplement-inlines",
    "Export functions even if they can be inlined.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 18, /* .neg_idx = */ 777,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_implement_inlines), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [778] = */ {
    "-fimplicit-inline-templates",
    "Emit implicit instantiations of inline templates.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 26, /* .neg_idx = */ 778,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_implicit_inline_templates), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [779] = */ {
    "-fimplicit-none",
    "Specify that no implicit typing is allowed, unless overridden by explicit IMPLICIT statements.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 14, /* .neg_idx = */ 779,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_implicit_none), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [780] = */ {
    "-fimplicit-templates",
    "Emit implicit instantiations of templates.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 19, /* .neg_idx = */ 780,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_implicit_templates), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [781] = */ {
    "-findirect-inlining",
    "Perform indirect inlining.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 18, /* .neg_idx = */ 781,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_indirect_inlining), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [782] = */ {
    "-finhibit-size-directive",
    "Do not generate .size directives.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 23, /* .neg_idx = */ 782,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_inhibit_size_directive), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [783] = */ {
    "-finit-character=",
    "-finit-character=<n>	Initialize local character variables to ASCII value n.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ -1,
    CL_Fortran | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 1 /* UInteger */, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [784] = */ {
    "-finit-derived",
    "Initialize components of derived type variables according to other init flags.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ 784,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_init_derived), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [785] = */ {
    "-finit-integer=",
    "-finit-integer=<n>	Initialize local integer variables to n.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 14, /* .neg_idx = */ -1,
    CL_Fortran | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [786] = */ {
    "-finit-local-zero",
    "Initialize local variables to zero (from g77).",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ 786,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [787] = */ {
    "-finit-logical=",
    "-finit-logical=<true|false>	Initialize local logical variables.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 14, /* .neg_idx = */ -1,
    CL_Fortran | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [788] = */ {
    "-finit-real=",
    "-finit-real=<zero|snan|nan|inf|-inf>	Initialize local real variables.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 11, /* .neg_idx = */ -1,
    CL_Fortran | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 1 /* ToLower */, 0, 0,
    offsetof (struct gcc_options, x_flag_init_real), 16, CLVC_ENUM, 0, -1, -1 },
 /* [789] = */ {
    "-finline",
    "Enable inlining of function declared \"inline\", disabling disables all inlining.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 7, /* .neg_idx = */ 789,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_no_inline), 0, CLVC_EQUAL, 0, -1, -1 },
 /* [790] = */ {
    "-finline-atomics",
    "Inline __atomic operations when a lock free instruction sequence is available.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ 790,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_inline_atomics), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [791] = */ {
    "-finline-functions",
    "Integrate functions not declared \"inline\" into their callers when profitable.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ 791,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_inline_functions), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [792] = */ {
    "-finline-functions-called-once",
    "Integrate functions only required by their single caller.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 29, /* .neg_idx = */ 792,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_inline_functions_called_once), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [793] = */ {
    "-finline-limit-",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_finline_limit_, N_OPTS, 14, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [794] = */ {
    "-finline-limit=",
    "-finline-limit=<number>	Limit the size of inlined functions to <number>.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 14, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 1 /* UInteger */, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [795] = */ {
    "-finline-matmul-limit=",
    "-finline-matmul-limit=<n>	Specify the size of the largest matrix for which matmul will be inlined.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 21, /* .neg_idx = */ -1,
    CL_Fortran | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 1 /* UInteger */, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_inline_matmul_limit), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [796] = */ {
    "-finline-small-functions",
    "Integrate functions into their callers when code size is known not to grow.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 23, /* .neg_idx = */ 796,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_inline_small_functions), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [797] = */ {
    "-finput-charset=",
    "-finput-charset=<cset>	Specify the default character set for source files.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [798] = */ {
    "-finstrument-functions",
    "Instrument function entry and exit with profiling calls.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 21, /* .neg_idx = */ 798,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_instrument_function_entry_exit), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [799] = */ {
    "-finstrument-functions-exclude-file-list=",
    "-finstrument-functions-exclude-file-list=filename,...  Do not instrument functions listed in files.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 40, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [800] = */ {
    "-finstrument-functions-exclude-function-list=",
    "-finstrument-functions-exclude-function-list=name,...  Do not instrument listed functions.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 44, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [801] = */ {
    "-finteger-4-integer-8",
    "Interpret any INTEGER(4) as an INTEGER(8).",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 20, /* .neg_idx = */ -1,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_integer4_kind), 0, CLVC_EQUAL, 8, -1, -1 },
 /* [802] = */ {
    "-fintrinsic-modules-path",
    "Specify where to find the compiled intrinsic modules.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 23, /* .neg_idx = */ -1,
    CL_Fortran | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [803] = */ {
    "-fintrinsic-modules-path=",
    "Specify where to find the compiled intrinsic modules.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 24, /* .neg_idx = */ -1,
    CL_Fortran | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [804] = */ {
    "-finvariants",
    "Generate code for class invariant contracts.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 11, /* .neg_idx = */ 804,
    CL_D,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_invariants), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [805] = */ {
    "-fipa-bit-cp",
    "Perform interprocedural bitwise constant propagation.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 11, /* .neg_idx = */ 805,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_ipa_bit_cp), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [806] = */ {
    "-fipa-cp",
    "Perform interprocedural constant propagation.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 7, /* .neg_idx = */ 806,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_ipa_cp), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [807] = */ {
    "-fipa-cp-alignment",
    "Does nothing.  Preserved for backward compatibility.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_ignore, N_OPTS, 17, /* .neg_idx = */ 807,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [808] = */ {
    "-fipa-cp-clone",
    "Perform cloning to make Interprocedural constant propagation stronger.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ 808,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_ipa_cp_clone), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [809] = */ {
    "-fipa-icf",
    "Perform Identical Code Folding for functions and read-only variables.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 8, /* .neg_idx = */ 809,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_ipa_icf), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [810] = */ {
    "-fipa-icf-functions",
    "Perform Identical Code Folding for functions.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 18, /* .neg_idx = */ 810,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_ipa_icf_functions), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [811] = */ {
    "-fipa-icf-variables",
    "Perform Identical Code Folding for variables.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 18, /* .neg_idx = */ 811,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_ipa_icf_variables), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [812] = */ {
    "-fipa-matrix-reorg",
    "Does nothing. Preserved for backward compatibility.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_ignore, N_OPTS, 17, /* .neg_idx = */ 812,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [813] = */ {
    "-fipa-profile",
    "Perform interprocedural profile propagation.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ 813,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_ipa_profile), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [814] = */ {
    "-fipa-pta",
    "Perform interprocedural points-to analysis.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 8, /* .neg_idx = */ 814,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_ipa_pta), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [815] = */ {
    "-fipa-pure-const",
    "Discover pure and const functions.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ 815,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_ipa_pure_const), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [816] = */ {
    "-fipa-ra",
    "Use caller save register across calls if possible.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 7, /* .neg_idx = */ 816,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_ipa_ra), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [817] = */ {
    "-fipa-reference",
    "Discover read-only and non addressable static variables.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 14, /* .neg_idx = */ 817,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_ipa_reference), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [818] = */ {
    "-fipa-reference-addressable",
    "Discover read-only, write-only and non-addressable static variables.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 26, /* .neg_idx = */ 818,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_ipa_reference_addressable), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [819] = */ {
    "-fipa-sra",
    "Perform interprocedural reduction of aggregates.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 8, /* .neg_idx = */ 819,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_ipa_sra), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [820] = */ {
    "-fipa-stack-alignment",
    "Reduce stack alignment on call sites if possible.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 20, /* .neg_idx = */ 820,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_ipa_stack_alignment), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [821] = */ {
    "-fipa-struct-reorg",
    "Does nothing. Preserved for backward compatibility.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_ignore, N_OPTS, 17, /* .neg_idx = */ 821,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [822] = */ {
    "-fipa-vrp",
    "Perform IPA Value Range Propagation.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 8, /* .neg_idx = */ 822,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_ipa_vrp), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [823] = */ {
    "-fira-algorithm=",
    "-fira-algorithm=[CB|priority]	Set the used IRA algorithm.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_ira_algorithm), 17, CLVC_ENUM, 0, -1, -1 },
 /* [824] = */ {
    "-fira-hoist-pressure",
    "Use IRA based register pressure calculation in RTL hoist optimizations.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 19, /* .neg_idx = */ 824,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_ira_hoist_pressure), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [825] = */ {
    "-fira-loop-pressure",
    "Use IRA based register pressure calculation in RTL loop optimizations.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 18, /* .neg_idx = */ 825,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_ira_loop_pressure), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [826] = */ {
    "-fira-region=",
    "-fira-region=[one|all|mixed]	Set regions for IRA.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_ira_region), 18, CLVC_ENUM, 0, -1, -1 },
 /* [827] = */ {
    "-fira-share-save-slots",
    "Share slots for saving different hard registers.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 21, /* .neg_idx = */ 827,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_ira_share_save_slots), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [828] = */ {
    "-fira-share-spill-slots",
    "Share stack slots for spilled pseudo-registers.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 22, /* .neg_idx = */ 828,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_ira_share_spill_slots), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [829] = */ {
    "-fira-verbose=",
    "-fira-verbose=<number>	Control IRA's level of diagnostic messages.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 1 /* UInteger */, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_ira_verbose), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [830] = */ {
    "-fisolate-erroneous-paths-attribute",
    "Detect paths that trigger erroneous or undefined behavior due to a null value being used in a way forbidden by a returns_nonnull or nonnull attribute.  Isolate those paths from the main control flow and turn the statement with erroneous or undefined behavior into a trap.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 34, /* .neg_idx = */ 830,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_isolate_erroneous_paths_attribute), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [831] = */ {
    "-fisolate-erroneous-paths-dereference",
    "Detect paths that trigger erroneous or undefined behavior due to dereferencing a null pointer.  Isolate those paths from the main control flow and turn the statement with erroneous or undefined behavior into a trap.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 36, /* .neg_idx = */ 831,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_isolate_erroneous_paths_dereference), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [832] = */ {
    "-fivar-visibility=",
    "-fvisibility=[private|protected|public|package]	Set the default symbol visibility.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ -1,
    CL_ObjC | CL_ObjCXX | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_default_ivar_visibility), 19, CLVC_ENUM, 0, -1, -1 },
 /* [833] = */ {
    "-fivopts",
    "Optimize induction variables on trees.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 7, /* .neg_idx = */ 833,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_ivopts), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [834] = */ {
    "-fjump-tables",
    "Use jump tables for sufficiently large switch statements.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ 834,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_jump_tables), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [835] = */ {
    "-fkeep-gc-roots-live",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 19, /* .neg_idx = */ 835,
    CL_COMMON | CL_UNDOCUMENTED | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_keep_gc_roots_live), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [836] = */ {
    "-fkeep-inline-dllexport",
    "Don't emit dllexported inline functions unless needed.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 22, /* .neg_idx = */ 836,
#if TARGET_DLLIMPORT_DECL_ATTRIBUTES
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
#else
    0,
    1 /* Disabled.  */, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
#endif
    offsetof (struct gcc_options, x_flag_keep_inline_dllexport), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [837] = */ {
    "-fkeep-inline-functions",
    "Generate code for functions even if they are fully inlined.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 22, /* .neg_idx = */ 837,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_keep_inline_functions), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [838] = */ {
    "-fkeep-static-consts",
    "Emit static const variables even if they are not used.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 19, /* .neg_idx = */ 838,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_keep_static_consts), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [839] = */ {
    "-fkeep-static-functions",
    "Generate code for static functions even if they are never called.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 22, /* .neg_idx = */ 839,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_keep_static_functions), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [840] = */ {
    "-flabels-ok",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_deprecated, N_OPTS, 10, /* .neg_idx = */ 840,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [841] = */ {
    "-flax-vector-conversions",
    "Allow implicit conversions between vectors with differing numbers of subparts and/or differing element types.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 23, /* .neg_idx = */ 841,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_lax_vector_conversions), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [842] = */ {
    "-fleading-underscore",
    "Give external symbols a leading underscore.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 19, /* .neg_idx = */ 842,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_leading_underscore), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [843] = */ {
    "-flifetime-dse",
    "Tell DSE that the storage for a C++ object is dead when the constructor starts and when the destructor finishes.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ 843,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_lifetime_dse), 0, CLVC_EQUAL, 2, -1, -1 },
 /* [844] = */ {
    "-flifetime-dse=",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 14, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 1 /* UInteger */, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_lifetime_dse), 0, CLVC_BOOLEAN, 0, 0, 2 },
 /* [845] = */ {
    "-flimit-function-alignment",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 25, /* .neg_idx = */ 845,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_limit_function_alignment), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [846] = */ {
    "-flinker-output=",
    "Set linker output type (used internally during LTO optimization).",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ -1,
    CL_LTO | CL_DRIVER | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_lto_linker_output), 21, CLVC_ENUM, 0, -1, -1 },
 /* [847] = */ {
    "-flive-patching",
    NULL,
    NULL,
    NULL,
    "inline-clone", NULL, OPT_flive_patching_, N_OPTS, 14, /* .neg_idx = */ -1,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [848] = */ {
    "-flive-patching=",
    "-flive-patching=[inline-only-static|inline-clone]	Control IPA optimizations to provide a safe compilation for live-patching.  At the same time, provides multiple-level control on the enabled IPA optimizations.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_live_patching), 20, CLVC_ENUM, 0, -1, -1 },
 /* [849] = */ {
    "-flive-range-shrinkage",
    "Relief of register pressure through live range shrinkage.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 21, /* .neg_idx = */ 849,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_live_range_shrinkage), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [850] = */ {
    "-flocal-ivars",
    "Allow access to instance variables as if they were local declarations within instance method implementations.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ 850,
    CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_local_ivars), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [851] = */ {
    "-floop-block",
    "Enable loop nest transforms.  Same as -floop-nest-optimize.",
    NULL,
    NULL,
    NULL, NULL, OPT_floop_nest_optimize, N_OPTS, 11, /* .neg_idx = */ 851,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [852] = */ {
    "-floop-flatten",
    "Does nothing. Preserved for backward compatibility.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_ignore, N_OPTS, 13, /* .neg_idx = */ 852,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [853] = */ {
    "-floop-interchange",
    "Enable loop interchange on trees.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ 853,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_loop_interchange), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [854] = */ {
    "-floop-nest-optimize",
    "Enable the loop nest optimizer.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 19, /* .neg_idx = */ 854,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_loop_nest_optimize), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [855] = */ {
    "-floop-optimize",
    "Does nothing.  Preserved for backward compatibility.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_ignore, N_OPTS, 14, /* .neg_idx = */ 855,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [856] = */ {
    "-floop-parallelize-all",
    "Mark all loops as parallel.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 21, /* .neg_idx = */ 856,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_loop_parallelize_all), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [857] = */ {
    "-floop-strip-mine",
    "Enable loop nest transforms.  Same as -floop-nest-optimize.",
    NULL,
    NULL,
    NULL, NULL, OPT_floop_nest_optimize, N_OPTS, 16, /* .neg_idx = */ 857,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [858] = */ {
    "-floop-unroll-and-jam",
    "Perform unroll-and-jam on loops.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 20, /* .neg_idx = */ 858,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_unroll_jam), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [859] = */ {
    "-flra-remat",
    "Do CFG-sensitive rematerialization in LRA.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 10, /* .neg_idx = */ 859,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_lra_remat), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [860] = */ {
    "-flto",
    "Enable link-time optimization.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 4, /* .neg_idx = */ 860,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [861] = */ {
    "-flto-compression-level=",
    "-flto-compression-level=<number>	Use zlib compression level <number> for IL.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 23, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 1 /* UInteger */, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_lto_compression_level), 0, CLVC_BOOLEAN, 0, 0, 9 },
 /* [862] = */ {
    "-flto-odr-type-merging",
    "Merge C++ types using One Definition Rule.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 21, /* .neg_idx = */ 862,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_lto_odr_type_mering), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [863] = */ {
    "-flto-partition=",
    "Specify the algorithm to partition symbols and vars at linktime.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_lto_partition), 22, CLVC_ENUM, 0, -1, -1 },
 /* [864] = */ {
    "-flto-report",
    "Report various link-time optimization statistics.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 11, /* .neg_idx = */ 864,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_lto_report), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [865] = */ {
    "-flto-report-wpa",
    "Report various link-time optimization statistics for WPA only.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ 865,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_lto_report_wpa), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [866] = */ {
    "-flto=",
    "Link-time optimization with number of parallel jobs or jobserver.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 5, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_lto), 0, CLVC_STRING, 0, -1, -1 },
 /* [867] = */ {
    "-fltrans",
    "Run the link-time optimizer in local transformation (LTRANS) mode.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 7, /* .neg_idx = */ 867,
    CL_LTO,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_ltrans), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [868] = */ {
    "-fltrans-output-list=",
    "Specify a file to which a list of files output by LTRANS is written.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 20, /* .neg_idx = */ 868,
    CL_LTO | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_ltrans_output_list), 0, CLVC_STRING, 0, -1, -1 },
 /* [869] = */ {
    "-fmacro-prefix-map=",
    "-fmacro-prefix-map=<old>=<new> Map one directory name to another in __FILE__, __BASE_FILE__, and __builtin_FILE().",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 18, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [870] = */ {
    "-fmain",
    "Generate a default D main() function when compiling.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 5, /* .neg_idx = */ -1,
    CL_D,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [871] = */ {
    "-fmath-errno",
    "Set errno after built-in math functions.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 11, /* .neg_idx = */ 871,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_errno_math), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [872] = */ {
    "-fmax-array-constructor=",
    "-fmax-array-constructor=<n>	Maximum number of objects in an array constructor.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 23, /* .neg_idx = */ -1,
    CL_Fortran | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 1 /* UInteger */, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_max_array_constructor), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [873] = */ {
    "-fmax-errors=",
    "-fmax-errors=<number>	Maximum number of errors to report.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 1 /* UInteger */, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_max_errors), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [874] = */ {
    "-fmax-identifier-length=",
    "-fmax-identifier-length=<n>	Maximum identifier length.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 23, /* .neg_idx = */ -1,
    CL_Fortran | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 1 /* UInteger */, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [875] = */ {
    "-fmax-stack-var-size=",
    "-fmax-stack-var-size=<n>	Size in bytes of the largest array that will be put on the stack.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 20, /* .neg_idx = */ -1,
    CL_Fortran | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 1 /* UInteger */, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_max_stack_var_size), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [876] = */ {
    "-fmax-subrecord-length=",
    "-fmax-subrecord-length=<n>	Maximum length for subrecords.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 22, /* .neg_idx = */ -1,
    CL_Fortran | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 1 /* UInteger */, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_max_subrecord_length), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [877] = */ {
    "-fmem-report",
    "Report on permanent memory allocation.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 11, /* .neg_idx = */ 877,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_mem_report), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [878] = */ {
    "-fmem-report-wpa",
    "Report on permanent memory allocation in WPA only.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ 878,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_mem_report_wpa), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [879] = */ {
    "-fmerge-all-constants",
    "Attempt to merge identical constants and constant variables.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 20, /* .neg_idx = */ 879,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_merge_constants), 0, CLVC_EQUAL, 2, -1, -1 },
 /* [880] = */ {
    "-fmerge-constants",
    "Attempt to merge identical constants across compilation units.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ 880,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_merge_constants), 0, CLVC_EQUAL, 1, -1, -1 },
 /* [881] = */ {
    "-fmerge-debug-strings",
    "Attempt to merge identical debug strings across compilation units.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 20, /* .neg_idx = */ 881,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_merge_debug_strings), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [882] = */ {
    "-fmessage-length=",
    "-fmessage-length=<number>	Limit diagnostics to <number> characters per line.  0 suppresses line-wrapping.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 1 /* UInteger */, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [883] = */ {
    "-fmodule-file=",
    "-fmodule-file=<package.module>=<filespec>	use <filespec> as source file for <package.module>.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ -1,
    CL_D | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [884] = */ {
    "-fmodule-private",
    "Set default accessibility of module entities to PRIVATE.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ 884,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_module_private), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [885] = */ {
    "-fmoduleinfo",
    "Generate ModuleInfo struct for output module.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 11, /* .neg_idx = */ 885,
    CL_D,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_moduleinfo), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [886] = */ {
    "-fmodulo-sched",
    "Perform SMS based modulo scheduling before the first scheduling pass.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ 886,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_modulo_sched), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [887] = */ {
    "-fmodulo-sched-allow-regmoves",
    "Perform SMS based modulo scheduling with register moves allowed.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 28, /* .neg_idx = */ 887,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_modulo_sched_allow_regmoves), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [888] = */ {
    "-fmove-loop-invariants",
    "Move loop invariant computations out of loops.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 21, /* .neg_idx = */ 888,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_move_loop_invariants), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [889] = */ {
    "-fms-extensions",
    "Don't warn about uses of Microsoft extensions.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 14, /* .neg_idx = */ 889,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_ms_extensions), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [890] = */ {
    "-fmudflap",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_deprecated, N_OPTS, 8, /* .neg_idx = */ 890,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [891] = */ {
    "-fmudflapir",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_deprecated, N_OPTS, 10, /* .neg_idx = */ 891,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [892] = */ {
    "-fmudflapth",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_deprecated, N_OPTS, 10, /* .neg_idx = */ 892,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [893] = */ {
    "-fname-mangling-version-",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_deprecated, N_OPTS, 23, /* .neg_idx = */ 893,
    CL_CXX | CL_ObjCXX | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [894] = */ {
    "-fnew-abi",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_deprecated, N_OPTS, 8, /* .neg_idx = */ 894,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [895] = */ {
    "-fnew-inheriting-ctors",
    "Implement C++17 inheriting constructor semantics.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 21, /* .neg_idx = */ 895,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_new_inheriting_ctors), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [896] = */ {
    "-fnew-ttp-matching",
    "Implement resolution of DR 150 for matching of template template arguments.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ 896,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_new_ttp), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [897] = */ {
    "-fnext-runtime",
    "Generate code for NeXT (Apple Mac OS X) runtime environment.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ -1,
    CL_LTO | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_next_runtime), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [898] = */ {
    "-fnil-receivers",
    "Assume that receivers of Objective-C messages may be nil.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 14, /* .neg_idx = */ 898,
    CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_nil_receivers), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [899] = */ {
    "-fnon-call-exceptions",
    "Support synchronous non-call exceptions.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 20, /* .neg_idx = */ 899,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_non_call_exceptions), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [900] = */ {
    "-fnonansi-builtins",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ 900,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_no_nonansi_builtin), 0, CLVC_EQUAL, 0, -1, -1 },
 /* [901] = */ {
    "-fnonnull-objects",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_deprecated, N_OPTS, 16, /* .neg_idx = */ 901,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [902] = */ {
    "-fnothrow-opt",
    "Treat a throw() exception specification as noexcept to improve code size.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ 902,
    CL_CXX | CL_ObjCXX | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_nothrow_opt), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [903] = */ {
    "-fobjc-abi-version=",
    "Specify which ABI to use for Objective-C family code and meta-data generation.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 18, /* .neg_idx = */ -1,
    CL_LTO | CL_ObjC | CL_ObjCXX | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 1 /* UInteger */, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_objc_abi), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [904] = */ {
    "-fobjc-call-cxx-cdtors",
    "Generate special Objective-C methods to initialize/destroy non-POD C++ ivars, if needed.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 21, /* .neg_idx = */ 904,
    CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_objc_call_cxx_cdtors), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [905] = */ {
    "-fobjc-direct-dispatch",
    "Allow fast jumps to the message dispatcher.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 21, /* .neg_idx = */ 905,
    CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_objc_direct_dispatch), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [906] = */ {
    "-fobjc-exceptions",
    "Enable Objective-C exception and synchronization syntax.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ 906,
    CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_objc_exceptions), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [907] = */ {
    "-fobjc-gc",
    "Enable garbage collection (GC) in Objective-C/Objective-C++ programs.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 8, /* .neg_idx = */ 907,
    CL_LTO | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_objc_gc), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [908] = */ {
    "-fobjc-nilcheck",
    "Enable inline checks for nil receivers with the NeXT runtime and ABI version 2.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 14, /* .neg_idx = */ 908,
    CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_objc_nilcheck), 0, CLVC_EQUAL, 1, -1, -1 },
 /* [909] = */ {
    "-fobjc-sjlj-exceptions",
    "Enable Objective-C setjmp exception handling runtime.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 21, /* .neg_idx = */ 909,
    CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_objc_sjlj_exceptions), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [910] = */ {
    "-fobjc-std=objc1",
    "Conform to the Objective-C 1.0 language as implemented in GCC 4.0.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ 910,
    CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_objc1_only), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [911] = */ {
    "-foffload-abi=",
    "-foffload-abi=[lp64|ilp32]     Set the ABI to use in an offload compiler.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_offload_abi), 23, CLVC_ENUM, 0, -1, -1 },
 /* [912] = */ {
    "-foffload=",
    "-foffload=<targets>=<options>  Specify offloading targets and options for them.",
    "options or targets missing after %qs",
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ 912,
    CL_COMMON | CL_DRIVER | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [913] = */ {
    "-fomit-frame-pointer",
    "When possible do not generate stack frames.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 19, /* .neg_idx = */ 913,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_omit_frame_pointer), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [914] = */ {
    "-fonly=",
    "Process all modules specified on the command line, but only generate code for the module specified by the argument.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 6, /* .neg_idx = */ -1,
    CL_D | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [915] = */ {
    "-fopenacc",
    "Enable OpenACC.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 8, /* .neg_idx = */ 915,
    CL_Ada | CL_C | CL_CXX | CL_Fortran | CL_LTO | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_openacc), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [916] = */ {
    "-fopenacc-dim=",
    "Specify default OpenACC compute dimensions.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ 916,
    CL_C | CL_CXX | CL_Fortran | CL_LTO | CL_ObjC | CL_ObjCXX | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_openacc_dims), 0, CLVC_STRING, 0, -1, -1 },
 /* [917] = */ {
    "-fopenmp",
    "Enable OpenMP (implies -frecursive in Fortran).",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 7, /* .neg_idx = */ 917,
    CL_C | CL_CXX | CL_Fortran | CL_LTO | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_openmp), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [918] = */ {
    "-fopenmp-simd",
    "Enable OpenMP's SIMD directives.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ 918,
    CL_C | CL_CXX | CL_Fortran | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_openmp_simd), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [919] = */ {
    "-foperator-names",
    "Recognize C++ keywords like \"compl\" and \"xor\".",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ 919,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [920] = */ {
    "-fopt-info",
    "Enable all optimization info dumps on stderr.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ 920,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_opt_info), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [921] = */ {
    "-fopt-info-",
    "-fopt-info[-<type>=filename]	Dump compiler optimization details.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 10, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_common_deferred_options), 0, CLVC_DEFER, 0, -1, -1 },
 /* [922] = */ {
    "-foptimize-register-move",
    "Does nothing. Preserved for backward compatibility.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_ignore, N_OPTS, 23, /* .neg_idx = */ 922,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [923] = */ {
    "-foptimize-sibling-calls",
    "Optimize sibling and tail recursive calls.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 23, /* .neg_idx = */ 923,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_optimize_sibling_calls), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [924] = */ {
    "-foptimize-strlen",
    "Enable string length optimizations on trees.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ 924,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_optimize_strlen), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [925] = */ {
    "-foptional-diags",
    "Does nothing.  Preserved for backward compatibility.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_ignore, N_OPTS, 15, /* .neg_idx = */ 925,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [926] = */ {
    "-fpack-derived",
    "Try to lay out derived types as compactly as possible.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ 926,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_pack_derived), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [927] = */ {
    "-fpack-struct",
    "Pack structure members together without holes.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ 927,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_pack_struct), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [928] = */ {
    "-fpack-struct=",
    "-fpack-struct=<number>	Set initial maximum structure member alignment.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 1 /* UInteger */, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [929] = */ {
    "-fpad-source",
    "Pad shorter fixed form lines to line width with spaces.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 11, /* .neg_idx = */ 929,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_pad_source), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [930] = */ {
    "-fpartial-inlining",
    "Perform partial inlining.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ 930,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_partial_inlining), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [931] = */ {
    "-fpatchable-function-entry=",
    "Insert NOP instructions at each function entry.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 26, /* .neg_idx = */ 931,
    CL_COMMON | CL_JOINED | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [932] = */ {
    "-fpcc-struct-return",
    "Return small aggregates in memory, not registers.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 18, /* .neg_idx = */ 932,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_pcc_struct_return), 0, CLVC_EQUAL, 1, -1, -1 },
 /* [933] = */ {
    "-fpch-deps",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ 933,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [934] = */ {
    "-fpch-preprocess",
    "Look for and use PCH files even when preprocessing.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ 934,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [935] = */ {
    "-fpeel-loops",
    "Perform loop peeling.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 11, /* .neg_idx = */ 935,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_peel_loops), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [936] = */ {
    "-fpeephole",
    "Enable machine specific peephole optimizations.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ 936,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_no_peephole), 0, CLVC_EQUAL, 0, -1, -1 },
 /* [937] = */ {
    "-fpeephole2",
    "Enable an RTL peephole pass before sched2.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 10, /* .neg_idx = */ 937,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_peephole2), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [938] = */ {
    "-fpermissive",
    "Downgrade conformance errors to warnings.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 11, /* .neg_idx = */ 938,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_permissive), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [939] = */ {
    "-fpermitted-flt-eval-methods=",
    "-fpermitted-flt-eval-methods=[c11|ts-18661]	Specify which values of FLT_EVAL_METHOD are permitted.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 28, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_permitted_flt_eval_methods), 24, CLVC_ENUM, 0, -1, -1 },
 /* [940] = */ {
    "-fpic",
    "Generate position-independent code if possible (small mode).",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 4, /* .neg_idx = */ 941,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_pic), 0, CLVC_EQUAL, 1, -1, -1 },
 /* [941] = */ {
    "-fpie",
    "Generate position-independent code for executables if possible (small mode).",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 4, /* .neg_idx = */ 505,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_pie), 0, CLVC_EQUAL, 1, -1, -1 },
 /* [942] = */ {
    "-fplan9-extensions",
    "Enable Plan 9 language extensions.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ 942,
    CL_C | CL_ObjC,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_plan9_extensions), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [943] = */ {
    "-fplt",
    "Use PLT for PIC calls (-fno-plt: load the address from GOT at call site).",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 4, /* .neg_idx = */ 943,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_plt), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [944] = */ {
    "-fplugin-arg-",
    "-fplugin-arg-<name>-<key>[=<value>]	Specify argument <key>=<value> for plugin <name>.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_common_deferred_options), 0, CLVC_DEFER, 0, -1, -1 },
 /* [945] = */ {
    "-fplugin=",
    "Specify a plugin to load.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 8, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_common_deferred_options), 0, CLVC_DEFER, 0, -1, -1 },
 /* [946] = */ {
    "-fpost-ipa-mem-report",
    "Report on memory allocation before interprocedural optimization.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 20, /* .neg_idx = */ 946,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_post_ipa_mem_report), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [947] = */ {
    "-fpostconditions",
    "Generate code for postcondition contracts.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ 947,
    CL_D,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_postconditions), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [948] = */ {
    "-fpre-include=",
    "Path to header file that should be pre-included before each compilation unit.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ -1,
    CL_Fortran | CL_JOINED | CL_UNDOCUMENTED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_pre_include), 0, CLVC_STRING, 0, -1, -1 },
 /* [949] = */ {
    "-fpre-ipa-mem-report",
    "Report on memory allocation before interprocedural optimization.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 19, /* .neg_idx = */ 949,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_pre_ipa_mem_report), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [950] = */ {
    "-fpreconditions",
    "Generate code for precondition contracts.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 14, /* .neg_idx = */ 950,
    CL_D,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_preconditions), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [951] = */ {
    "-fpredictive-commoning",
    "Run predictive commoning optimization.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 21, /* .neg_idx = */ 951,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_predictive_commoning), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [952] = */ {
    "-fprefetch-loop-arrays",
    "Generate prefetch instructions, if available, for arrays in loops.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 21, /* .neg_idx = */ 952,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_prefetch_loop_arrays), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [953] = */ {
    "-fpreprocessed",
    "Treat the input file as already preprocessed.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ 953,
    CL_C | CL_CXX | CL_Fortran | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [954] = */ {
    "-fpretty-templates",
    "-fno-pretty-templates Do not pretty-print template specializations as the template signature followed by the arguments.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ 954,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_pretty_templates), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [955] = */ {
    "-fprintf-return-value",
    "Treat known sprintf return values as constants.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 20, /* .neg_idx = */ 955,
    CL_C | CL_CXX | CL_LTO | CL_ObjC | CL_ObjCXX | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_printf_return_value), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [956] = */ {
    "-fprofile",
    "Enable basic program profiling code.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 8, /* .neg_idx = */ 956,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_profile_flag), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [957] = */ {
    "-fprofile-abs-path",
    "Generate absolute source path names for gcov.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ 957,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_profile_abs_path_flag), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [958] = */ {
    "-fprofile-arcs",
    "Insert arc-based program profiling code.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ 958,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_profile_arc_flag), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [959] = */ {
    "-fprofile-correction",
    "Enable correction of flow inconsistent profile data input.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 19, /* .neg_idx = */ 959,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_profile_correction), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [960] = */ {
    "-fprofile-dir=",
    "Set the top-level directory for storing the profile data. The default is 'pwd'.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_profile_data_prefix), 0, CLVC_STRING, 0, -1, -1 },
 /* [961] = */ {
    "-fprofile-exclude-files=",
    "Instrument only functions from files where names do not match all the regular expressions (separated by a semi-colon).",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 23, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_profile_exclude_files), 0, CLVC_STRING, 0, -1, -1 },
 /* [962] = */ {
    "-fprofile-filter-files=",
    "Instrument only functions from files where names match any regular expression (separated by a semi-colon).",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 22, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_profile_filter_files), 0, CLVC_STRING, 0, -1, -1 },
 /* [963] = */ {
    "-fprofile-generate",
    "Enable common options for generating profile info for profile feedback directed optimizations.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ 963,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [964] = */ {
    "-fprofile-generate=",
    "Enable common options for generating profile info for profile feedback directed optimizations, and set -fprofile-dir=.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 18, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [965] = */ {
    "-fprofile-reorder-functions",
    "Enable function reordering that improves code placement.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 26, /* .neg_idx = */ 965,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_profile_reorder_functions), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [966] = */ {
    "-fprofile-report",
    "Report on consistency of profile.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ 966,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_profile_report), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [967] = */ {
    "-fprofile-update=",
    "-fprofile-update=[single|atomic|prefer-atomic]	Set the profile update method.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_profile_update), 25, CLVC_ENUM, 0, -1, -1 },
 /* [968] = */ {
    "-fprofile-use",
    "Enable common options for performing profile feedback directed optimizations.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ 968,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_profile_use), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [969] = */ {
    "-fprofile-use=",
    "Enable common options for performing profile feedback directed optimizations, and set -fprofile-dir=.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [970] = */ {
    "-fprofile-values",
    "Insert code to profile values of expressions.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ 970,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_profile_values), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [971] = */ {
    "-fprotect-parens",
    "Protect parentheses in expressions.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ 971,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_protect_parens), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [972] = */ {
    "-frandom-seed",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ 972,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_common_deferred_options), 0, CLVC_DEFER, 0, -1, -1 },
 /* [973] = */ {
    "-frandom-seed=",
    "-frandom-seed=<string>	Make compile reproducible using <string>.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_common_deferred_options), 0, CLVC_DEFER, 0, -1, -1 },
 /* [974] = */ {
    "-frange-check",
    "Enable range checking during compilation.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ 974,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_range_check), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [975] = */ {
    "-freal-4-real-10",
    "Interpret any REAL(4) as a REAL(10).",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ -1,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_real4_kind), 0, CLVC_EQUAL, 10, -1, -1 },
 /* [976] = */ {
    "-freal-4-real-16",
    "Interpret any REAL(4) as a REAL(16).",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ -1,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_real4_kind), 0, CLVC_EQUAL, 16, -1, -1 },
 /* [977] = */ {
    "-freal-4-real-8",
    "Interpret any REAL(4) as a REAL(8).",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 14, /* .neg_idx = */ -1,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_real4_kind), 0, CLVC_EQUAL, 8, -1, -1 },
 /* [978] = */ {
    "-freal-8-real-10",
    "Interpret any REAL(8) as a REAL(10).",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ -1,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_real8_kind), 0, CLVC_EQUAL, 10, -1, -1 },
 /* [979] = */ {
    "-freal-8-real-16",
    "Interpret any REAL(8) as a REAL(16).",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ -1,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_real8_kind), 0, CLVC_EQUAL, 16, -1, -1 },
 /* [980] = */ {
    "-freal-8-real-4",
    "Interpret any REAL(8) as a REAL(4).",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 14, /* .neg_idx = */ -1,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_real8_kind), 0, CLVC_EQUAL, 4, -1, -1 },
 /* [981] = */ {
    "-frealloc-lhs",
    "Reallocate the LHS in assignments.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ 981,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_realloc_lhs), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [982] = */ {
    "-freciprocal-math",
    "Same as -fassociative-math for expressions which include division.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ 982,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_reciprocal_math), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [983] = */ {
    "-frecord-gcc-switches",
    "Record gcc command line switches in the object file.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 20, /* .neg_idx = */ 983,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_record_gcc_switches), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [984] = */ {
    "-frecord-marker=4",
    "Use a 4-byte record marker for unformatted files.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ -1,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_record_marker), 0, CLVC_EQUAL, 4, -1, -1 },
 /* [985] = */ {
    "-frecord-marker=8",
    "Use an 8-byte record marker for unformatted files.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ -1,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_record_marker), 0, CLVC_EQUAL, 8, -1, -1 },
 /* [986] = */ {
    "-frecursive",
    "Allocate local variables on the stack to allow indirect recursion.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 10, /* .neg_idx = */ 986,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_recursive), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [987] = */ {
    "-free",
    "Turn on Redundant Extensions Elimination pass.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 4, /* .neg_idx = */ 987,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_ree), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [988] = */ {
    "-freg-struct-return",
    "Return small aggregates in registers.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 18, /* .neg_idx = */ 988,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_pcc_struct_return), 0, CLVC_EQUAL, 0, -1, -1 },
 /* [989] = */ {
    "-fregmove",
    "Does nothing. Preserved for backward compatibility.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_ignore, N_OPTS, 8, /* .neg_idx = */ 989,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [990] = */ {
    "-frelease",
    "Compile release version.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 8, /* .neg_idx = */ 990,
    CL_D,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [991] = */ {
    "-frename-registers",
    "Perform a register renaming optimization pass.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ 991,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_rename_registers), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [992] = */ {
    "-freorder-blocks",
    "Reorder basic blocks to improve code placement.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ 992,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_reorder_blocks), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [993] = */ {
    "-freorder-blocks-algorithm=",
    "-freorder-blocks-algorithm=[simple|stc]	Set the used basic block reordering algorithm.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 26, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_reorder_blocks_algorithm), 26, CLVC_ENUM, 0, -1, -1 },
 /* [994] = */ {
    "-freorder-blocks-and-partition",
    "Reorder basic blocks and partition into hot and cold sections.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 29, /* .neg_idx = */ 994,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_reorder_blocks_and_partition), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [995] = */ {
    "-freorder-functions",
    "Reorder functions to improve code placement.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 18, /* .neg_idx = */ 995,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_reorder_functions), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [996] = */ {
    "-frepack-arrays",
    "Copy array sections into a contiguous block on procedure entry.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 14, /* .neg_idx = */ 996,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_repack_arrays), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [997] = */ {
    "-freplace-objc-classes",
    "Used in Fix-and-Continue mode to indicate that object files may be swapped in at runtime.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 21, /* .neg_idx = */ 997,
    CL_LTO | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_replace_objc_classes), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [998] = */ {
    "-frepo",
    "Enable automatic template instantiation.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 5, /* .neg_idx = */ 998,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [999] = */ {
    "-freport-bug",
    "Collect and dump debug information into temporary file if ICE in C/C++ compiler occurred.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 11, /* .neg_idx = */ 999,
    CL_COMMON | CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_report_bug), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1000] = */ {
    "-frequire-return-statement",
    "Functions which return values must end with return statements.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 25, /* .neg_idx = */ 1000,
    CL_Go | CL_WARNING,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_go_require_return_statement), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1001] = */ {
    "-frerun-cse-after-loop",
    "Add a common subexpression elimination pass after loop optimizations.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 21, /* .neg_idx = */ 1001,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_rerun_cse_after_loop), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1002] = */ {
    "-frerun-loop-opt",
    "Does nothing.  Preserved for backward compatibility.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_ignore, N_OPTS, 15, /* .neg_idx = */ 1002,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1003] = */ {
    "-freschedule-modulo-scheduled-loops",
    "Enable/Disable the traditional scheduling in loops that already passed modulo scheduling.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 34, /* .neg_idx = */ 1003,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_resched_modulo_sched), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1004] = */ {
    "-fresolution=",
    "The resolution file.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ 1004,
    CL_LTO | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [1005] = */ {
    "-frounding-math",
    "Disable optimizations that assume default FP rounding behavior.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 14, /* .neg_idx = */ 1005,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_rounding_math), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1006] = */ {
    "-frtti",
    "Generate run time type descriptor information.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 5, /* .neg_idx = */ 1006,
    CL_CXX | CL_D | CL_ObjCXX | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_rtti), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1007] = */ {
    "-fsanitize-address-use-after-scope",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 33, /* .neg_idx = */ 1007,
    CL_COMMON | CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_sanitize_address_use_after_scope), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1008] = */ {
    "-fsanitize-coverage=",
    "Select type of coverage sanitization.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 19, /* .neg_idx = */ 1008,
    CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [1009] = */ {
    "-fsanitize-recover",
    "This switch is deprecated; use -fsanitize-recover= instead.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ 1009,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1010] = */ {
    "-fsanitize-recover=",
    "After diagnosing undefined behavior attempt to continue execution.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 18, /* .neg_idx = */ 1010,
    CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [1011] = */ {
    "-fsanitize-sections=",
    "-fsanitize-sections=<sec1,sec2,...>	Sanitize global variables in user-defined sections.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 19, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_common_deferred_options), 0, CLVC_DEFER, 0, -1, -1 },
 /* [1012] = */ {
    "-fsanitize-undefined-trap-on-error",
    "Use trap instead of a library function for undefined behavior sanitization.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 33, /* .neg_idx = */ 1012,
    CL_COMMON | CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_sanitize_undefined_trap_on_error), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1013] = */ {
    "-fsanitize=",
    "Select what to sanitize.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 10, /* .neg_idx = */ 1013,
    CL_COMMON | CL_DRIVER | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [1014] = */ {
    "-fsave-optimization-record",
    "Write a SRCFILE.opt-record.json file detailing what optimizations were performed.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 25, /* .neg_idx = */ 1014,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_save_optimization_record), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1015] = */ {
    "-fsched-critical-path-heuristic",
    "Enable the critical path heuristic in the scheduler.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 30, /* .neg_idx = */ 1015,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_sched_critical_path_heuristic), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1016] = */ {
    "-fsched-dep-count-heuristic",
    "Enable the dependent count heuristic in the scheduler.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 26, /* .neg_idx = */ 1016,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_sched_dep_count_heuristic), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1017] = */ {
    "-fsched-group-heuristic",
    "Enable the group heuristic in the scheduler.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 22, /* .neg_idx = */ 1017,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_sched_group_heuristic), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1018] = */ {
    "-fsched-interblock",
    "Enable scheduling across basic blocks.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ 1018,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_schedule_interblock), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1019] = */ {
    "-fsched-last-insn-heuristic",
    "Enable the last instruction heuristic in the scheduler.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 26, /* .neg_idx = */ 1019,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_sched_last_insn_heuristic), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1020] = */ {
    "-fsched-pressure",
    "Enable register pressure sensitive insn scheduling.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ 1020,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_sched_pressure), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1021] = */ {
    "-fsched-rank-heuristic",
    "Enable the rank heuristic in the scheduler.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 21, /* .neg_idx = */ 1021,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_sched_rank_heuristic), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1022] = */ {
    "-fsched-spec",
    "Allow speculative motion of non-loads.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 11, /* .neg_idx = */ 1022,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_schedule_speculative), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1023] = */ {
    "-fsched-spec-insn-heuristic",
    "Enable the speculative instruction heuristic in the scheduler.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 26, /* .neg_idx = */ 1023,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_sched_spec_insn_heuristic), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1024] = */ {
    "-fsched-spec-load",
    "Allow speculative motion of some loads.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ 1024,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_schedule_speculative_load), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1025] = */ {
    "-fsched-spec-load-dangerous",
    "Allow speculative motion of more loads.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 26, /* .neg_idx = */ 1025,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_schedule_speculative_load_dangerous), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1026] = */ {
    "-fsched-stalled-insns",
    "Allow premature scheduling of queued insns.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 20, /* .neg_idx = */ 1026,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 1 /* UInteger */, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_sched_stalled_insns), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1027] = */ {
    "-fsched-stalled-insns-dep",
    "Set dependence distance checking in premature scheduling of queued insns.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 24, /* .neg_idx = */ 1027,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 1 /* UInteger */, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_sched_stalled_insns_dep), 0, CLVC_EQUAL, 1, -1, -1 },
 /* [1028] = */ {
    "-fsched-stalled-insns-dep=",
    "-fsched-stalled-insns-dep=<number>	Set dependence distance checking in premature scheduling of queued insns.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 25, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 1 /* UInteger */, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1029] = */ {
    "-fsched-stalled-insns=",
    "-fsched-stalled-insns=<number>	Set number of queued insns that can be prematurely scheduled.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 21, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 1 /* UInteger */, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1030] = */ {
    "-fsched-verbose=",
    "-fsched-verbose=<number>	Set the verbosity level of the scheduler.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 1 /* UInteger */, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_sched_verbose_param), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1031] = */ {
    "-fsched2-use-superblocks",
    "If scheduling post reload, do superblock scheduling.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 23, /* .neg_idx = */ 1031,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_sched2_use_superblocks), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1032] = */ {
    "-fsched2-use-traces",
    "Does nothing.  Preserved for backward compatibility.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_ignore, N_OPTS, 18, /* .neg_idx = */ 1032,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1033] = */ {
    "-fschedule-fusion",
    "Perform a target dependent instruction fusion optimization pass.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ 1033,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_schedule_fusion), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1034] = */ {
    "-fschedule-insns",
    "Reschedule instructions before register allocation.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ 1034,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_schedule_insns), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1035] = */ {
    "-fschedule-insns2",
    "Reschedule instructions after register allocation.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ 1035,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_schedule_insns_after_reload), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1036] = */ {
    "-fsecond-underscore",
    "Append a second underscore if the name already contains an underscore.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 18, /* .neg_idx = */ 1036,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_second_underscore), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1037] = */ {
    "-fsection-anchors",
    "Access data in the same section from shared anchor points.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ 1037,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_section_anchors), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1038] = */ {
    "-fsee",
    "Does nothing.  Preserved for backward compatibility.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_ignore, N_OPTS, 4, /* .neg_idx = */ 1038,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1039] = */ {
    "-fsel-sched-pipelining",
    "Perform software pipelining of inner loops during selective scheduling.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 21, /* .neg_idx = */ 1039,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_sel_sched_pipelining), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1040] = */ {
    "-fsel-sched-pipelining-outer-loops",
    "Perform software pipelining of outer loops during selective scheduling.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 33, /* .neg_idx = */ 1040,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_sel_sched_pipelining_outer_loops), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1041] = */ {
    "-fsel-sched-reschedule-pipelined",
    "Reschedule pipelined regions without pipelining.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 31, /* .neg_idx = */ 1041,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_sel_sched_reschedule_pipelined), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1042] = */ {
    "-fselective-scheduling",
    "Schedule instructions using selective scheduling algorithm.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 21, /* .neg_idx = */ 1042,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_selective_scheduling), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1043] = */ {
    "-fselective-scheduling2",
    "Run selective scheduling after reload.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 22, /* .neg_idx = */ 1043,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_selective_scheduling2), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1044] = */ {
    "-fself-test=",
    "Run self-tests, using the given path to locate test files.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 11, /* .neg_idx = */ 1044,
    CL_COMMON | CL_JOINED | CL_UNDOCUMENTED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_self_test), 0, CLVC_STRING, 0, -1, -1 },
 /* [1045] = */ {
    "-fsemantic-interposition",
    "Allow interposing function (or variables) by ones with different semantics (or initializer) respectively by dynamic linker.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 23, /* .neg_idx = */ 1045,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_semantic_interposition), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1046] = */ {
    "-fshort-enums",
    "Use the narrowest integer type possible for enumeration types.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ 1046,
    CL_Ada | CL_AdaSCIL | CL_AdaWhy | CL_C | CL_CXX | CL_Fortran | CL_LTO | CL_ObjC | CL_ObjCXX | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_short_enums), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1047] = */ {
    "-fshort-wchar",
    "Force the underlying type for \"wchar_t\" to be \"unsigned short\".",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ 1047,
    CL_C | CL_CXX | CL_LTO | CL_ObjC | CL_ObjCXX | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_short_wchar), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1048] = */ {
    "-fshow-column",
    "Show column numbers in diagnostics, when available.  Default on.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ 1048,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_show_column), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1049] = */ {
    "-fshrink-wrap",
    "Emit function prologues only before parts of the function that need it, rather than at the top of the function.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ 1049,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_shrink_wrap), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1050] = */ {
    "-fshrink-wrap-separate",
    "Shrink-wrap parts of the prologue and epilogue separately.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 21, /* .neg_idx = */ 1050,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_shrink_wrap_separate), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1051] = */ {
    "-fsign-zero",
    "Apply negative sign to zero values.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 10, /* .neg_idx = */ 1051,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_sign_zero), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1052] = */ {
    "-fsignaling-nans",
    "Disable optimizations observable by IEEE signaling NaNs.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ 1052,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_signaling_nans), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1053] = */ {
    "-fsigned-bitfields",
    "When \"signed\" or \"unsigned\" is not given make the bitfield signed.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ 1053,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_signed_bitfields), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1054] = */ {
    "-fsigned-char",
    "Make \"char\" signed by default.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ 1054,
    CL_Ada | CL_AdaSCIL | CL_AdaWhy | CL_C | CL_CXX | CL_LTO | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_signed_char), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1055] = */ {
    "-fsigned-zeros",
    "Disable floating point optimizations that ignore the IEEE signedness of zero.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ 1055,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_signed_zeros), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1056] = */ {
    "-fsimd-cost-model=",
    "-fsimd-cost-model=[unlimited|dynamic|cheap]	Specifies the vectorization cost model for code marked with a simd directive.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_simd_cost_model), 35, CLVC_ENUM, 0, -1, -1 },
 /* [1057] = */ {
    "-fsingle-precision-constant",
    "Convert floating point constants to single precision constants.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 26, /* .neg_idx = */ 1057,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_single_precision_constant), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1058] = */ {
    "-fsized-deallocation",
    "Enable C++14 sized deallocation support.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 19, /* .neg_idx = */ 1058,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_sized_deallocation), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1059] = */ {
    "-fsplit-ivs-in-unroller",
    "Split lifetimes of induction variables when loops are unrolled.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 22, /* .neg_idx = */ 1059,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_split_ivs_in_unroller), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1060] = */ {
    "-fsplit-loops",
    "Perform loop splitting.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ 1060,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_split_loops), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1061] = */ {
    "-fsplit-paths",
    "Split paths leading to loop backedges.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ 1061,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_split_paths), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1062] = */ {
    "-fsplit-stack",
    "Generate discontiguous stack frames.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ 1062,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_split_stack), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1063] = */ {
    "-fsplit-wide-types",
    "Split wide types into independent registers.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ 1063,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_split_wide_types), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1064] = */ {
    "-fsquangle",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_deprecated, N_OPTS, 9, /* .neg_idx = */ 1064,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1065] = */ {
    "-fssa-backprop",
    "Enable backward propagation of use properties at the SSA level.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ 1065,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_ssa_backprop), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1066] = */ {
    "-fssa-phiopt",
    "Optimize conditional patterns using SSA PHI nodes.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 11, /* .neg_idx = */ 1066,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_ssa_phiopt), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1067] = */ {
    "-fsso-struct=",
    "-fsso-struct=[big-endian|little-endian|native]	Set the default scalar storage order.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ -1,
    CL_C | CL_ObjC | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_default_sso), 27, CLVC_ENUM, 0, -1, -1 },
 /* [1068] = */ {
    "-fstack-arrays",
    "Put all local arrays on stack.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ 1068,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_stack_arrays), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1069] = */ {
    "-fstack-check",
    "Insert stack checking code into the program.  Same as -fstack-check=specific.",
    NULL,
    NULL,
    "specific", "no", OPT_fstack_check_, N_OPTS, 12, /* .neg_idx = */ 1069,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1070] = */ {
    "-fstack-check=",
    "-fstack-check=[no|generic|specific]	Insert stack checking code into the program.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 1 /* Report */, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [1071] = */ {
    "-fstack-clash-protection",
    "Insert code to probe each page of stack space as it is allocated to protect from stack-clash style attacks.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 23, /* .neg_idx = */ 1071,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_stack_clash_protection), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1072] = */ {
    "-fstack-limit",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ 1072,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_common_deferred_options), 0, CLVC_DEFER, 0, -1, -1 },
 /* [1073] = */ {
    "-fstack-limit-register=",
    "-fstack-limit-register=<register>	Trap if the stack goes past <register>.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 22, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_common_deferred_options), 0, CLVC_DEFER, 0, -1, -1 },
 /* [1074] = */ {
    "-fstack-limit-symbol=",
    "-fstack-limit-symbol=<name>	Trap if the stack goes past symbol <name>.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 20, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_common_deferred_options), 0, CLVC_DEFER, 0, -1, -1 },
 /* [1075] = */ {
    "-fstack-protector",
    "Use propolice as a stack protection method.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ 1075,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_stack_protect), 0, CLVC_EQUAL, 1, -1, -1 },
 /* [1076] = */ {
    "-fstack-protector-all",
    "Use a stack protection method for every function.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 20, /* .neg_idx = */ -1,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_stack_protect), 0, CLVC_EQUAL, 2, -1, -1 },
 /* [1077] = */ {
    "-fstack-protector-explicit",
    "Use stack protection method only for functions with the stack_protect attribute.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 25, /* .neg_idx = */ -1,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_stack_protect), 0, CLVC_EQUAL, 4, -1, -1 },
 /* [1078] = */ {
    "-fstack-protector-strong",
    "Use a smart stack protection method for certain functions.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 23, /* .neg_idx = */ -1,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_stack_protect), 0, CLVC_EQUAL, 3, -1, -1 },
 /* [1079] = */ {
    "-fstack-reuse=",
    "-fstack-reuse=[all|named_vars|none]	Set stack reuse level for local variables.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_stack_reuse), 29, CLVC_ENUM, 0, -1, -1 },
 /* [1080] = */ {
    "-fstack-usage",
    "Output stack usage information on a per-function basis.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ -1,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_stack_usage), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1081] = */ {
    "-fstats",
    "Display statistics accumulated during compilation.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 6, /* .neg_idx = */ 1081,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_detailed_statistics), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1082] = */ {
    "-fstdarg-opt",
    "Optimize amount of stdarg registers saved to stack at start of function.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 11, /* .neg_idx = */ 1082,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_stdarg_opt), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1083] = */ {
    "-fstore-merging",
    "Merge adjacent stores.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 14, /* .neg_idx = */ 1083,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_store_merging), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1084] = */ {
    "-fstrength-reduce",
    "Does nothing.  Preserved for backward compatibility.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_ignore, N_OPTS, 16, /* .neg_idx = */ 1084,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1085] = */ {
    "-fstrict-aliasing",
    "Assume strict aliasing rules apply.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ 1085,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_strict_aliasing), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1086] = */ {
    "-fstrict-enums",
    "Assume that values of enumeration type are always within the minimum range of that type.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ 1086,
    CL_CXX | CL_ObjCXX | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_strict_enums), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1087] = */ {
    "-fstrict-overflow",
    "Treat signed overflow as undefined.  Negated as -fwrapv -fwrapv-pointer.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ 1087,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1088] = */ {
    "-fstrict-prototype",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_deprecated, N_OPTS, 17, /* .neg_idx = */ 1088,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1089] = */ {
    "-fstrict-volatile-bitfields",
    "Force bitfield accesses to match their type width.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 26, /* .neg_idx = */ 1089,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_strict_volatile_bitfields), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1090] = */ {
    "-fstrong-eval-order",
    "Follow the C++17 evaluation order requirements for assignment expressions, shift, member function calls, etc.",
    NULL,
    NULL,
    "all", "none", OPT_fstrong_eval_order_, N_OPTS, 18, /* .neg_idx = */ 1090,
    CL_CXX | CL_ObjCXX | CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1091] = */ {
    "-fstrong-eval-order=",
    "Follow the C++17 evaluation order requirements for assignment expressions, shift, member function calls, etc.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 19, /* .neg_idx = */ -1,
    CL_CXX | CL_ObjCXX | CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_strong_eval_order), 30, CLVC_ENUM, 0, -1, -1 },
 /* [1092] = */ {
    "-fswitch-errors",
    "Generate code for switches without a default case.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 14, /* .neg_idx = */ 1092,
    CL_D,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_switch_errors), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1093] = */ {
    "-fsync-libcalls",
    "Implement __atomic operations via libcalls to legacy __sync functions.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 14, /* .neg_idx = */ 1093,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_sync_libcalls), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1094] = */ {
    "-fsyntax-only",
    "Check for syntax errors, then stop.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ 1094,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_syntax_only), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1095] = */ {
    "-ftabstop=",
    "-ftabstop=<number>	Distance between tab stops for column reporting.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 1 /* UInteger */, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1096] = */ {
    "-ftail-call-workaround",
    NULL,
    NULL,
    NULL,
    "1", "0", OPT_ftail_call_workaround_, N_OPTS, 21, /* .neg_idx = */ 1096,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1097] = */ {
    "-ftail-call-workaround=",
    "Disallow tail call optimization when a calling routine may have omitted character lengths.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 22, /* .neg_idx = */ -1,
    CL_Fortran | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 1 /* UInteger */, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_tail_call_workaround), 0, CLVC_BOOLEAN, 0, 0, 2 },
 /* [1098] = */ {
    "-ftarget-help",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT__target_help, N_OPTS, 12, /* .neg_idx = */ 1098,
    CL_COMMON | CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1099] = */ {
    "-ftemplate-backtrace-limit=",
    "Set the maximum number of template instantiation notes for a single warning or error.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 26, /* .neg_idx = */ -1,
    CL_CXX | CL_ObjCXX | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 1 /* UInteger */, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_template_backtrace_limit), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1100] = */ {
    "-ftemplate-depth-",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_ftemplate_depth_, N_OPTS, 16, /* .neg_idx = */ -1,
    CL_CXX | CL_ObjCXX | CL_JOINED | CL_UNDOCUMENTED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [1101] = */ {
    "-ftemplate-depth=",
    "-ftemplate-depth=<number>	Specify maximum template instantiation depth.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ -1,
    CL_CXX | CL_ObjCXX | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 1 /* UInteger */, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1102] = */ {
    "-ftest-coverage",
    "Create data files needed by \"gcov\".",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 14, /* .neg_idx = */ 1102,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_test_coverage), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1103] = */ {
    "-ftest-forall-temp",
    "Force creation of temporary to test infrequently-executed forall code.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ 1103,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_test_forall_temp), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1104] = */ {
    "-fthis-is-variable",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_deprecated, N_OPTS, 17, /* .neg_idx = */ 1104,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1105] = */ {
    "-fthread-jumps",
    "Perform jump threading optimizations.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ 1105,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_thread_jumps), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1106] = */ {
    "-fthreadsafe-statics",
    "-fno-threadsafe-statics	Do not generate thread-safe code for initializing local statics.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 19, /* .neg_idx = */ 1106,
    CL_CXX | CL_ObjCXX | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_threadsafe_statics), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1107] = */ {
    "-ftime-report",
    "Report the time taken by each compiler pass.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ 1107,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_time_report), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1108] = */ {
    "-ftime-report-details",
    "Record times taken by sub-phases separately.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 20, /* .neg_idx = */ 1108,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_time_report_details), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1109] = */ {
    "-ftls-model=",
    "-ftls-model=[global-dynamic|local-dynamic|initial-exec|local-exec]	Set the default thread-local storage code generation model.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 11, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_tls_default), 33, CLVC_ENUM, 0, -1, -1 },
 /* [1110] = */ {
    "-ftoplevel-reorder",
    "Reorder top level functions, variables, and asms.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ 1110,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_toplevel_reorder), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1111] = */ {
    "-ftracer",
    "Perform superblock formation via tail duplication.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 7, /* .neg_idx = */ 1111,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_tracer), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1112] = */ {
    "-ftrack-macro-expansion",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 22, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 1 /* JoinedOrMissing */, 1 /* UInteger */, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1113] = */ {
    "-ftrack-macro-expansion=",
    "-ftrack-macro-expansion=<0|1|2>  Track locations of tokens coming from macro expansion and display them in error messages.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_ftrack_macro_expansion, 23, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 1 /* JoinedOrMissing */, 1 /* UInteger */, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1114] = */ {
    "-ftrampolines",
    "For targets that normally need trampolines for nested functions, always generate them instead of using descriptors.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ 1114,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_trampolines), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1115] = */ {
    "-ftransition=all",
    "List information on all language changes.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ -1,
    CL_D,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1116] = */ {
    "-ftransition=checkimports",
    "Give deprecation messages about -ftransition=import anomalies.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 24, /* .neg_idx = */ -1,
    CL_D,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1117] = */ {
    "-ftransition=complex",
    "List all usages of complex or imaginary types.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 19, /* .neg_idx = */ -1,
    CL_D,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1118] = */ {
    "-ftransition=dip1000",
    "Implement DIP1000: Scoped pointers (experimental).",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 19, /* .neg_idx = */ -1,
    CL_D,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1119] = */ {
    "-ftransition=dip25",
    "Implement DIP25: Sealed references (experimental).",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ -1,
    CL_D,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1120] = */ {
    "-ftransition=field",
    "List all non-mutable fields which occupy an object instance.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ -1,
    CL_D,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1121] = */ {
    "-ftransition=import",
    "Revert to single phase name lookup.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 18, /* .neg_idx = */ -1,
    CL_D,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1122] = */ {
    "-ftransition=nogc",
    "List all hidden GC allocations.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ -1,
    CL_D,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1123] = */ {
    "-ftransition=tls",
    "List all variables going into thread local storage.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ -1,
    CL_D,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1124] = */ {
    "-ftrapping-math",
    "Assume floating-point operations can trap.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 14, /* .neg_idx = */ 1124,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_trapping_math), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1125] = */ {
    "-ftrapv",
    "Trap for signed overflow in addition, subtraction and multiplication.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 6, /* .neg_idx = */ 1125,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_trapv), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1126] = */ {
    "-ftree-bit-ccp",
    "Enable SSA-BIT-CCP optimization on trees.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ 1126,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_tree_bit_ccp), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1127] = */ {
    "-ftree-builtin-call-dce",
    "Enable conditional dead code elimination for builtin calls.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 22, /* .neg_idx = */ 1127,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_tree_builtin_call_dce), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1128] = */ {
    "-ftree-ccp",
    "Enable SSA-CCP optimization on trees.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ 1128,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_tree_ccp), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1129] = */ {
    "-ftree-ch",
    "Enable loop header copying on trees.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 8, /* .neg_idx = */ 1129,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_tree_ch), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1130] = */ {
    "-ftree-coalesce-inlined-vars",
    "Does nothing.  Preserved for backward compatibility.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_ignore, N_OPTS, 27, /* .neg_idx = */ -1,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1131] = */ {
    "-ftree-coalesce-vars",
    "Enable SSA coalescing of user variables.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 19, /* .neg_idx = */ 1131,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_tree_coalesce_vars), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1132] = */ {
    "-ftree-copy-prop",
    "Enable copy propagation on trees.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ 1132,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_tree_copy_prop), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1133] = */ {
    "-ftree-copyrename",
    "Does nothing.  Preserved for backward compatibility.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_ignore, N_OPTS, 16, /* .neg_idx = */ 1133,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1134] = */ {
    "-ftree-cselim",
    "Transform condition stores into unconditional ones.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ 1134,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_tree_cselim), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1135] = */ {
    "-ftree-dce",
    "Enable SSA dead code elimination optimization on trees.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ 1135,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_tree_dce), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1136] = */ {
    "-ftree-dominator-opts",
    "Enable dominator optimizations.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 20, /* .neg_idx = */ 1136,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_tree_dom), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1137] = */ {
    "-ftree-dse",
    "Enable dead store elimination.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ 1137,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_tree_dse), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1138] = */ {
    "-ftree-forwprop",
    "Enable forward propagation on trees.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 14, /* .neg_idx = */ 1138,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_tree_forwprop), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1139] = */ {
    "-ftree-fre",
    "Enable Full Redundancy Elimination (FRE) on trees.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ 1139,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_tree_fre), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1140] = */ {
    "-ftree-loop-distribute-patterns",
    "Enable loop distribution for patterns transformed into a library call.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 30, /* .neg_idx = */ 1140,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_tree_loop_distribute_patterns), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1141] = */ {
    "-ftree-loop-distribution",
    "Enable loop distribution on trees.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 23, /* .neg_idx = */ 1141,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_tree_loop_distribution), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1142] = */ {
    "-ftree-loop-if-convert",
    "Convert conditional jumps in innermost loops to branchless equivalents.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 21, /* .neg_idx = */ 1142,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_tree_loop_if_convert), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1143] = */ {
    "-ftree-loop-if-convert-stores",
    "Does nothing. Preserved for backward compatibility.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_ignore, N_OPTS, 28, /* .neg_idx = */ 1143,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1144] = */ {
    "-ftree-loop-im",
    "Enable loop invariant motion on trees.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ 1144,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_tree_loop_im), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1145] = */ {
    "-ftree-loop-ivcanon",
    "Create canonical induction variables in loops.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 18, /* .neg_idx = */ 1145,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_tree_loop_ivcanon), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1146] = */ {
    "-ftree-loop-linear",
    "Enable loop nest transforms.  Same as -floop-nest-optimize.",
    NULL,
    NULL,
    NULL, NULL, OPT_floop_nest_optimize, N_OPTS, 17, /* .neg_idx = */ 1146,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1147] = */ {
    "-ftree-loop-optimize",
    "Enable loop optimizations on tree level.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 19, /* .neg_idx = */ 1147,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_tree_loop_optimize), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1148] = */ {
    "-ftree-loop-vectorize",
    "Enable loop vectorization on trees.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 20, /* .neg_idx = */ 1148,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_tree_loop_vectorize), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1149] = */ {
    "-ftree-lrs",
    "Perform live range splitting during the SSA->normal pass.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ 1149,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_tree_live_range_split), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1150] = */ {
    "-ftree-parallelize-loops=",
    "-ftree-parallelize-loops=<number>	Enable automatic parallelization of loops.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 24, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 1 /* UInteger */, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_tree_parallelize_loops), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1151] = */ {
    "-ftree-partial-pre",
    "In SSA-PRE optimization on trees, enable partial-partial redundancy elimination.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ 1151,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_tree_partial_pre), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1152] = */ {
    "-ftree-phiprop",
    "Enable hoisting loads from conditional pointers.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ 1152,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_tree_phiprop), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1153] = */ {
    "-ftree-pre",
    "Enable SSA-PRE optimization on trees.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ 1153,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_tree_pre), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1154] = */ {
    "-ftree-pta",
    "Perform function-local points-to analysis on trees.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ 1154,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_tree_pta), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1155] = */ {
    "-ftree-reassoc",
    "Enable reassociation on tree level.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ 1155,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_tree_reassoc), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1156] = */ {
    "-ftree-salias",
    "Does nothing.  Preserved for backward compatibility.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_ignore, N_OPTS, 12, /* .neg_idx = */ 1156,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1157] = */ {
    "-ftree-scev-cprop",
    "Enable copy propagation of scalar-evolution information.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ 1157,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_tree_scev_cprop), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1158] = */ {
    "-ftree-sink",
    "Enable SSA code sinking on trees.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 10, /* .neg_idx = */ 1158,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_tree_sink), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1159] = */ {
    "-ftree-slp-vectorize",
    "Enable basic block vectorization (SLP) on trees.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 19, /* .neg_idx = */ 1159,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_tree_slp_vectorize), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1160] = */ {
    "-ftree-slsr",
    "Perform straight-line strength reduction.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 10, /* .neg_idx = */ 1160,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_tree_slsr), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1161] = */ {
    "-ftree-sra",
    "Perform scalar replacement of aggregates.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ 1161,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_tree_sra), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1162] = */ {
    "-ftree-store-ccp",
    "Does nothing.  Preserved for backward compatibility.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_ignore, N_OPTS, 15, /* .neg_idx = */ 1162,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1163] = */ {
    "-ftree-store-copy-prop",
    "Does nothing.  Preserved for backward compatibility.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_ignore, N_OPTS, 21, /* .neg_idx = */ 1163,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1164] = */ {
    "-ftree-switch-conversion",
    "Perform conversions of switch initializations.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 23, /* .neg_idx = */ 1164,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_tree_switch_conversion), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1165] = */ {
    "-ftree-tail-merge",
    "Enable tail merging on trees.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ 1165,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_tree_tail_merge), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1166] = */ {
    "-ftree-ter",
    "Replace temporary expressions in the SSA->normal pass.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ 1166,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_tree_ter), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1167] = */ {
    "-ftree-vect-loop-version",
    "Does nothing. Preserved for backward compatibility.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_ignore, N_OPTS, 23, /* .neg_idx = */ 1167,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1168] = */ {
    "-ftree-vectorize",
    "Enable vectorization on trees.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ 1168,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1169] = */ {
    "-ftree-vectorizer-verbose=",
    "Does nothing.  Preserved for backward compatibility.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_ignore, N_OPTS, 25, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [1170] = */ {
    "-ftree-vrp",
    "Perform Value Range Propagation on trees.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ 1170,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_tree_vrp), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1171] = */ {
    "-funconstrained-commons",
    "Assume common declarations may be overridden with ones with a larger trailing array.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 22, /* .neg_idx = */ 1171,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_unconstrained_commons), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1172] = */ {
    "-funderscoring",
    "Append underscores to externally visible names.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ 1172,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_underscoring), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1173] = */ {
    "-funit-at-a-time",
    "Compile whole compilation unit at a time.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ 1173,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_unit_at_a_time), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1174] = */ {
    "-funittest",
    "Compile in unittest code.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ 1174,
    CL_D,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1175] = */ {
    "-funroll-all-loops",
    "Perform loop unrolling for all loops.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ 1175,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_unroll_all_loops), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1176] = */ {
    "-funroll-loops",
    "Perform loop unrolling when iteration count is known.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ 1176,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_unroll_loops), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1177] = */ {
    "-funsafe-loop-optimizations",
    "Does nothing.  Preserved for backward compatibility.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_ignore, N_OPTS, 26, /* .neg_idx = */ 1177,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1178] = */ {
    "-funsafe-math-optimizations",
    "Allow math optimizations that may violate IEEE or ISO standards.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 26, /* .neg_idx = */ 1178,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_unsafe_math_optimizations), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1179] = */ {
    "-funsigned-bitfields",
    "When \"signed\" or \"unsigned\" is not given make the bitfield unsigned.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 19, /* .neg_idx = */ 1179,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_signed_bitfields), 0, CLVC_EQUAL, 0, -1, -1 },
 /* [1180] = */ {
    "-funsigned-char",
    "Make \"char\" unsigned by default.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 14, /* .neg_idx = */ 1180,
    CL_Ada | CL_AdaSCIL | CL_AdaWhy | CL_C | CL_CXX | CL_LTO | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_signed_char), 0, CLVC_EQUAL, 0, -1, -1 },
 /* [1181] = */ {
    "-funswitch-loops",
    "Perform loop unswitching.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ 1181,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_unswitch_loops), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1182] = */ {
    "-funwind-tables",
    "Just generate unwind tables for exception handling.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 14, /* .neg_idx = */ 1182,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_unwind_tables), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1183] = */ {
    "-fuse-cxa-atexit",
    "Use __cxa_atexit to register destructors.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ 1183,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_use_cxa_atexit), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1184] = */ {
    "-fuse-cxa-get-exception-ptr",
    "Use __cxa_get_exception_ptr in exception handling.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 26, /* .neg_idx = */ 1184,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_use_cxa_get_exception_ptr), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1185] = */ {
    "-fuse-ld=bfd",
    "Use the bfd linker instead of the default linker.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 11, /* .neg_idx = */ 1186,
    CL_COMMON | CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1186] = */ {
    "-fuse-ld=gold",
    "Use the gold linker instead of the default linker.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ 1185,
    CL_COMMON | CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1187] = */ {
    "-fuse-ld=lld",
    "Use the lld LLVM linker instead of the default linker.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 11, /* .neg_idx = */ 1187,
    CL_COMMON | CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1188] = */ {
    "-fuse-linker-plugin",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 18, /* .neg_idx = */ 1188,
    CL_COMMON | CL_UNDOCUMENTED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_use_linker_plugin), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1189] = */ {
    "-fvar-tracking",
    "Perform variable tracking.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ 1189,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_var_tracking), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1190] = */ {
    "-fvar-tracking-assignments",
    "Perform variable tracking by annotating assignments.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 25, /* .neg_idx = */ 1190,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_var_tracking_assignments), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1191] = */ {
    "-fvar-tracking-assignments-toggle",
    "Toggle -fvar-tracking-assignments.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 32, /* .neg_idx = */ 1191,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_var_tracking_assignments_toggle), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1192] = */ {
    "-fvar-tracking-uninit",
    "Perform variable tracking and also tag variables that are uninitialized.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 20, /* .neg_idx = */ 1192,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_var_tracking_uninit), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1193] = */ {
    "-fvariable-expansion-in-unroller",
    "Apply variable expansion when loops are unrolled.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 31, /* .neg_idx = */ 1193,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_variable_expansion_in_unroller), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1194] = */ {
    "-fvect-cost-model",
    "Enables the dynamic vectorizer cost model.  Preserved for backward compatibility.",
    NULL,
    NULL,
    "dynamic", "unlimited", OPT_fvect_cost_model_, N_OPTS, 16, /* .neg_idx = */ 1194,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1195] = */ {
    "-fvect-cost-model=",
    "-fvect-cost-model=[unlimited|dynamic|cheap]	Specifies the cost model for vectorization.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_vect_cost_model), 35, CLVC_ENUM, 0, -1, -1 },
 /* [1196] = */ {
    "-fverbose-asm",
    "Add extra commentary to assembler output.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ 1196,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_verbose_asm), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1197] = */ {
    "-fversion",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT__version, N_OPTS, 8, /* .neg_idx = */ 1197,
    CL_COMMON | CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1198] = */ {
    "-fversion-loops-for-strides",
    "Version loops based on whether indices have a stride of one.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 26, /* .neg_idx = */ 1198,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_version_loops_for_strides), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1199] = */ {
    "-fversion=",
    "-fversion=<level|ident>	Compile in version code >= <level> or identified by <ident>.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ -1,
    CL_D | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [1200] = */ {
    "-fvisibility-inlines-hidden",
    "Marks all inlined functions and methods as having hidden visibility.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 26, /* .neg_idx = */ 1200,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1201] = */ {
    "-fvisibility-ms-compat",
    "Changes visibility to match Microsoft Visual Studio by default.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 21, /* .neg_idx = */ 1201,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_visibility_ms_compat), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1202] = */ {
    "-fvisibility=",
    "-fvisibility=[default|internal|hidden|protected]	Set the default symbol visibility.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_default_visibility), 32, CLVC_ENUM, 0, -1, -1 },
 /* [1203] = */ {
    "-fvpt",
    "Use expression value profiles in optimizations.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 4, /* .neg_idx = */ 1203,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_value_profile_transformations), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1204] = */ {
    "-fvtable-gc",
    "No longer supported.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_deprecated, N_OPTS, 10, /* .neg_idx = */ 1204,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1205] = */ {
    "-fvtable-thunks",
    "No longer supported.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_deprecated, N_OPTS, 14, /* .neg_idx = */ 1205,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1206] = */ {
    "-fvtable-verify=",
    "Validate vtable pointers before using them.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_vtable_verify), 36, CLVC_ENUM, 0, -1, -1 },
 /* [1207] = */ {
    "-fvtv-counts",
    "Output vtable verification counters.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 11, /* .neg_idx = */ 1207,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_vtv_counts), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1208] = */ {
    "-fvtv-debug",
    "Output vtable verification pointer sets information.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 10, /* .neg_idx = */ 1208,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_vtv_debug), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1209] = */ {
    "-fweak",
    "Emit common-like symbols as weak symbols.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 5, /* .neg_idx = */ 1209,
    CL_CXX | CL_D | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_weak), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1210] = */ {
    "-fweb",
    "Construct webs and split unrelated uses of single variable.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 4, /* .neg_idx = */ 1210,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_web), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1211] = */ {
    "-fwhole-file",
    "Does nothing.  Preserved for backward compatibility.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_ignore, N_OPTS, 11, /* .neg_idx = */ 1211,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1212] = */ {
    "-fwhole-program",
    "Perform whole program optimizations.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 14, /* .neg_idx = */ 1212,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_whole_program), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1213] = */ {
    "-fwide-exec-charset=",
    "-fwide-exec-charset=<cset>	Convert all wide strings and character constants to character set <cset>.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 19, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [1214] = */ {
    "-fworking-directory",
    "Generate a #line directive pointing at the current working directory.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 18, /* .neg_idx = */ 1214,
    CL_C | CL_CXX | CL_Fortran | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_working_directory), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1215] = */ {
    "-fwpa",
    "Run the link-time optimizer in whole program analysis (WPA) mode.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 4, /* .neg_idx = */ 1215,
    CL_LTO | CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1216] = */ {
    "-fwpa=",
    "Whole program analysis (WPA) mode with number of parallel jobs specified.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 5, /* .neg_idx = */ -1,
    CL_LTO | CL_DRIVER | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_wpa), 0, CLVC_STRING, 0, -1, -1 },
 /* [1217] = */ {
    "-fwrapv",
    "Assume signed arithmetic overflow wraps around.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 6, /* .neg_idx = */ 1217,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_wrapv), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1218] = */ {
    "-fwrapv-pointer",
    "Assume pointer overflow wraps around.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 14, /* .neg_idx = */ 1218,
    CL_COMMON | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_wrapv_pointer), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1219] = */ {
    "-fxref",
    "No longer supported.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_deprecated, N_OPTS, 5, /* .neg_idx = */ 1219,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1220] = */ {
    "-fzee",
    "Does nothing.  Preserved for backward compatibility.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_ignore, N_OPTS, 4, /* .neg_idx = */ 1220,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1221] = */ {
    "-fzero-initialized-in-bss",
    "Put zero initialized data in the bss section.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 24, /* .neg_idx = */ 1221,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_zero_initialized_in_bss), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1222] = */ {
    "-fzero-link",
    "Generate lazy class lookup (via objc_getClass()) for use in Zero-Link mode.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 10, /* .neg_idx = */ 1222,
    CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_zero_link), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1223] = */ {
    "-g",
    "Generate debug information in default format.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 1, /* .neg_idx = */ -1,
    CL_COMMON | CL_DRIVER | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 1 /* JoinedOrMissing */, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [1224] = */ {
    "-gant",
    "Catch typos.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_g, 4, /* .neg_idx = */ -1,
    CL_Ada | CL_AdaSCIL | CL_AdaWhy | CL_DRIVER | CL_JOINED | CL_UNDOCUMENTED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [1225] = */ {
    "-gas-loc-support",
    "Assume assembler support for (DWARF2+) .loc directives.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_g, 15, /* .neg_idx = */ 1225,
    CL_COMMON | CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_dwarf2out_as_loc_support), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1226] = */ {
    "-gas-locview-support",
    "Assume assembler support for view in (DWARF2+) .loc directives.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_g, 19, /* .neg_idx = */ 1226,
    CL_COMMON | CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_dwarf2out_as_locview_support), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1227] = */ {
    "-gcoff",
    "Does nothing.  Preserved for backward compatibility.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_deprecated, OPT_g, 5, /* .neg_idx = */ 1227,
    CL_COMMON | CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1228] = */ {
    "-gcoff1",
    "Does nothing.  Preserved for backward compatibility.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_deprecated, OPT_g, 6, /* .neg_idx = */ 1228,
    CL_COMMON | CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1229] = */ {
    "-gcoff2",
    "Does nothing.  Preserved for backward compatibility.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_deprecated, OPT_g, 6, /* .neg_idx = */ 1229,
    CL_COMMON | CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1230] = */ {
    "-gcoff3",
    "Does nothing.  Preserved for backward compatibility.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_deprecated, OPT_g, 6, /* .neg_idx = */ 1230,
    CL_COMMON | CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1231] = */ {
    "-gcolumn-info",
    "Record DW_AT_decl_column and DW_AT_call_column in DWARF.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_g, 12, /* .neg_idx = */ 1231,
    CL_COMMON | CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_debug_column_info), 0, CLVC_EQUAL, 1, -1, -1 },
 /* [1232] = */ {
    "-gdescribe-dies",
    "Add description attributes to some DWARF DIEs that have no name attribute.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_g, 14, /* .neg_idx = */ 1232,
    CL_COMMON | CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_describe_dies), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1233] = */ {
    "-gdwarf",
    "Generate debug information in default version of DWARF format.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_g, 6, /* .neg_idx = */ 1234,
    CL_COMMON | CL_DRIVER | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 1 /* JoinedOrMissing */, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [1234] = */ {
    "-gdwarf-",
    "Generate debug information in DWARF v2 (or later) format.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_gdwarf, 7, /* .neg_idx = */ 1247,
    CL_COMMON | CL_DRIVER | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 0, 1 /* UInteger */, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_dwarf_version), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1235] = */ {
    "-gen-decls",
    "Dump declarations to a .decl file.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_g, 9, /* .neg_idx = */ -1,
    CL_ObjC | CL_ObjCXX | CL_DRIVER,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_gen_declaration), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1236] = */ {
    "-ggdb",
    "Generate debug information in default extended format.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_g, 4, /* .neg_idx = */ 1236,
    CL_COMMON | CL_DRIVER | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 1 /* JoinedOrMissing */, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [1237] = */ {
    "-ggnu-pubnames",
    "Generate DWARF pubnames and pubtypes sections with GNU extensions.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_g, 13, /* .neg_idx = */ 1243,
    CL_COMMON | CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_debug_generate_pub_sections), 0, CLVC_EQUAL, 2, -1, -1 },
 /* [1238] = */ {
    "-ginline-points",
    "Generate extended entry point information for inlined functions.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_g, 14, /* .neg_idx = */ 1238,
    CL_COMMON | CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_debug_inline_points), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1239] = */ {
    "-ginternal-reset-location-views",
    "Compute locview reset points based on insn length estimates.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_g, 30, /* .neg_idx = */ 1239,
    CL_COMMON | CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_debug_internal_reset_location_views), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1240] = */ {
    "-gnat",
    "-gnat<options>	Specify options to GNAT.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_g, 4, /* .neg_idx = */ -1,
    CL_Ada | CL_AdaSCIL | CL_AdaWhy | CL_DRIVER | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [1241] = */ {
    "-gnatO",
    "Set name of output ALI file (internal switch).",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_gnat, 5, /* .neg_idx = */ -1,
    CL_Ada | CL_AdaSCIL | CL_AdaWhy | CL_DRIVER | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [1242] = */ {
    "-gno-",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_g, 4, /* .neg_idx = */ -1,
    CL_JOINED | CL_UNDOCUMENTED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [1243] = */ {
    "-gno-pubnames",
    "Don't generate DWARF pubnames and pubtypes sections.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_gno_, 12, /* .neg_idx = */ 1244,
    CL_COMMON | CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_debug_generate_pub_sections), 0, CLVC_EQUAL, 0, -1, -1 },
 /* [1244] = */ {
    "-gpubnames",
    "Generate DWARF pubnames and pubtypes sections.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_g, 9, /* .neg_idx = */ 1237,
    CL_COMMON | CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_debug_generate_pub_sections), 0, CLVC_EQUAL, 1, -1, -1 },
 /* [1245] = */ {
    "-grecord-gcc-switches",
    "Record gcc command line switches in DWARF DW_AT_producer.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_g, 20, /* .neg_idx = */ 1245,
    CL_COMMON | CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_dwarf_record_gcc_switches), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1246] = */ {
    "-gsplit-dwarf",
    "Generate debug information in separate .dwo files.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_g, 12, /* .neg_idx = */ 1246,
    CL_COMMON | CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_dwarf_split_debug_info), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1247] = */ {
    "-gstabs",
    "Generate debug information in STABS format.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_g, 6, /* .neg_idx = */ 1248,
    CL_COMMON | CL_DRIVER | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 1 /* JoinedOrMissing */, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [1248] = */ {
    "-gstabs+",
    "Generate debug information in extended STABS format.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_gstabs, 7, /* .neg_idx = */ 1254,
    CL_COMMON | CL_DRIVER | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 1 /* JoinedOrMissing */, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [1249] = */ {
    "-gstatement-frontiers",
    "Emit progressive recommended breakpoint locations.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_g, 20, /* .neg_idx = */ 1249,
    CL_COMMON | CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_debug_nonbind_markers_p), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1250] = */ {
    "-gstrict-dwarf",
    "Don't emit DWARF additions beyond selected version.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_g, 13, /* .neg_idx = */ 1250,
    CL_COMMON | CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_dwarf_strict), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1251] = */ {
    "-gtoggle",
    "Toggle debug information generation.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_g, 7, /* .neg_idx = */ 1251,
    CL_COMMON | CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_gtoggle), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1252] = */ {
    "-gvariable-location-views",
    "Augment variable location lists with progressive views.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_g, 24, /* .neg_idx = */ 1252,
    CL_COMMON | CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_debug_variable_location_views), 0, CLVC_EQUAL, 1, -1, -1 },
 /* [1253] = */ {
    "-gvariable-location-views=incompat5",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_g, 34, /* .neg_idx = */ -1,
    CL_COMMON | CL_DRIVER,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_debug_variable_location_views), 0, CLVC_EQUAL, -1, -1, -1 },
 /* [1254] = */ {
    "-gvms",
    "Generate debug information in VMS format.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_g, 4, /* .neg_idx = */ 1255,
    CL_COMMON | CL_DRIVER | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 1 /* JoinedOrMissing */, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [1255] = */ {
    "-gxcoff",
    "Generate debug information in XCOFF format.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_g, 6, /* .neg_idx = */ 1256,
    CL_COMMON | CL_DRIVER | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 1 /* JoinedOrMissing */, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [1256] = */ {
    "-gxcoff+",
    "Generate debug information in extended XCOFF format.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_gxcoff, 7, /* .neg_idx = */ 1233,
    CL_COMMON | CL_DRIVER | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 1 /* JoinedOrMissing */, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [1257] = */ {
    "-gz",
    "Generate compressed debug sections.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_g, 2, /* .neg_idx = */ 1257,
    CL_COMMON | CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1258] = */ {
    "-gz=",
    "-gz=<format>	Generate compressed debug sections in format <format>.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_g, 3, /* .neg_idx = */ -1,
    CL_COMMON | CL_DRIVER | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 6, CLVC_ENUM, 0, -1, -1 },
 /* [1259] = */ {
    "-h",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 1, /* .neg_idx = */ -1,
    CL_DRIVER | CL_JOINED | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [1260] = */ {
    "-idirafter",
    "-idirafter <dir>	Add <dir> to the end of the system include path.",
    "missing path after %qs",
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_Fortran | CL_ObjC | CL_ObjCXX | CL_JOINED | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [1261] = */ {
    "-imacros",
    "-imacros <file>	Accept definition of macros in <file>.",
    "missing filename after %qs",
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 7, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_JOINED | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [1262] = */ {
    "-imultiarch",
    "-imultiarch <dir>	Set <dir> to be the multiarch include subdirectory.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 10, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED | CL_SEPARATE,
    0, 0, 0, 0, 0, 1 /* RejectDriver */, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_imultiarch), 0, CLVC_STRING, 0, -1, -1 },
 /* [1263] = */ {
    "-imultilib",
    "-imultilib <dir>	Set <dir> to be the multilib include subdirectory.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_D | CL_Fortran | CL_ObjC | CL_ObjCXX | CL_JOINED | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [1264] = */ {
    "-include",
    "-include <file>	Include the contents of <file> before other files.",
    "missing filename after %qs",
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 7, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_JOINED | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [1265] = */ {
    "-iplugindir=",
    "-iplugindir=<dir>	Set <dir> to be the default plugin directory.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 11, /* .neg_idx = */ -1,
    CL_COMMON | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_plugindir_string), 0, CLVC_STRING, 0, -1, -1 },
 /* [1266] = */ {
    "-iprefix",
    "-iprefix <path>	Specify <path> as a prefix for next two options.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 7, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_D | CL_Fortran | CL_ObjC | CL_ObjCXX | CL_JOINED | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [1267] = */ {
    "-iquote",
    "-iquote <dir>	Add <dir> to the end of the quote include path.",
    "missing path after %qs",
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 6, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_Fortran | CL_ObjC | CL_ObjCXX | CL_JOINED | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [1268] = */ {
    "-isysroot",
    "-isysroot <dir>	Set <dir> to be the system root directory.",
    "missing path after %qs",
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 8, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_D | CL_Fortran | CL_ObjC | CL_ObjCXX | CL_JOINED | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [1269] = */ {
    "-isystem",
    "-isystem <dir>	Add <dir> to the start of the system include path.",
    "missing path after %qs",
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 7, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_D | CL_Fortran | CL_ObjC | CL_ObjCXX | CL_JOINED | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [1270] = */ {
    "-iwithprefix",
    "-iwithprefix <dir>	Add <dir> to the end of the system include path.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 11, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_JOINED | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [1271] = */ {
    "-iwithprefixbefore",
    "-iwithprefixbefore <dir>	Add <dir> to the end of the main include path.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_iwithprefix, 17, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_JOINED | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [1272] = */ {
    "-k8",
    "Synonym of -gnatk8.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 2, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1273] = */ {
    "-l",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 1, /* .neg_idx = */ -1,
    CL_DRIVER | CL_JOINED | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [1274] = */ {
    "-lang-asm",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_l, 8, /* .neg_idx = */ -1,
    CL_C | CL_UNDOCUMENTED,
    0, 0, 0, 0, 0, 1 /* RejectDriver */, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1275] = */ {
    "-mabi=",
    "Generate code that conforms to the specified ABI.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 5, /* .neg_idx = */ -1,
    CL_TARGET | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_aarch64_abi), 0, CLVC_ENUM, 0, -1, -1 },
 /* [1276] = */ {
    "-march=",
    "Use features of architecture ARCH.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 6, /* .neg_idx = */ -1,
    CL_TARGET | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 1 /* ToLower */, 0, 0,
    offsetof (struct gcc_options, x_aarch64_arch_string), 0, CLVC_STRING, 0, -1, -1 },
 /* [1277] = */ {
    "-mbig-endian",
    "Assume target CPU is configured as big endian.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 11, /* .neg_idx = */ -1,
    CL_TARGET,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_target_flags), 0, CLVC_BIT_SET, MASK_BIG_END, -1, -1 },
 /* [1278] = */ {
    "-mbionic",
    "Use Bionic C library.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 7, /* .neg_idx = */ 1285,
    CL_TARGET,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_linux_libc), 0, CLVC_EQUAL, LIBC_BIONIC, -1, -1 },
 /* [1279] = */ {
    "-mbranch-protection=",
    "Use branch-protection features.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 19, /* .neg_idx = */ -1,
    CL_TARGET | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_aarch64_branch_protection_string), 0, CLVC_STRING, 0, -1, -1 },
 /* [1280] = */ {
    "-mcmodel=",
    "Specify the code model.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 8, /* .neg_idx = */ -1,
    CL_TARGET | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_aarch64_cmodel_var), 5, CLVC_ENUM, 0, -1, -1 },
 /* [1281] = */ {
    "-mcpu=",
    "Use features of and optimize for CPU.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 5, /* .neg_idx = */ -1,
    CL_TARGET | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 1 /* ToLower */, 0, 0,
    offsetof (struct gcc_options, x_aarch64_cpu_string), 0, CLVC_STRING, 0, -1, -1 },
 /* [1282] = */ {
    "-mfix-cortex-a53-835769",
    "Workaround for ARM Cortex-A53 Erratum number 835769.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 22, /* .neg_idx = */ 1282,
    CL_TARGET,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_aarch64_fix_a53_err835769), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1283] = */ {
    "-mfix-cortex-a53-843419",
    "Workaround for ARM Cortex-A53 Erratum number 843419.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 22, /* .neg_idx = */ 1283,
    CL_TARGET,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_aarch64_fix_a53_err843419), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1284] = */ {
    "-mgeneral-regs-only",
    "Generate code which uses only the general registers.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 18, /* .neg_idx = */ -1,
    CL_TARGET,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_target_flags), 0, CLVC_BIT_SET, MASK_GENERAL_REGS_ONLY, -1, -1 },
 /* [1285] = */ {
    "-mglibc",
    "Use GNU C library.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 6, /* .neg_idx = */ 1304,
    CL_TARGET,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_linux_libc), 0, CLVC_EQUAL, LIBC_GLIBC, -1, -1 },
 /* [1286] = */ {
    "-mlittle-endian",
    "Assume target CPU is configured as little endian.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 14, /* .neg_idx = */ -1,
    CL_TARGET,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_target_flags), 0, CLVC_BIT_CLEAR, MASK_BIG_END, -1, -1 },
 /* [1287] = */ {
    "-mlow-precision-div",
    "Enable the division approximation.  Enabling this reduces precision of division results to about 16 bits for single precision and to 32 bits for double precision.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 18, /* .neg_idx = */ 1287,
    CL_TARGET | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_mlow_precision_div), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1288] = */ {
    "-mlow-precision-recip-sqrt",
    "Enable the reciprocal square root approximation.  Enabling this reduces precision of reciprocal square root results to about 16 bits for single precision and to 32 bits for double precision.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 25, /* .neg_idx = */ 1288,
    CL_TARGET | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_mrecip_low_precision_sqrt), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1289] = */ {
    "-mlow-precision-sqrt",
    "Enable the square root approximation.  Enabling this reduces precision of square root results to about 16 bits for single precision and to 32 bits for double precision. If enabled, it implies -mlow-precision-recip-sqrt.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 19, /* .neg_idx = */ 1289,
    CL_TARGET | CL_OPTIMIZATION,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_mlow_precision_sqrt), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1290] = */ {
    "-mmusl",
    "Use musl C library.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 5, /* .neg_idx = */ 1278,
    CL_TARGET,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_linux_libc), 0, CLVC_EQUAL, LIBC_MUSL, -1, -1 },
 /* [1291] = */ {
    "-momit-leaf-frame-pointer",
    "Omit the frame pointer in leaf functions.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 24, /* .neg_idx = */ 1291,
    CL_TARGET,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_flag_omit_leaf_frame_pointer), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1292] = */ {
    "-moverride=",
    "-moverride=<string>	Power users only! Override CPU optimization parameters.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 10, /* .neg_idx = */ -1,
    CL_TARGET | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 1 /* ToLower */, 0, 0,
    offsetof (struct gcc_options, x_aarch64_override_tune_string), 0, CLVC_STRING, 0, -1, -1 },
 /* [1293] = */ {
    "-mpc-relative-literal-loads",
    "PC relative literal loads.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 26, /* .neg_idx = */ 1293,
    CL_TARGET,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_pcrelative_literal_loads), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1294] = */ {
    "-msign-return-address=",
    "Select return address signing scope.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_deprecated, N_OPTS, 21, /* .neg_idx = */ -1,
    CL_TARGET | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_aarch64_ra_sign_scope), 1, CLVC_ENUM, 0, -1, -1 },
 /* [1295] = */ {
    "-mstack-protector-guard-offset=",
    "Use an immediate to offset from the stack protector guard register, sp_el0. This option is for use with fstack-protector-strong and not for use in user-land code.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 30, /* .neg_idx = */ -1,
    CL_TARGET | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_aarch64_stack_protector_guard_offset_str), 0, CLVC_STRING, 0, -1, -1 },
 /* [1296] = */ {
    "-mstack-protector-guard-reg=",
    "Use the system register specified on the command line as the stack protector guard register. This option is for use with fstack-protector-strong and not for use in user-land code.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 27, /* .neg_idx = */ -1,
    CL_TARGET | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_aarch64_stack_protector_guard_reg_str), 0, CLVC_STRING, 0, -1, -1 },
 /* [1297] = */ {
    "-mstack-protector-guard=",
    "Use given stack-protector guard.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 23, /* .neg_idx = */ -1,
    CL_TARGET | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_aarch64_stack_protector_guard), 28, CLVC_ENUM, 0, -1, -1 },
 /* [1298] = */ {
    "-mstrict-align",
    "Don't assume that unaligned accesses are handled by the system.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ 1298,
    CL_TARGET,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_target_flags), 0, CLVC_BIT_SET, MASK_STRICT_ALIGN, -1, -1 },
 /* [1299] = */ {
    "-msve-vector-bits=",
    "-msve-vector-bits=<number>	Set the number of bits in an SVE vector register.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ -1,
    CL_TARGET | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_aarch64_sve_vector_bits), 31, CLVC_ENUM, 0, -1, -1 },
 /* [1300] = */ {
    "-mtls-dialect=",
    "Specify TLS dialect.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ -1,
    CL_TARGET | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_aarch64_tls_dialect), 34, CLVC_ENUM, 0, -1, -1 },
 /* [1301] = */ {
    "-mtls-size=",
    "Specifies bit size of immediate TLS offsets.  Valid values are 12, 24, 32, 48.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 10, /* .neg_idx = */ -1,
    CL_TARGET | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_aarch64_tls_size), 2, CLVC_ENUM, 0, -1, -1 },
 /* [1302] = */ {
    "-mtrack-speculation",
    "Generate code to track when the CPU might be speculating incorrectly.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 18, /* .neg_idx = */ 1302,
    CL_TARGET,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_aarch64_track_speculation), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1303] = */ {
    "-mtune=",
    "Optimize for CPU.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 6, /* .neg_idx = */ -1,
    CL_TARGET | CL_JOINED,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 1 /* ToLower */, 0, 0,
    offsetof (struct gcc_options, x_aarch64_tune_string), 0, CLVC_STRING, 0, -1, -1 },
 /* [1304] = */ {
    "-muclibc",
    "Use uClibc C library.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 7, /* .neg_idx = */ 1290,
    CL_TARGET,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 1 /* Report */, 0,
    offsetof (struct gcc_options, x_linux_libc), 0, CLVC_EQUAL, LIBC_UCLIBC, -1, -1 },
 /* [1305] = */ {
    "-mverbose-cost-dump",
    "Enables verbose cost model dumping in the debug dump files.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 18, /* .neg_idx = */ 1305,
    CL_TARGET | CL_UNDOCUMENTED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_aarch64_verbose_cost), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1306] = */ {
    "-n",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 1, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1307] = */ {
    "-no-canonical-prefixes",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 21, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1308] = */ {
    "-no-integrated-cpp",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1309] = */ {
    "-no-pie",
    "Don't create a dynamically linked position independent executable.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 6, /* .neg_idx = */ 1348,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1310] = */ {
    "-nocpp",
    "Disable preprocessing.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 5, /* .neg_idx = */ 491,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1311] = */ {
    "-nodefaultlibs",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1312] = */ {
    "-nolibc",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 6, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1313] = */ {
    "-nophoboslib",
    "Do not link the standard D library in the compilation.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 11, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1314] = */ {
    "-nostartfiles",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1315] = */ {
    "-nostdinc",
    "Do not search standard system include directories (those specified with -isystem will still be used).",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 8, /* .neg_idx = */ -1,
    CL_Ada | CL_AdaSCIL | CL_AdaWhy | CL_C | CL_CXX | CL_D | CL_Fortran | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1316] = */ {
    "-nostdinc++",
    "Do not search standard system include directories for C++.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 10, /* .neg_idx = */ -1,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1317] = */ {
    "-nostdlib",
    "Do not look for object files in standard path.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 8, /* .neg_idx = */ -1,
    CL_Ada | CL_AdaSCIL | CL_AdaWhy | CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1318] = */ {
    "-nostdlib++",
    "Do not link standard C++ runtime library",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 10, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1319] = */ {
    "-o",
    "-o <file>	Place output into <file>.",
    "missing filename after %qs",
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 1, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_Fortran | CL_Go | CL_ObjC | CL_ObjCXX | CL_COMMON | CL_DRIVER | CL_JOINED | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_asm_file_name), 0, CLVC_STRING, 0, -1, -1 },
 /* [1320] = */ {
    "-p",
    "Enable function profiling.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 1, /* .neg_idx = */ -1,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_profile_flag), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1321] = */ {
    "-pass-exit-codes",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_pass_exit_codes), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1322] = */ {
    "-pedantic",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_Wpedantic, N_OPTS, 8, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1323] = */ {
    "-pedantic-errors",
    "Like -pedantic but issue them as errors.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ -1,
    CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_pedantic_errors), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1324] = */ {
    "-pg",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 2, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1325] = */ {
    "-pie",
    "Create a dynamically linked position independent executable.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 3, /* .neg_idx = */ 1309,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1326] = */ {
    "-pipe",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 4, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_use_pipes), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1327] = */ {
    "-posix",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 5, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1328] = */ {
    "-print-file-name=",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ -1,
    CL_DRIVER | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 1 /* JoinedOrMissing */, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_print_file_name), 0, CLVC_STRING, 0, -1, -1 },
 /* [1329] = */ {
    "-print-libgcc-file-name",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 22, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1330] = */ {
    "-print-multi-directory",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 21, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_print_multi_directory), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1331] = */ {
    "-print-multi-lib",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_print_multi_lib), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1332] = */ {
    "-print-multi-os-directory",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 24, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_print_multi_os_directory), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1333] = */ {
    "-print-multiarch",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_print_multiarch), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1334] = */ {
    "-print-objc-runtime-info",
    "Generate C header of platform-specific features.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 23, /* .neg_idx = */ -1,
    CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1335] = */ {
    "-print-prog-name=",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ -1,
    CL_DRIVER | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 1 /* JoinedOrMissing */, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_print_prog_name), 0, CLVC_STRING, 0, -1, -1 },
 /* [1336] = */ {
    "-print-search-dirs",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 17, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_print_search_dirs), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1337] = */ {
    "-print-sysroot",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_print_sysroot), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1338] = */ {
    "-print-sysroot-headers-suffix",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 28, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_print_sysroot_headers_suffix), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1339] = */ {
    "-profile",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 7, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1340] = */ {
    "-pthread",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 7, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1341] = */ {
    "-quiet",
    "Do not display functions compiled or elapsed time.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 5, /* .neg_idx = */ -1,
    CL_COMMON,
    0, 0, 0, 0, 0, 1 /* RejectDriver */, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_quiet_flag), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1342] = */ {
    "-r",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 1, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1343] = */ {
    "-rdynamic",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 8, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1344] = */ {
    "-remap",
    "Remap file names when including files.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 5, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1345] = */ {
    "-s",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 1, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1346] = */ {
    "-save-temps",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 10, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1347] = */ {
    "-save-temps=",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 11, /* .neg_idx = */ -1,
    CL_DRIVER | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [1348] = */ {
    "-shared",
    "Create a shared library.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 6, /* .neg_idx = */ 1365,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1349] = */ {
    "-shared-libgcc",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1350] = */ {
    "-shared-libphobos",
    "Link the standard D library dynamically in the compilation.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1351] = */ {
    "-specs",
    NULL,
    NULL,
    NULL,
    NULL, NULL, OPT_specs_, N_OPTS, 5, /* .neg_idx = */ -1,
    CL_DRIVER | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [1352] = */ {
    "-specs=",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 6, /* .neg_idx = */ -1,
    CL_DRIVER | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [1353] = */ {
    "-static",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 6, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1354] = */ {
    "-static-libasan",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 14, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1355] = */ {
    "-static-libgcc",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 13, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1356] = */ {
    "-static-libgfortran",
    "Statically link the GNU Fortran helper library (libgfortran).",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 18, /* .neg_idx = */ -1,
    CL_Fortran | CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1357] = */ {
    "-static-libgo",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 12, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1358] = */ {
    "-static-liblsan",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 14, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1359] = */ {
    "-static-libmpx",
    "Deprecated in GCC 9.  This switch has no effect.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_deprecated, N_OPTS, 13, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1360] = */ {
    "-static-libmpxwrappers",
    "Deprecated in GCC 9.  This switch has no effect.",
    NULL,
    NULL,
    NULL, NULL, OPT_SPECIAL_deprecated, N_OPTS, 21, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1361] = */ {
    "-static-libphobos",
    "Link the standard D library statically in the compilation.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1362] = */ {
    "-static-libstdc++",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 16, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1363] = */ {
    "-static-libtsan",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 14, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1364] = */ {
    "-static-libubsan",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1365] = */ {
    "-static-pie",
    "Create a static position independent executable.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 10, /* .neg_idx = */ 1325,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 1 /* RejectNegative */, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1366] = */ {
    "-std=c++03",
    "Conform to the ISO 1998 C++ standard revised by the 2003 technical corrigendum.",
    NULL,
    NULL,
    NULL, NULL, OPT_std_c__98, N_OPTS, 9, /* .neg_idx = */ -1,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1367] = */ {
    "-std=c++0x",
    "Deprecated in favor of -std=c++11.",
    NULL,
    NULL,
    NULL, NULL, OPT_std_c__11, N_OPTS, 9, /* .neg_idx = */ -1,
    CL_CXX | CL_ObjCXX | CL_UNDOCUMENTED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1368] = */ {
    "-std=c++11",
    "Conform to the ISO 2011 C++ standard.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ -1,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1369] = */ {
    "-std=c++14",
    "Conform to the ISO 2014 C++ standard.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ -1,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1370] = */ {
    "-std=c++17",
    "Conform to the ISO 2017 C++ standard.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ -1,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1371] = */ {
    "-std=c++1y",
    "Deprecated in favor of -std=c++14.",
    NULL,
    NULL,
    NULL, NULL, OPT_std_c__14, N_OPTS, 9, /* .neg_idx = */ -1,
    CL_CXX | CL_ObjCXX | CL_UNDOCUMENTED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1372] = */ {
    "-std=c++1z",
    "Deprecated in favor of -std=c++17.",
    NULL,
    NULL,
    NULL, NULL, OPT_std_c__17, N_OPTS, 9, /* .neg_idx = */ -1,
    CL_CXX | CL_ObjCXX | CL_UNDOCUMENTED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1373] = */ {
    "-std=c++2a",
    "Conform to the ISO 2020(?) C++ draft standard (experimental and incomplete support).",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ -1,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1374] = */ {
    "-std=c++98",
    "Conform to the ISO 1998 C++ standard revised by the 2003 technical corrigendum.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ -1,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1375] = */ {
    "-std=c11",
    "Conform to the ISO 2011 C standard.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 7, /* .neg_idx = */ -1,
    CL_C | CL_ObjC,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1376] = */ {
    "-std=c17",
    "Conform to the ISO 2017 C standard (published in 2018).",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 7, /* .neg_idx = */ -1,
    CL_C | CL_ObjC,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1377] = */ {
    "-std=c18",
    "Conform to the ISO 2017 C standard (published in 2018).",
    NULL,
    NULL,
    NULL, NULL, OPT_std_c17, N_OPTS, 7, /* .neg_idx = */ -1,
    CL_C | CL_ObjC,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1378] = */ {
    "-std=c1x",
    "Deprecated in favor of -std=c11.",
    NULL,
    NULL,
    NULL, NULL, OPT_std_c11, N_OPTS, 7, /* .neg_idx = */ -1,
    CL_C | CL_ObjC,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1379] = */ {
    "-std=c2x",
    "Conform to the ISO 202X C standard draft (experimental and incomplete support).",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 7, /* .neg_idx = */ -1,
    CL_C | CL_ObjC,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1380] = */ {
    "-std=c89",
    "Conform to the ISO 1990 C standard.",
    NULL,
    NULL,
    NULL, NULL, OPT_std_c90, N_OPTS, 7, /* .neg_idx = */ -1,
    CL_C | CL_ObjC,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1381] = */ {
    "-std=c90",
    "Conform to the ISO 1990 C standard.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 7, /* .neg_idx = */ -1,
    CL_C | CL_ObjC,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1382] = */ {
    "-std=c99",
    "Conform to the ISO 1999 C standard.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 7, /* .neg_idx = */ -1,
    CL_C | CL_ObjC,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1383] = */ {
    "-std=c9x",
    "Deprecated in favor of -std=c99.",
    NULL,
    NULL,
    NULL, NULL, OPT_std_c99, N_OPTS, 7, /* .neg_idx = */ -1,
    CL_C | CL_ObjC,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1384] = */ {
    "-std=f2003",
    "Conform to the ISO Fortran 2003 standard.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ -1,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1385] = */ {
    "-std=f2008",
    "Conform to the ISO Fortran 2008 standard.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ -1,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1386] = */ {
    "-std=f2008ts",
    "Conform to the ISO Fortran 2008 standard including TS 29113.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 11, /* .neg_idx = */ -1,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1387] = */ {
    "-std=f2018",
    "Conform to the ISO Fortran 2018 standard.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ -1,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1388] = */ {
    "-std=f95",
    "Conform to the ISO Fortran 95 standard.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 7, /* .neg_idx = */ -1,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1389] = */ {
    "-std=gnu",
    "Conform to nothing in particular.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 7, /* .neg_idx = */ -1,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1390] = */ {
    "-std=gnu++03",
    "Conform to the ISO 1998 C++ standard revised by the 2003 technical corrigendum with GNU extensions.",
    NULL,
    NULL,
    NULL, NULL, OPT_std_gnu__98, N_OPTS, 11, /* .neg_idx = */ -1,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1391] = */ {
    "-std=gnu++0x",
    "Deprecated in favor of -std=gnu++11.",
    NULL,
    NULL,
    NULL, NULL, OPT_std_gnu__11, N_OPTS, 11, /* .neg_idx = */ -1,
    CL_CXX | CL_ObjCXX | CL_UNDOCUMENTED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1392] = */ {
    "-std=gnu++11",
    "Conform to the ISO 2011 C++ standard with GNU extensions.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 11, /* .neg_idx = */ -1,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1393] = */ {
    "-std=gnu++14",
    "Conform to the ISO 2014 C++ standard with GNU extensions.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 11, /* .neg_idx = */ -1,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1394] = */ {
    "-std=gnu++17",
    "Conform to the ISO 2017 C++ standard with GNU extensions.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 11, /* .neg_idx = */ -1,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1395] = */ {
    "-std=gnu++1y",
    "Deprecated in favor of -std=gnu++14.",
    NULL,
    NULL,
    NULL, NULL, OPT_std_gnu__14, N_OPTS, 11, /* .neg_idx = */ -1,
    CL_CXX | CL_ObjCXX | CL_UNDOCUMENTED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1396] = */ {
    "-std=gnu++1z",
    "Deprecated in favor of -std=gnu++17.",
    NULL,
    NULL,
    NULL, NULL, OPT_std_gnu__17, N_OPTS, 11, /* .neg_idx = */ -1,
    CL_CXX | CL_ObjCXX | CL_UNDOCUMENTED,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1397] = */ {
    "-std=gnu++2a",
    "Conform to the ISO 2020(?) C++ draft standard with GNU extensions (experimental and incomplete support).",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 11, /* .neg_idx = */ -1,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1398] = */ {
    "-std=gnu++98",
    "Conform to the ISO 1998 C++ standard revised by the 2003 technical corrigendum with GNU extensions.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 11, /* .neg_idx = */ -1,
    CL_CXX | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1399] = */ {
    "-std=gnu11",
    "Conform to the ISO 2011 C standard with GNU extensions.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ -1,
    CL_C | CL_ObjC,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1400] = */ {
    "-std=gnu17",
    "Conform to the ISO 2017 C standard (published in 2018) with GNU extensions.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ -1,
    CL_C | CL_ObjC,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1401] = */ {
    "-std=gnu18",
    "Conform to the ISO 2017 C standard (published in 2018) with GNU extensions.",
    NULL,
    NULL,
    NULL, NULL, OPT_std_gnu17, N_OPTS, 9, /* .neg_idx = */ -1,
    CL_C | CL_ObjC,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1402] = */ {
    "-std=gnu1x",
    "Deprecated in favor of -std=gnu11.",
    NULL,
    NULL,
    NULL, NULL, OPT_std_gnu11, N_OPTS, 9, /* .neg_idx = */ -1,
    CL_C | CL_ObjC,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1403] = */ {
    "-std=gnu2x",
    "Conform to the ISO 202X C standard draft with GNU extensions (experimental and incomplete support).",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ -1,
    CL_C | CL_ObjC,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1404] = */ {
    "-std=gnu89",
    "Conform to the ISO 1990 C standard with GNU extensions.",
    NULL,
    NULL,
    NULL, NULL, OPT_std_gnu90, N_OPTS, 9, /* .neg_idx = */ -1,
    CL_C | CL_ObjC,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1405] = */ {
    "-std=gnu90",
    "Conform to the ISO 1990 C standard with GNU extensions.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ -1,
    CL_C | CL_ObjC,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1406] = */ {
    "-std=gnu99",
    "Conform to the ISO 1999 C standard with GNU extensions.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ -1,
    CL_C | CL_ObjC,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1407] = */ {
    "-std=gnu9x",
    "Deprecated in favor of -std=gnu99.",
    NULL,
    NULL,
    NULL, NULL, OPT_std_gnu99, N_OPTS, 9, /* .neg_idx = */ -1,
    CL_C | CL_ObjC,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1408] = */ {
    "-std=iso9899:1990",
    "Conform to the ISO 1990 C standard.",
    NULL,
    NULL,
    NULL, NULL, OPT_std_c90, N_OPTS, 16, /* .neg_idx = */ -1,
    CL_C | CL_ObjC,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1409] = */ {
    "-std=iso9899:199409",
    "Conform to the ISO 1990 C standard as amended in 1994.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 18, /* .neg_idx = */ -1,
    CL_C | CL_ObjC,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1410] = */ {
    "-std=iso9899:1999",
    "Conform to the ISO 1999 C standard.",
    NULL,
    NULL,
    NULL, NULL, OPT_std_c99, N_OPTS, 16, /* .neg_idx = */ -1,
    CL_C | CL_ObjC,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1411] = */ {
    "-std=iso9899:199x",
    "Deprecated in favor of -std=iso9899:1999.",
    NULL,
    NULL,
    NULL, NULL, OPT_std_c99, N_OPTS, 16, /* .neg_idx = */ -1,
    CL_C | CL_ObjC,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1412] = */ {
    "-std=iso9899:2011",
    "Conform to the ISO 2011 C standard.",
    NULL,
    NULL,
    NULL, NULL, OPT_std_c11, N_OPTS, 16, /* .neg_idx = */ -1,
    CL_C | CL_ObjC,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1413] = */ {
    "-std=iso9899:2017",
    "Conform to the ISO 2017 C standard (published in 2018).",
    NULL,
    NULL,
    NULL, NULL, OPT_std_c17, N_OPTS, 16, /* .neg_idx = */ -1,
    CL_C | CL_ObjC,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1414] = */ {
    "-std=iso9899:2018",
    "Conform to the ISO 2017 C standard (published in 2018).",
    NULL,
    NULL,
    NULL, NULL, OPT_std_c17, N_OPTS, 16, /* .neg_idx = */ -1,
    CL_C | CL_ObjC,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1415] = */ {
    "-std=legacy",
    "Accept extensions to support legacy code.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 10, /* .neg_idx = */ -1,
    CL_Fortran,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1416] = */ {
    "-symbolic",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 8, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1417] = */ {
    "-t",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 1, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1418] = */ {
    "-time",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 4, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_report_times), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1419] = */ {
    "-time=",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 5, /* .neg_idx = */ -1,
    CL_DRIVER | CL_JOINED,
    0, 0, 0, 0, 0, 0, 0, 1 /* JoinedOrMissing */, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [1420] = */ {
    "-traditional",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 11, /* .neg_idx = */ -1,
    CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1421] = */ {
    "-traditional-cpp",
    "Enable traditional preprocessing.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 15, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1422] = */ {
    "-trigraphs",
    "-trigraphs	Support ISO C trigraphs.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 9, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1423] = */ {
    "-u",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 1, /* .neg_idx = */ -1,
    CL_DRIVER | CL_JOINED | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [1424] = */ {
    "-undef",
    "Do not predefine system-specific and GCC-specific macros.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, OPT_u, 5, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_Fortran | CL_ObjC | CL_ObjCXX | CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_flag_undef), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1425] = */ {
    "-v",
    "Enable verbose output.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 1, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_D | CL_Fortran | CL_ObjC | CL_ObjCXX | CL_COMMON | CL_DRIVER,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_verbose_flag), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1426] = */ {
    "-version",
    "Display the compiler's version.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 7, /* .neg_idx = */ -1,
    CL_COMMON,
    0, 0, 0, 0, 0, 1 /* RejectDriver */, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_version_flag), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1427] = */ {
    "-w",
    "Suppress warnings.",
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 1, /* .neg_idx = */ -1,
    CL_C | CL_CXX | CL_ObjC | CL_ObjCXX | CL_COMMON,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_inhibit_warnings), 0, CLVC_BOOLEAN, 0, -1, -1 },
 /* [1428] = */ {
    "-wrapper",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 7, /* .neg_idx = */ -1,
    CL_DRIVER | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    offsetof (struct gcc_options, x_wrapper_string), 0, CLVC_STRING, 0, -1, -1 },
 /* [1429] = */ {
    "-x",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 1, /* .neg_idx = */ -1,
    CL_DRIVER | CL_JOINED | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 },
 /* [1430] = */ {
    "-z",
    NULL,
    NULL,
    NULL,
    NULL, NULL, N_OPTS, N_OPTS, 1, /* .neg_idx = */ -1,
    CL_DRIVER | CL_JOINED | CL_SEPARATE,
    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
    (unsigned short) -1, 0, CLVC_STRING, 0, -1, -1 }
};



bool                                                                  
common_handle_option_auto (struct gcc_options *opts,                  
                           struct gcc_options *opts_set,              
                           const struct cl_decoded_option *decoded,   
                           unsigned int lang_mask, int kind,          
                           location_t loc,                            
                           const struct cl_option_handlers *handlers, 
                           diagnostic_context *dc)                    
{                                                                     
  size_t scode = decoded->opt_index;                                  
  HOST_WIDE_INT value = decoded->value;                               
  enum opt_code code = (enum opt_code) scode;                         
                                                                      
  gcc_assert (decoded->canonical_option_num_elements <= 2);           
                                                                      
  switch (code)                                                       
    {                                                                 
    case OPT_Wextra:
      if (!opts_set->x_warn_absolute_value)
        handle_generated_option (opts, opts_set,
                                 OPT_Wabsolute_value, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_cast_function_type)
        handle_generated_option (opts, opts_set,
                                 OPT_Wcast_function_type, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_clobbered)
        handle_generated_option (opts, opts_set,
                                 OPT_Wclobbered, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_empty_body)
        handle_generated_option (opts, opts_set,
                                 OPT_Wempty_body, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_cpp_warn_expansion_to_defined)
        handle_generated_option (opts, opts_set,
                                 OPT_Wexpansion_to_defined, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_ignored_qualifiers)
        handle_generated_option (opts, opts_set,
                                 OPT_Wignored_qualifiers, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_missing_field_initializers)
        handle_generated_option (opts, opts_set,
                                 OPT_Wmissing_field_initializers, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_missing_parameter_type)
        handle_generated_option (opts, opts_set,
                                 OPT_Wmissing_parameter_type, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_old_style_declaration)
        handle_generated_option (opts, opts_set,
                                 OPT_Wold_style_declaration, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_override_init)
        handle_generated_option (opts, opts_set,
                                 OPT_Woverride_init, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_sign_compare)
        handle_generated_option (opts, opts_set,
                                 OPT_Wsign_compare, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_sized_deallocation)
        handle_generated_option (opts, opts_set,
                                 OPT_Wsized_deallocation, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_type_limits)
        handle_generated_option (opts, opts_set,
                                 OPT_Wtype_limits, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_uninitialized)
        handle_generated_option (opts, opts_set,
                                 OPT_Wuninitialized, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_unused_but_set_parameter)
        handle_generated_option (opts, opts_set,
                                 OPT_Wunused_but_set_parameter, NULL, (opts->x_warn_unused && opts->x_extra_warnings),
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_unused_parameter)
        handle_generated_option (opts, opts_set,
                                 OPT_Wunused_parameter, NULL, (opts->x_warn_unused && opts->x_extra_warnings),
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    case OPT_Wpedantic:
      if (!opts_set->x_cpp_warn_expansion_to_defined)
        handle_generated_option (opts, opts_set,
                                 OPT_Wexpansion_to_defined, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    case OPT_Wuninitialized:
      if (!opts_set->x_warn_maybe_uninitialized)
        handle_generated_option (opts, opts_set,
                                 OPT_Wmaybe_uninitialized, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    case OPT_Wshadow:
      if (!opts_set->x_warn_shadow_ivar)
        handle_generated_option (opts, opts_set,
                                 OPT_Wshadow_ivar, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_shadow_local)
        handle_generated_option (opts, opts_set,
                                 OPT_Wshadow_local, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    case OPT_Wshadow_local:
      if (!opts_set->x_warn_shadow_compatible_local)
        handle_generated_option (opts, opts_set,
                                 OPT_Wshadow_compatible_local, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    case OPT_Wunused:
      if (!opts_set->x_warn_unused_but_set_parameter)
        handle_generated_option (opts, opts_set,
                                 OPT_Wunused_but_set_parameter, NULL, (opts->x_warn_unused && opts->x_extra_warnings),
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_unused_but_set_variable)
        handle_generated_option (opts, opts_set,
                                 OPT_Wunused_but_set_variable, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_unused_function)
        handle_generated_option (opts, opts_set,
                                 OPT_Wunused_function, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_unused_label)
        handle_generated_option (opts, opts_set,
                                 OPT_Wunused_label, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_unused_local_typedefs)
        handle_generated_option (opts, opts_set,
                                 OPT_Wunused_local_typedefs, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_unused_parameter)
        handle_generated_option (opts, opts_set,
                                 OPT_Wunused_parameter, NULL, (opts->x_warn_unused && opts->x_extra_warnings),
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_unused_value)
        handle_generated_option (opts, opts_set,
                                 OPT_Wunused_value, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_unused_variable)
        handle_generated_option (opts, opts_set,
                                 OPT_Wunused_variable, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    case OPT_ftree_vectorize:
      if (!opts_set->x_flag_tree_loop_vectorize)
        handle_generated_option (opts, opts_set,
                                 OPT_ftree_loop_vectorize, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_flag_tree_slp_vectorize)
        handle_generated_option (opts, opts_set,
                                 OPT_ftree_slp_vectorize, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    default:    
      break;    
    }           
  return true;  
}               



bool                                                                  
Ada_handle_option_auto (struct gcc_options *opts ATTRIBUTE_UNUSED,              
                           struct gcc_options *opts_set ATTRIBUTE_UNUSED,              
                           size_t scode ATTRIBUTE_UNUSED, const char *arg ATTRIBUTE_UNUSED, HOST_WIDE_INT value ATTRIBUTE_UNUSED,  
                           unsigned int lang_mask ATTRIBUTE_UNUSED, int kind ATTRIBUTE_UNUSED,          
                           location_t loc ATTRIBUTE_UNUSED,                            
                           const struct cl_option_handlers *handlers ATTRIBUTE_UNUSED, 
                           diagnostic_context *dc ATTRIBUTE_UNUSED)                    
{                                                                     
  enum opt_code code = (enum opt_code) scode;                         
                                                                      
  switch (code)                                                       
    {                                                                 
    default:    
      break;    
    }           
  return true;  
}               



bool                                                                  
AdaSCIL_handle_option_auto (struct gcc_options *opts ATTRIBUTE_UNUSED,              
                           struct gcc_options *opts_set ATTRIBUTE_UNUSED,              
                           size_t scode ATTRIBUTE_UNUSED, const char *arg ATTRIBUTE_UNUSED, HOST_WIDE_INT value ATTRIBUTE_UNUSED,  
                           unsigned int lang_mask ATTRIBUTE_UNUSED, int kind ATTRIBUTE_UNUSED,          
                           location_t loc ATTRIBUTE_UNUSED,                            
                           const struct cl_option_handlers *handlers ATTRIBUTE_UNUSED, 
                           diagnostic_context *dc ATTRIBUTE_UNUSED)                    
{                                                                     
  enum opt_code code = (enum opt_code) scode;                         
                                                                      
  switch (code)                                                       
    {                                                                 
    default:    
      break;    
    }           
  return true;  
}               



bool                                                                  
AdaWhy_handle_option_auto (struct gcc_options *opts ATTRIBUTE_UNUSED,              
                           struct gcc_options *opts_set ATTRIBUTE_UNUSED,              
                           size_t scode ATTRIBUTE_UNUSED, const char *arg ATTRIBUTE_UNUSED, HOST_WIDE_INT value ATTRIBUTE_UNUSED,  
                           unsigned int lang_mask ATTRIBUTE_UNUSED, int kind ATTRIBUTE_UNUSED,          
                           location_t loc ATTRIBUTE_UNUSED,                            
                           const struct cl_option_handlers *handlers ATTRIBUTE_UNUSED, 
                           diagnostic_context *dc ATTRIBUTE_UNUSED)                    
{                                                                     
  enum opt_code code = (enum opt_code) scode;                         
                                                                      
  switch (code)                                                       
    {                                                                 
    default:    
      break;    
    }           
  return true;  
}               



bool                                                                  
BRIG_handle_option_auto (struct gcc_options *opts ATTRIBUTE_UNUSED,              
                           struct gcc_options *opts_set ATTRIBUTE_UNUSED,              
                           size_t scode ATTRIBUTE_UNUSED, const char *arg ATTRIBUTE_UNUSED, HOST_WIDE_INT value ATTRIBUTE_UNUSED,  
                           unsigned int lang_mask ATTRIBUTE_UNUSED, int kind ATTRIBUTE_UNUSED,          
                           location_t loc ATTRIBUTE_UNUSED,                            
                           const struct cl_option_handlers *handlers ATTRIBUTE_UNUSED, 
                           diagnostic_context *dc ATTRIBUTE_UNUSED)                    
{                                                                     
  enum opt_code code = (enum opt_code) scode;                         
                                                                      
  switch (code)                                                       
    {                                                                 
    default:    
      break;    
    }           
  return true;  
}               



bool                                                                  
C_handle_option_auto (struct gcc_options *opts ATTRIBUTE_UNUSED,              
                           struct gcc_options *opts_set ATTRIBUTE_UNUSED,              
                           size_t scode ATTRIBUTE_UNUSED, const char *arg ATTRIBUTE_UNUSED, HOST_WIDE_INT value ATTRIBUTE_UNUSED,  
                           unsigned int lang_mask ATTRIBUTE_UNUSED, int kind ATTRIBUTE_UNUSED,          
                           location_t loc ATTRIBUTE_UNUSED,                            
                           const struct cl_option_handlers *handlers ATTRIBUTE_UNUSED, 
                           diagnostic_context *dc ATTRIBUTE_UNUSED)                    
{                                                                     
  enum opt_code code = (enum opt_code) scode;                         
                                                                      
  switch (code)                                                       
    {                                                                 
    case OPT_Wall:
      if (!opts_set->x_warn_address)
        handle_generated_option (opts, opts_set,
                                 OPT_Waddress, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_array_bounds)
        handle_generated_option (opts, opts_set,
                                 OPT_Warray_bounds_, NULL, value ? 1 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_bool_compare)
        handle_generated_option (opts, opts_set,
                                 OPT_Wbool_compare, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_bool_op)
        handle_generated_option (opts, opts_set,
                                 OPT_Wbool_operation, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_char_subscripts)
        handle_generated_option (opts, opts_set,
                                 OPT_Wchar_subscripts, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_cpp_warn_comment)
        handle_generated_option (opts, opts_set,
                                 OPT_Wcomment, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_duplicate_decl_specifier)
        handle_generated_option (opts, opts_set,
                                 OPT_Wduplicate_decl_specifier, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_enum_compare)
        handle_generated_option (opts, opts_set,
                                 OPT_Wenum_compare, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_format)
        handle_generated_option (opts, opts_set,
                                 OPT_Wformat_, NULL, value ? 1 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_frame_address)
        handle_generated_option (opts, opts_set,
                                 OPT_Wframe_address, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_implicit)
        handle_generated_option (opts, opts_set,
                                 OPT_Wimplicit, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_int_in_bool_context)
        handle_generated_option (opts, opts_set,
                                 OPT_Wint_in_bool_context, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_logical_not_paren)
        handle_generated_option (opts, opts_set,
                                 OPT_Wlogical_not_parentheses, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_main)
        handle_generated_option (opts, opts_set,
                                 OPT_Wmain, NULL, value ? 2 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_maybe_uninitialized)
        handle_generated_option (opts, opts_set,
                                 OPT_Wmaybe_uninitialized, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_memset_elt_size)
        handle_generated_option (opts, opts_set,
                                 OPT_Wmemset_elt_size, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_memset_transposed_args)
        handle_generated_option (opts, opts_set,
                                 OPT_Wmemset_transposed_args, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_misleading_indentation)
        handle_generated_option (opts, opts_set,
                                 OPT_Wmisleading_indentation, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_missing_attributes)
        handle_generated_option (opts, opts_set,
                                 OPT_Wmissing_attributes, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_missing_braces)
        handle_generated_option (opts, opts_set,
                                 OPT_Wmissing_braces, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_multistatement_macros)
        handle_generated_option (opts, opts_set,
                                 OPT_Wmultistatement_macros, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_nonnull)
        handle_generated_option (opts, opts_set,
                                 OPT_Wnonnull, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_nonnull_compare)
        handle_generated_option (opts, opts_set,
                                 OPT_Wnonnull_compare, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_openmp_simd)
        handle_generated_option (opts, opts_set,
                                 OPT_Wopenmp_simd, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_packed_not_aligned)
        handle_generated_option (opts, opts_set,
                                 OPT_Wpacked_not_aligned, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_parentheses)
        handle_generated_option (opts, opts_set,
                                 OPT_Wparentheses, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_pointer_sign)
        handle_generated_option (opts, opts_set,
                                 OPT_Wpointer_sign, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_restrict)
        handle_generated_option (opts, opts_set,
                                 OPT_Wrestrict, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_return_type)
        handle_generated_option (opts, opts_set,
                                 OPT_Wreturn_type, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_sequence_point)
        handle_generated_option (opts, opts_set,
                                 OPT_Wsequence_point, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_sizeof_pointer_div)
        handle_generated_option (opts, opts_set,
                                 OPT_Wsizeof_pointer_div, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_sizeof_pointer_memaccess)
        handle_generated_option (opts, opts_set,
                                 OPT_Wsizeof_pointer_memaccess, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_strict_aliasing)
        handle_generated_option (opts, opts_set,
                                 OPT_Wstrict_aliasing_, NULL, value ? 3 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_strict_overflow)
        handle_generated_option (opts, opts_set,
                                 OPT_Wstrict_overflow_, NULL, value ? 1 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_stringop_overflow)
        handle_generated_option (opts, opts_set,
                                 OPT_Wstringop_overflow_, NULL, value ? 2 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_stringop_truncation)
        handle_generated_option (opts, opts_set,
                                 OPT_Wstringop_truncation, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_switch)
        handle_generated_option (opts, opts_set,
                                 OPT_Wswitch, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_tautological_compare)
        handle_generated_option (opts, opts_set,
                                 OPT_Wtautological_compare, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_cpp_warn_trigraphs)
        handle_generated_option (opts, opts_set,
                                 OPT_Wtrigraphs, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_uninitialized)
        handle_generated_option (opts, opts_set,
                                 OPT_Wuninitialized, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_unknown_pragmas)
        handle_generated_option (opts, opts_set,
                                 OPT_Wunknown_pragmas, NULL, value ? 1 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_unused)
        handle_generated_option (opts, opts_set,
                                 OPT_Wunused, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_volatile_register_var)
        handle_generated_option (opts, opts_set,
                                 OPT_Wvolatile_register_var, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    case OPT_Wparentheses:
      if (!opts_set->x_warn_dangling_else)
        handle_generated_option (opts, opts_set,
                                 OPT_Wdangling_else, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    case OPT_Wpedantic:
      if (!opts_set->x_cpp_warn_endif_labels)
        handle_generated_option (opts, opts_set,
                                 OPT_Wendif_labels, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_main)
        handle_generated_option (opts, opts_set,
                                 OPT_Wmain, NULL, value ? 2 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_overlength_strings)
        handle_generated_option (opts, opts_set,
                                 OPT_Woverlength_strings, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_pointer_arith)
        handle_generated_option (opts, opts_set,
                                 OPT_Wpointer_arith, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_pointer_sign)
        handle_generated_option (opts, opts_set,
                                 OPT_Wpointer_sign, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_cpp_warn_variadic_macros)
        handle_generated_option (opts, opts_set,
                                 OPT_Wvariadic_macros, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    case OPT_Wc___compat:
      if (!opts_set->x_warn_enum_compare)
        handle_generated_option (opts, opts_set,
                                 OPT_Wenum_compare, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    case OPT_Wconversion:
      if (!opts_set->x_warn_float_conversion)
        handle_generated_option (opts, opts_set,
                                 OPT_Wfloat_conversion, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_sign_conversion)
        handle_generated_option (opts, opts_set,
                                 OPT_Wsign_conversion, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    case OPT_Wformat_:
      if (!opts_set->x_warn_format_contains_nul)
        handle_generated_option (opts, opts_set,
                                 OPT_Wformat_contains_nul, NULL, value ? warn_format >= 1 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_format_extra_args)
        handle_generated_option (opts, opts_set,
                                 OPT_Wformat_extra_args, NULL, value ? warn_format >= 1 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_format_nonliteral)
        handle_generated_option (opts, opts_set,
                                 OPT_Wformat_nonliteral, NULL, value ? warn_format >= 2 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_format_overflow)
        handle_generated_option (opts, opts_set,
                                 OPT_Wformat_overflow_, NULL, value ? warn_format >= 1 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_format_security)
        handle_generated_option (opts, opts_set,
                                 OPT_Wformat_security, NULL, value ? warn_format >= 2 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_format_trunc)
        handle_generated_option (opts, opts_set,
                                 OPT_Wformat_truncation_, NULL, value ? warn_format >= 1 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_format_y2k)
        handle_generated_option (opts, opts_set,
                                 OPT_Wformat_y2k, NULL, value ? warn_format >= 2 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_format_zero_length)
        handle_generated_option (opts, opts_set,
                                 OPT_Wformat_zero_length, NULL, value ? warn_format >= 1 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_nonnull)
        handle_generated_option (opts, opts_set,
                                 OPT_Wnonnull, NULL, value ? warn_format >= 1 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    case OPT_Wextra:
      if (!opts_set->x_warn_implicit_fallthrough)
        handle_generated_option (opts, opts_set,
                                 OPT_Wimplicit_fallthrough_, NULL, value ? 3 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    case OPT_Wimplicit:
      if (!opts_set->x_warn_implicit_function_declaration)
        handle_generated_option (opts, opts_set,
                                 OPT_Wimplicit_function_declaration, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_implicit_int)
        handle_generated_option (opts, opts_set,
                                 OPT_Wimplicit_int, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    case OPT_Wc90_c99_compat:
      if (!opts_set->x_warn_long_long)
        handle_generated_option (opts, opts_set,
                                 OPT_Wlong_long, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    case OPT_Wabi:
      if (!opts_set->x_warn_psabi)
        handle_generated_option (opts, opts_set,
                                 OPT_Wpsabi, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    case OPT_Wunused_variable:
      if (!opts_set->x_warn_unused_const_variable)
        handle_generated_option (opts, opts_set,
                                 OPT_Wunused_const_variable_, NULL, value ? 1 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    case OPT_Wunused:
      if (!opts_set->x_warn_unused_variable)
        handle_generated_option (opts, opts_set,
                                 OPT_Wunused_variable, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    case OPT_Wtraditional:
      if (!opts_set->x_cpp_warn_variadic_macros)
        handle_generated_option (opts, opts_set,
                                 OPT_Wvariadic_macros, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    default:    
      break;    
    }           
  return true;  
}               



bool                                                                  
CXX_handle_option_auto (struct gcc_options *opts ATTRIBUTE_UNUSED,              
                           struct gcc_options *opts_set ATTRIBUTE_UNUSED,              
                           size_t scode ATTRIBUTE_UNUSED, const char *arg ATTRIBUTE_UNUSED, HOST_WIDE_INT value ATTRIBUTE_UNUSED,  
                           unsigned int lang_mask ATTRIBUTE_UNUSED, int kind ATTRIBUTE_UNUSED,          
                           location_t loc ATTRIBUTE_UNUSED,                            
                           const struct cl_option_handlers *handlers ATTRIBUTE_UNUSED, 
                           diagnostic_context *dc ATTRIBUTE_UNUSED)                    
{                                                                     
  enum opt_code code = (enum opt_code) scode;                         
                                                                      
  switch (code)                                                       
    {                                                                 
    case OPT_Wall:
      if (!opts_set->x_warn_address)
        handle_generated_option (opts, opts_set,
                                 OPT_Waddress, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_aligned_new)
        handle_generated_option (opts, opts_set,
                                 OPT_Waligned_new_, NULL, value ? 1 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_array_bounds)
        handle_generated_option (opts, opts_set,
                                 OPT_Warray_bounds_, NULL, value ? 1 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_bool_compare)
        handle_generated_option (opts, opts_set,
                                 OPT_Wbool_compare, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_bool_op)
        handle_generated_option (opts, opts_set,
                                 OPT_Wbool_operation, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_cxx11_compat)
        handle_generated_option (opts, opts_set,
                                 OPT_Wc__11_compat, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_cxx14_compat)
        handle_generated_option (opts, opts_set,
                                 OPT_Wc__14_compat, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_cxx17_compat)
        handle_generated_option (opts, opts_set,
                                 OPT_Wc__17_compat, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_catch_value)
        handle_generated_option (opts, opts_set,
                                 OPT_Wcatch_value_, NULL, value ? 1 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_char_subscripts)
        handle_generated_option (opts, opts_set,
                                 OPT_Wchar_subscripts, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_class_memaccess)
        handle_generated_option (opts, opts_set,
                                 OPT_Wclass_memaccess, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_cpp_warn_comment)
        handle_generated_option (opts, opts_set,
                                 OPT_Wcomment, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_delnonvdtor)
        handle_generated_option (opts, opts_set,
                                 OPT_Wdelete_non_virtual_dtor, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_format)
        handle_generated_option (opts, opts_set,
                                 OPT_Wformat_, NULL, value ? 1 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_frame_address)
        handle_generated_option (opts, opts_set,
                                 OPT_Wframe_address, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_init_self)
        handle_generated_option (opts, opts_set,
                                 OPT_Winit_self, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_int_in_bool_context)
        handle_generated_option (opts, opts_set,
                                 OPT_Wint_in_bool_context, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_logical_not_paren)
        handle_generated_option (opts, opts_set,
                                 OPT_Wlogical_not_parentheses, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_maybe_uninitialized)
        handle_generated_option (opts, opts_set,
                                 OPT_Wmaybe_uninitialized, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_memset_elt_size)
        handle_generated_option (opts, opts_set,
                                 OPT_Wmemset_elt_size, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_memset_transposed_args)
        handle_generated_option (opts, opts_set,
                                 OPT_Wmemset_transposed_args, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_misleading_indentation)
        handle_generated_option (opts, opts_set,
                                 OPT_Wmisleading_indentation, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_missing_attributes)
        handle_generated_option (opts, opts_set,
                                 OPT_Wmissing_attributes, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_multistatement_macros)
        handle_generated_option (opts, opts_set,
                                 OPT_Wmultistatement_macros, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_narrowing)
        handle_generated_option (opts, opts_set,
                                 OPT_Wnarrowing, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_nonnull)
        handle_generated_option (opts, opts_set,
                                 OPT_Wnonnull, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_nonnull_compare)
        handle_generated_option (opts, opts_set,
                                 OPT_Wnonnull_compare, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_openmp_simd)
        handle_generated_option (opts, opts_set,
                                 OPT_Wopenmp_simd, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_packed_not_aligned)
        handle_generated_option (opts, opts_set,
                                 OPT_Wpacked_not_aligned, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_parentheses)
        handle_generated_option (opts, opts_set,
                                 OPT_Wparentheses, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_pessimizing_move)
        handle_generated_option (opts, opts_set,
                                 OPT_Wpessimizing_move, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_reorder)
        handle_generated_option (opts, opts_set,
                                 OPT_Wreorder, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_restrict)
        handle_generated_option (opts, opts_set,
                                 OPT_Wrestrict, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_return_type)
        handle_generated_option (opts, opts_set,
                                 OPT_Wreturn_type, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_sequence_point)
        handle_generated_option (opts, opts_set,
                                 OPT_Wsequence_point, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_sign_compare)
        handle_generated_option (opts, opts_set,
                                 OPT_Wsign_compare, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_sizeof_pointer_div)
        handle_generated_option (opts, opts_set,
                                 OPT_Wsizeof_pointer_div, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_sizeof_pointer_memaccess)
        handle_generated_option (opts, opts_set,
                                 OPT_Wsizeof_pointer_memaccess, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_strict_aliasing)
        handle_generated_option (opts, opts_set,
                                 OPT_Wstrict_aliasing_, NULL, value ? 3 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_strict_overflow)
        handle_generated_option (opts, opts_set,
                                 OPT_Wstrict_overflow_, NULL, value ? 1 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_stringop_overflow)
        handle_generated_option (opts, opts_set,
                                 OPT_Wstringop_overflow_, NULL, value ? 2 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_stringop_truncation)
        handle_generated_option (opts, opts_set,
                                 OPT_Wstringop_truncation, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_switch)
        handle_generated_option (opts, opts_set,
                                 OPT_Wswitch, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_tautological_compare)
        handle_generated_option (opts, opts_set,
                                 OPT_Wtautological_compare, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_cpp_warn_trigraphs)
        handle_generated_option (opts, opts_set,
                                 OPT_Wtrigraphs, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_uninitialized)
        handle_generated_option (opts, opts_set,
                                 OPT_Wuninitialized, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_unknown_pragmas)
        handle_generated_option (opts, opts_set,
                                 OPT_Wunknown_pragmas, NULL, value ? 1 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_unused)
        handle_generated_option (opts, opts_set,
                                 OPT_Wunused, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_volatile_register_var)
        handle_generated_option (opts, opts_set,
                                 OPT_Wvolatile_register_var, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    case OPT_Wparentheses:
      if (!opts_set->x_warn_dangling_else)
        handle_generated_option (opts, opts_set,
                                 OPT_Wdangling_else, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    case OPT_Weffc__:
      if (!opts_set->x_warn_delnonvdtor)
        handle_generated_option (opts, opts_set,
                                 OPT_Wdelete_non_virtual_dtor, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_nonvdtor)
        handle_generated_option (opts, opts_set,
                                 OPT_Wnon_virtual_dtor, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    case OPT_Wextra:
      if (!opts_set->x_warn_deprecated_copy)
        handle_generated_option (opts, opts_set,
                                 OPT_Wdeprecated_copy, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_implicit_fallthrough)
        handle_generated_option (opts, opts_set,
                                 OPT_Wimplicit_fallthrough_, NULL, value ? 3 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_redundant_move)
        handle_generated_option (opts, opts_set,
                                 OPT_Wredundant_move, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    case OPT_Wpedantic:
      if (!opts_set->x_cpp_warn_endif_labels)
        handle_generated_option (opts, opts_set,
                                 OPT_Wendif_labels, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_main)
        handle_generated_option (opts, opts_set,
                                 OPT_Wmain, NULL, value ? 2 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_overlength_strings)
        handle_generated_option (opts, opts_set,
                                 OPT_Woverlength_strings, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_pointer_arith)
        handle_generated_option (opts, opts_set,
                                 OPT_Wpointer_arith, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_cpp_warn_variadic_macros)
        handle_generated_option (opts, opts_set,
                                 OPT_Wvariadic_macros, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    case OPT_Wconversion:
      if (!opts_set->x_warn_float_conversion)
        handle_generated_option (opts, opts_set,
                                 OPT_Wfloat_conversion, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    case OPT_Wformat_:
      if (!opts_set->x_warn_format_contains_nul)
        handle_generated_option (opts, opts_set,
                                 OPT_Wformat_contains_nul, NULL, value ? warn_format >= 1 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_format_extra_args)
        handle_generated_option (opts, opts_set,
                                 OPT_Wformat_extra_args, NULL, value ? warn_format >= 1 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_format_nonliteral)
        handle_generated_option (opts, opts_set,
                                 OPT_Wformat_nonliteral, NULL, value ? warn_format >= 2 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_format_overflow)
        handle_generated_option (opts, opts_set,
                                 OPT_Wformat_overflow_, NULL, value ? warn_format >= 1 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_format_security)
        handle_generated_option (opts, opts_set,
                                 OPT_Wformat_security, NULL, value ? warn_format >= 2 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_format_trunc)
        handle_generated_option (opts, opts_set,
                                 OPT_Wformat_truncation_, NULL, value ? warn_format >= 1 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_format_y2k)
        handle_generated_option (opts, opts_set,
                                 OPT_Wformat_y2k, NULL, value ? warn_format >= 2 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_format_zero_length)
        handle_generated_option (opts, opts_set,
                                 OPT_Wformat_zero_length, NULL, value ? warn_format >= 1 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_nonnull)
        handle_generated_option (opts, opts_set,
                                 OPT_Wnonnull, NULL, value ? warn_format >= 1 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    case OPT_Wc__11_compat:
      if (!opts_set->x_warn_narrowing)
        handle_generated_option (opts, opts_set,
                                 OPT_Wnarrowing, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    case OPT_Wabi:
      if (!opts_set->x_warn_noexcept_type)
        handle_generated_option (opts, opts_set,
                                 OPT_Wnoexcept_type, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_psabi)
        handle_generated_option (opts, opts_set,
                                 OPT_Wpsabi, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    case OPT_Wc__17_compat:
      if (!opts_set->x_warn_noexcept_type)
        handle_generated_option (opts, opts_set,
                                 OPT_Wnoexcept_type, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    case OPT_Wunused:
      if (!opts_set->x_warn_unused_variable)
        handle_generated_option (opts, opts_set,
                                 OPT_Wunused_variable, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    case OPT_Wtraditional:
      if (!opts_set->x_cpp_warn_variadic_macros)
        handle_generated_option (opts, opts_set,
                                 OPT_Wvariadic_macros, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    default:    
      break;    
    }           
  return true;  
}               



bool                                                                  
D_handle_option_auto (struct gcc_options *opts ATTRIBUTE_UNUSED,              
                           struct gcc_options *opts_set ATTRIBUTE_UNUSED,              
                           size_t scode ATTRIBUTE_UNUSED, const char *arg ATTRIBUTE_UNUSED, HOST_WIDE_INT value ATTRIBUTE_UNUSED,  
                           unsigned int lang_mask ATTRIBUTE_UNUSED, int kind ATTRIBUTE_UNUSED,          
                           location_t loc ATTRIBUTE_UNUSED,                            
                           const struct cl_option_handlers *handlers ATTRIBUTE_UNUSED, 
                           diagnostic_context *dc ATTRIBUTE_UNUSED)                    
{                                                                     
  enum opt_code code = (enum opt_code) scode;                         
                                                                      
  switch (code)                                                       
    {                                                                 
    case OPT_Wall:
      if (!opts_set->x_warn_unknown_pragmas)
        handle_generated_option (opts, opts_set,
                                 OPT_Wunknown_pragmas, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    default:    
      break;    
    }           
  return true;  
}               



bool                                                                  
Fortran_handle_option_auto (struct gcc_options *opts ATTRIBUTE_UNUSED,              
                           struct gcc_options *opts_set ATTRIBUTE_UNUSED,              
                           size_t scode ATTRIBUTE_UNUSED, const char *arg ATTRIBUTE_UNUSED, HOST_WIDE_INT value ATTRIBUTE_UNUSED,  
                           unsigned int lang_mask ATTRIBUTE_UNUSED, int kind ATTRIBUTE_UNUSED,          
                           location_t loc ATTRIBUTE_UNUSED,                            
                           const struct cl_option_handlers *handlers ATTRIBUTE_UNUSED, 
                           diagnostic_context *dc ATTRIBUTE_UNUSED)                    
{                                                                     
  enum opt_code code = (enum opt_code) scode;                         
                                                                      
  switch (code)                                                       
    {                                                                 
    case OPT_Wall:
      if (!opts_set->x_warn_aliasing)
        handle_generated_option (opts, opts_set,
                                 OPT_Waliasing, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_ampersand)
        handle_generated_option (opts, opts_set,
                                 OPT_Wampersand, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_c_binding_type)
        handle_generated_option (opts, opts_set,
                                 OPT_Wc_binding_type, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_character_truncation)
        handle_generated_option (opts, opts_set,
                                 OPT_Wcharacter_truncation, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_conversion)
        handle_generated_option (opts, opts_set,
                                 OPT_Wconversion, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_integer_division)
        handle_generated_option (opts, opts_set,
                                 OPT_Winteger_division, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_intrinsic_shadow)
        handle_generated_option (opts, opts_set,
                                 OPT_Wintrinsic_shadow, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_intrinsics_std)
        handle_generated_option (opts, opts_set,
                                 OPT_Wintrinsics_std, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_line_truncation)
        handle_generated_option (opts, opts_set,
                                 OPT_Wline_truncation, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_maybe_uninitialized)
        handle_generated_option (opts, opts_set,
                                 OPT_Wmaybe_uninitialized, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_real_q_constant)
        handle_generated_option (opts, opts_set,
                                 OPT_Wreal_q_constant, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_return_type)
        handle_generated_option (opts, opts_set,
                                 OPT_Wreturn_type, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_surprising)
        handle_generated_option (opts, opts_set,
                                 OPT_Wsurprising, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_tabs)
        handle_generated_option (opts, opts_set,
                                 OPT_Wtabs, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_target_lifetime)
        handle_generated_option (opts, opts_set,
                                 OPT_Wtarget_lifetime, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_undefined_do_loop)
        handle_generated_option (opts, opts_set,
                                 OPT_Wundefined_do_loop, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_uninitialized)
        handle_generated_option (opts, opts_set,
                                 OPT_Wuninitialized, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_unused)
        handle_generated_option (opts, opts_set,
                                 OPT_Wunused, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_unused_dummy_argument)
        handle_generated_option (opts, opts_set,
                                 OPT_Wunused_dummy_argument, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_zerotrip)
        handle_generated_option (opts, opts_set,
                                 OPT_Wzerotrip, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    case OPT_Wpedantic:
      if (!opts_set->x_warn_ampersand)
        handle_generated_option (opts, opts_set,
                                 OPT_Wampersand, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_tabs)
        handle_generated_option (opts, opts_set,
                                 OPT_Wtabs, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    case OPT_Wextra:
      if (!opts_set->x_warn_compare_reals)
        handle_generated_option (opts, opts_set,
                                 OPT_Wcompare_reals, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_do_subscript)
        handle_generated_option (opts, opts_set,
                                 OPT_Wdo_subscript, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_function_elimination)
        handle_generated_option (opts, opts_set,
                                 OPT_Wfunction_elimination, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    case OPT_Wrealloc_lhs_all:
      if (!opts_set->x_warn_realloc_lhs)
        handle_generated_option (opts, opts_set,
                                 OPT_Wrealloc_lhs, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    default:    
      break;    
    }           
  return true;  
}               



bool                                                                  
Go_handle_option_auto (struct gcc_options *opts ATTRIBUTE_UNUSED,              
                           struct gcc_options *opts_set ATTRIBUTE_UNUSED,              
                           size_t scode ATTRIBUTE_UNUSED, const char *arg ATTRIBUTE_UNUSED, HOST_WIDE_INT value ATTRIBUTE_UNUSED,  
                           unsigned int lang_mask ATTRIBUTE_UNUSED, int kind ATTRIBUTE_UNUSED,          
                           location_t loc ATTRIBUTE_UNUSED,                            
                           const struct cl_option_handlers *handlers ATTRIBUTE_UNUSED, 
                           diagnostic_context *dc ATTRIBUTE_UNUSED)                    
{                                                                     
  enum opt_code code = (enum opt_code) scode;                         
                                                                      
  switch (code)                                                       
    {                                                                 
    default:    
      break;    
    }           
  return true;  
}               



bool                                                                  
LTO_handle_option_auto (struct gcc_options *opts ATTRIBUTE_UNUSED,              
                           struct gcc_options *opts_set ATTRIBUTE_UNUSED,              
                           size_t scode ATTRIBUTE_UNUSED, const char *arg ATTRIBUTE_UNUSED, HOST_WIDE_INT value ATTRIBUTE_UNUSED,  
                           unsigned int lang_mask ATTRIBUTE_UNUSED, int kind ATTRIBUTE_UNUSED,          
                           location_t loc ATTRIBUTE_UNUSED,                            
                           const struct cl_option_handlers *handlers ATTRIBUTE_UNUSED, 
                           diagnostic_context *dc ATTRIBUTE_UNUSED)                    
{                                                                     
  enum opt_code code = (enum opt_code) scode;                         
                                                                      
  switch (code)                                                       
    {                                                                 
    case OPT_Wall:
      if (!opts_set->x_warn_array_bounds)
        handle_generated_option (opts, opts_set,
                                 OPT_Warray_bounds_, NULL, value ? 1 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_maybe_uninitialized)
        handle_generated_option (opts, opts_set,
                                 OPT_Wmaybe_uninitialized, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_nonnull)
        handle_generated_option (opts, opts_set,
                                 OPT_Wnonnull, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_stringop_overflow)
        handle_generated_option (opts, opts_set,
                                 OPT_Wstringop_overflow_, NULL, value ? 2 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_stringop_truncation)
        handle_generated_option (opts, opts_set,
                                 OPT_Wstringop_truncation, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_uninitialized)
        handle_generated_option (opts, opts_set,
                                 OPT_Wuninitialized, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    case OPT_Wformat_:
      if (!opts_set->x_warn_format_overflow)
        handle_generated_option (opts, opts_set,
                                 OPT_Wformat_overflow_, NULL, value ? warn_format >= 1 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_format_trunc)
        handle_generated_option (opts, opts_set,
                                 OPT_Wformat_truncation_, NULL, value ? warn_format >= 1 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_nonnull)
        handle_generated_option (opts, opts_set,
                                 OPT_Wnonnull, NULL, value ? warn_format >= 1 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    default:    
      break;    
    }           
  return true;  
}               



bool                                                                  
ObjC_handle_option_auto (struct gcc_options *opts ATTRIBUTE_UNUSED,              
                           struct gcc_options *opts_set ATTRIBUTE_UNUSED,              
                           size_t scode ATTRIBUTE_UNUSED, const char *arg ATTRIBUTE_UNUSED, HOST_WIDE_INT value ATTRIBUTE_UNUSED,  
                           unsigned int lang_mask ATTRIBUTE_UNUSED, int kind ATTRIBUTE_UNUSED,          
                           location_t loc ATTRIBUTE_UNUSED,                            
                           const struct cl_option_handlers *handlers ATTRIBUTE_UNUSED, 
                           diagnostic_context *dc ATTRIBUTE_UNUSED)                    
{                                                                     
  enum opt_code code = (enum opt_code) scode;                         
                                                                      
  switch (code)                                                       
    {                                                                 
    case OPT_Wall:
      if (!opts_set->x_warn_address)
        handle_generated_option (opts, opts_set,
                                 OPT_Waddress, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_array_bounds)
        handle_generated_option (opts, opts_set,
                                 OPT_Warray_bounds_, NULL, value ? 1 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_bool_compare)
        handle_generated_option (opts, opts_set,
                                 OPT_Wbool_compare, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_bool_op)
        handle_generated_option (opts, opts_set,
                                 OPT_Wbool_operation, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_char_subscripts)
        handle_generated_option (opts, opts_set,
                                 OPT_Wchar_subscripts, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_cpp_warn_comment)
        handle_generated_option (opts, opts_set,
                                 OPT_Wcomment, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_duplicate_decl_specifier)
        handle_generated_option (opts, opts_set,
                                 OPT_Wduplicate_decl_specifier, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_enum_compare)
        handle_generated_option (opts, opts_set,
                                 OPT_Wenum_compare, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_format)
        handle_generated_option (opts, opts_set,
                                 OPT_Wformat_, NULL, value ? 1 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_frame_address)
        handle_generated_option (opts, opts_set,
                                 OPT_Wframe_address, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_implicit)
        handle_generated_option (opts, opts_set,
                                 OPT_Wimplicit, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_int_in_bool_context)
        handle_generated_option (opts, opts_set,
                                 OPT_Wint_in_bool_context, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_logical_not_paren)
        handle_generated_option (opts, opts_set,
                                 OPT_Wlogical_not_parentheses, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_main)
        handle_generated_option (opts, opts_set,
                                 OPT_Wmain, NULL, value ? 2 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_maybe_uninitialized)
        handle_generated_option (opts, opts_set,
                                 OPT_Wmaybe_uninitialized, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_memset_elt_size)
        handle_generated_option (opts, opts_set,
                                 OPT_Wmemset_elt_size, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_memset_transposed_args)
        handle_generated_option (opts, opts_set,
                                 OPT_Wmemset_transposed_args, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_missing_attributes)
        handle_generated_option (opts, opts_set,
                                 OPT_Wmissing_attributes, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_missing_braces)
        handle_generated_option (opts, opts_set,
                                 OPT_Wmissing_braces, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_multistatement_macros)
        handle_generated_option (opts, opts_set,
                                 OPT_Wmultistatement_macros, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_nonnull)
        handle_generated_option (opts, opts_set,
                                 OPT_Wnonnull, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_nonnull_compare)
        handle_generated_option (opts, opts_set,
                                 OPT_Wnonnull_compare, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_packed_not_aligned)
        handle_generated_option (opts, opts_set,
                                 OPT_Wpacked_not_aligned, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_parentheses)
        handle_generated_option (opts, opts_set,
                                 OPT_Wparentheses, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_pointer_sign)
        handle_generated_option (opts, opts_set,
                                 OPT_Wpointer_sign, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_restrict)
        handle_generated_option (opts, opts_set,
                                 OPT_Wrestrict, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_return_type)
        handle_generated_option (opts, opts_set,
                                 OPT_Wreturn_type, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_sequence_point)
        handle_generated_option (opts, opts_set,
                                 OPT_Wsequence_point, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_sizeof_pointer_div)
        handle_generated_option (opts, opts_set,
                                 OPT_Wsizeof_pointer_div, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_sizeof_pointer_memaccess)
        handle_generated_option (opts, opts_set,
                                 OPT_Wsizeof_pointer_memaccess, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_strict_aliasing)
        handle_generated_option (opts, opts_set,
                                 OPT_Wstrict_aliasing_, NULL, value ? 3 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_strict_overflow)
        handle_generated_option (opts, opts_set,
                                 OPT_Wstrict_overflow_, NULL, value ? 1 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_stringop_overflow)
        handle_generated_option (opts, opts_set,
                                 OPT_Wstringop_overflow_, NULL, value ? 2 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_stringop_truncation)
        handle_generated_option (opts, opts_set,
                                 OPT_Wstringop_truncation, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_switch)
        handle_generated_option (opts, opts_set,
                                 OPT_Wswitch, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_tautological_compare)
        handle_generated_option (opts, opts_set,
                                 OPT_Wtautological_compare, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_cpp_warn_trigraphs)
        handle_generated_option (opts, opts_set,
                                 OPT_Wtrigraphs, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_uninitialized)
        handle_generated_option (opts, opts_set,
                                 OPT_Wuninitialized, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_unknown_pragmas)
        handle_generated_option (opts, opts_set,
                                 OPT_Wunknown_pragmas, NULL, value ? 1 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_unused)
        handle_generated_option (opts, opts_set,
                                 OPT_Wunused, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_volatile_register_var)
        handle_generated_option (opts, opts_set,
                                 OPT_Wvolatile_register_var, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    case OPT_Wparentheses:
      if (!opts_set->x_warn_dangling_else)
        handle_generated_option (opts, opts_set,
                                 OPT_Wdangling_else, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    case OPT_Wpedantic:
      if (!opts_set->x_cpp_warn_endif_labels)
        handle_generated_option (opts, opts_set,
                                 OPT_Wendif_labels, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_main)
        handle_generated_option (opts, opts_set,
                                 OPT_Wmain, NULL, value ? 2 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_overlength_strings)
        handle_generated_option (opts, opts_set,
                                 OPT_Woverlength_strings, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_pointer_arith)
        handle_generated_option (opts, opts_set,
                                 OPT_Wpointer_arith, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_pointer_sign)
        handle_generated_option (opts, opts_set,
                                 OPT_Wpointer_sign, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_cpp_warn_variadic_macros)
        handle_generated_option (opts, opts_set,
                                 OPT_Wvariadic_macros, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    case OPT_Wc___compat:
      if (!opts_set->x_warn_enum_compare)
        handle_generated_option (opts, opts_set,
                                 OPT_Wenum_compare, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    case OPT_Wconversion:
      if (!opts_set->x_warn_float_conversion)
        handle_generated_option (opts, opts_set,
                                 OPT_Wfloat_conversion, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_sign_conversion)
        handle_generated_option (opts, opts_set,
                                 OPT_Wsign_conversion, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    case OPT_Wformat_:
      if (!opts_set->x_warn_format_contains_nul)
        handle_generated_option (opts, opts_set,
                                 OPT_Wformat_contains_nul, NULL, value ? warn_format >= 1 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_format_extra_args)
        handle_generated_option (opts, opts_set,
                                 OPT_Wformat_extra_args, NULL, value ? warn_format >= 1 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_format_nonliteral)
        handle_generated_option (opts, opts_set,
                                 OPT_Wformat_nonliteral, NULL, value ? warn_format >= 2 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_format_overflow)
        handle_generated_option (opts, opts_set,
                                 OPT_Wformat_overflow_, NULL, value ? warn_format >= 1 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_format_security)
        handle_generated_option (opts, opts_set,
                                 OPT_Wformat_security, NULL, value ? warn_format >= 2 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_format_trunc)
        handle_generated_option (opts, opts_set,
                                 OPT_Wformat_truncation_, NULL, value ? warn_format >= 1 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_format_y2k)
        handle_generated_option (opts, opts_set,
                                 OPT_Wformat_y2k, NULL, value ? warn_format >= 2 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_format_zero_length)
        handle_generated_option (opts, opts_set,
                                 OPT_Wformat_zero_length, NULL, value ? warn_format >= 1 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_nonnull)
        handle_generated_option (opts, opts_set,
                                 OPT_Wnonnull, NULL, value ? warn_format >= 1 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    case OPT_Wextra:
      if (!opts_set->x_warn_implicit_fallthrough)
        handle_generated_option (opts, opts_set,
                                 OPT_Wimplicit_fallthrough_, NULL, value ? 3 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    case OPT_Wimplicit:
      if (!opts_set->x_warn_implicit_function_declaration)
        handle_generated_option (opts, opts_set,
                                 OPT_Wimplicit_function_declaration, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_implicit_int)
        handle_generated_option (opts, opts_set,
                                 OPT_Wimplicit_int, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    case OPT_Wc90_c99_compat:
      if (!opts_set->x_warn_long_long)
        handle_generated_option (opts, opts_set,
                                 OPT_Wlong_long, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    case OPT_Wabi:
      if (!opts_set->x_warn_psabi)
        handle_generated_option (opts, opts_set,
                                 OPT_Wpsabi, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    case OPT_Wunused_variable:
      if (!opts_set->x_warn_unused_const_variable)
        handle_generated_option (opts, opts_set,
                                 OPT_Wunused_const_variable_, NULL, value ? 1 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    case OPT_Wunused:
      if (!opts_set->x_warn_unused_variable)
        handle_generated_option (opts, opts_set,
                                 OPT_Wunused_variable, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    case OPT_Wtraditional:
      if (!opts_set->x_cpp_warn_variadic_macros)
        handle_generated_option (opts, opts_set,
                                 OPT_Wvariadic_macros, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    default:    
      break;    
    }           
  return true;  
}               



bool                                                                  
ObjCXX_handle_option_auto (struct gcc_options *opts ATTRIBUTE_UNUSED,              
                           struct gcc_options *opts_set ATTRIBUTE_UNUSED,              
                           size_t scode ATTRIBUTE_UNUSED, const char *arg ATTRIBUTE_UNUSED, HOST_WIDE_INT value ATTRIBUTE_UNUSED,  
                           unsigned int lang_mask ATTRIBUTE_UNUSED, int kind ATTRIBUTE_UNUSED,          
                           location_t loc ATTRIBUTE_UNUSED,                            
                           const struct cl_option_handlers *handlers ATTRIBUTE_UNUSED, 
                           diagnostic_context *dc ATTRIBUTE_UNUSED)                    
{                                                                     
  enum opt_code code = (enum opt_code) scode;                         
                                                                      
  switch (code)                                                       
    {                                                                 
    case OPT_Wall:
      if (!opts_set->x_warn_address)
        handle_generated_option (opts, opts_set,
                                 OPT_Waddress, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_aligned_new)
        handle_generated_option (opts, opts_set,
                                 OPT_Waligned_new_, NULL, value ? 1 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_array_bounds)
        handle_generated_option (opts, opts_set,
                                 OPT_Warray_bounds_, NULL, value ? 1 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_bool_compare)
        handle_generated_option (opts, opts_set,
                                 OPT_Wbool_compare, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_bool_op)
        handle_generated_option (opts, opts_set,
                                 OPT_Wbool_operation, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_cxx11_compat)
        handle_generated_option (opts, opts_set,
                                 OPT_Wc__11_compat, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_cxx14_compat)
        handle_generated_option (opts, opts_set,
                                 OPT_Wc__14_compat, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_cxx17_compat)
        handle_generated_option (opts, opts_set,
                                 OPT_Wc__17_compat, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_catch_value)
        handle_generated_option (opts, opts_set,
                                 OPT_Wcatch_value_, NULL, value ? 1 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_char_subscripts)
        handle_generated_option (opts, opts_set,
                                 OPT_Wchar_subscripts, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_class_memaccess)
        handle_generated_option (opts, opts_set,
                                 OPT_Wclass_memaccess, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_cpp_warn_comment)
        handle_generated_option (opts, opts_set,
                                 OPT_Wcomment, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_delnonvdtor)
        handle_generated_option (opts, opts_set,
                                 OPT_Wdelete_non_virtual_dtor, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_format)
        handle_generated_option (opts, opts_set,
                                 OPT_Wformat_, NULL, value ? 1 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_frame_address)
        handle_generated_option (opts, opts_set,
                                 OPT_Wframe_address, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_init_self)
        handle_generated_option (opts, opts_set,
                                 OPT_Winit_self, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_int_in_bool_context)
        handle_generated_option (opts, opts_set,
                                 OPT_Wint_in_bool_context, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_logical_not_paren)
        handle_generated_option (opts, opts_set,
                                 OPT_Wlogical_not_parentheses, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_maybe_uninitialized)
        handle_generated_option (opts, opts_set,
                                 OPT_Wmaybe_uninitialized, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_memset_elt_size)
        handle_generated_option (opts, opts_set,
                                 OPT_Wmemset_elt_size, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_memset_transposed_args)
        handle_generated_option (opts, opts_set,
                                 OPT_Wmemset_transposed_args, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_missing_attributes)
        handle_generated_option (opts, opts_set,
                                 OPT_Wmissing_attributes, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_multistatement_macros)
        handle_generated_option (opts, opts_set,
                                 OPT_Wmultistatement_macros, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_narrowing)
        handle_generated_option (opts, opts_set,
                                 OPT_Wnarrowing, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_nonnull)
        handle_generated_option (opts, opts_set,
                                 OPT_Wnonnull, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_nonnull_compare)
        handle_generated_option (opts, opts_set,
                                 OPT_Wnonnull_compare, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_packed_not_aligned)
        handle_generated_option (opts, opts_set,
                                 OPT_Wpacked_not_aligned, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_parentheses)
        handle_generated_option (opts, opts_set,
                                 OPT_Wparentheses, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_pessimizing_move)
        handle_generated_option (opts, opts_set,
                                 OPT_Wpessimizing_move, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_reorder)
        handle_generated_option (opts, opts_set,
                                 OPT_Wreorder, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_restrict)
        handle_generated_option (opts, opts_set,
                                 OPT_Wrestrict, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_return_type)
        handle_generated_option (opts, opts_set,
                                 OPT_Wreturn_type, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_sequence_point)
        handle_generated_option (opts, opts_set,
                                 OPT_Wsequence_point, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_sign_compare)
        handle_generated_option (opts, opts_set,
                                 OPT_Wsign_compare, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_sizeof_pointer_div)
        handle_generated_option (opts, opts_set,
                                 OPT_Wsizeof_pointer_div, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_sizeof_pointer_memaccess)
        handle_generated_option (opts, opts_set,
                                 OPT_Wsizeof_pointer_memaccess, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_strict_aliasing)
        handle_generated_option (opts, opts_set,
                                 OPT_Wstrict_aliasing_, NULL, value ? 3 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_strict_overflow)
        handle_generated_option (opts, opts_set,
                                 OPT_Wstrict_overflow_, NULL, value ? 1 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_stringop_overflow)
        handle_generated_option (opts, opts_set,
                                 OPT_Wstringop_overflow_, NULL, value ? 2 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_stringop_truncation)
        handle_generated_option (opts, opts_set,
                                 OPT_Wstringop_truncation, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_switch)
        handle_generated_option (opts, opts_set,
                                 OPT_Wswitch, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_tautological_compare)
        handle_generated_option (opts, opts_set,
                                 OPT_Wtautological_compare, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_cpp_warn_trigraphs)
        handle_generated_option (opts, opts_set,
                                 OPT_Wtrigraphs, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_uninitialized)
        handle_generated_option (opts, opts_set,
                                 OPT_Wuninitialized, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_unknown_pragmas)
        handle_generated_option (opts, opts_set,
                                 OPT_Wunknown_pragmas, NULL, value ? 1 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_unused)
        handle_generated_option (opts, opts_set,
                                 OPT_Wunused, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_volatile_register_var)
        handle_generated_option (opts, opts_set,
                                 OPT_Wvolatile_register_var, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    case OPT_Wparentheses:
      if (!opts_set->x_warn_dangling_else)
        handle_generated_option (opts, opts_set,
                                 OPT_Wdangling_else, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    case OPT_Weffc__:
      if (!opts_set->x_warn_delnonvdtor)
        handle_generated_option (opts, opts_set,
                                 OPT_Wdelete_non_virtual_dtor, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_nonvdtor)
        handle_generated_option (opts, opts_set,
                                 OPT_Wnon_virtual_dtor, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    case OPT_Wextra:
      if (!opts_set->x_warn_deprecated_copy)
        handle_generated_option (opts, opts_set,
                                 OPT_Wdeprecated_copy, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_implicit_fallthrough)
        handle_generated_option (opts, opts_set,
                                 OPT_Wimplicit_fallthrough_, NULL, value ? 3 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_redundant_move)
        handle_generated_option (opts, opts_set,
                                 OPT_Wredundant_move, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    case OPT_Wpedantic:
      if (!opts_set->x_cpp_warn_endif_labels)
        handle_generated_option (opts, opts_set,
                                 OPT_Wendif_labels, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_main)
        handle_generated_option (opts, opts_set,
                                 OPT_Wmain, NULL, value ? 2 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_overlength_strings)
        handle_generated_option (opts, opts_set,
                                 OPT_Woverlength_strings, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_pointer_arith)
        handle_generated_option (opts, opts_set,
                                 OPT_Wpointer_arith, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_cpp_warn_variadic_macros)
        handle_generated_option (opts, opts_set,
                                 OPT_Wvariadic_macros, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    case OPT_Wconversion:
      if (!opts_set->x_warn_float_conversion)
        handle_generated_option (opts, opts_set,
                                 OPT_Wfloat_conversion, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    case OPT_Wformat_:
      if (!opts_set->x_warn_format_contains_nul)
        handle_generated_option (opts, opts_set,
                                 OPT_Wformat_contains_nul, NULL, value ? warn_format >= 1 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_format_extra_args)
        handle_generated_option (opts, opts_set,
                                 OPT_Wformat_extra_args, NULL, value ? warn_format >= 1 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_format_nonliteral)
        handle_generated_option (opts, opts_set,
                                 OPT_Wformat_nonliteral, NULL, value ? warn_format >= 2 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_format_overflow)
        handle_generated_option (opts, opts_set,
                                 OPT_Wformat_overflow_, NULL, value ? warn_format >= 1 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_format_security)
        handle_generated_option (opts, opts_set,
                                 OPT_Wformat_security, NULL, value ? warn_format >= 2 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_format_trunc)
        handle_generated_option (opts, opts_set,
                                 OPT_Wformat_truncation_, NULL, value ? warn_format >= 1 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_format_y2k)
        handle_generated_option (opts, opts_set,
                                 OPT_Wformat_y2k, NULL, value ? warn_format >= 2 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_format_zero_length)
        handle_generated_option (opts, opts_set,
                                 OPT_Wformat_zero_length, NULL, value ? warn_format >= 1 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_nonnull)
        handle_generated_option (opts, opts_set,
                                 OPT_Wnonnull, NULL, value ? warn_format >= 1 : 0,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    case OPT_Wc__11_compat:
      if (!opts_set->x_warn_narrowing)
        handle_generated_option (opts, opts_set,
                                 OPT_Wnarrowing, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    case OPT_Wabi:
      if (!opts_set->x_warn_noexcept_type)
        handle_generated_option (opts, opts_set,
                                 OPT_Wnoexcept_type, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      if (!opts_set->x_warn_psabi)
        handle_generated_option (opts, opts_set,
                                 OPT_Wpsabi, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    case OPT_Wc__17_compat:
      if (!opts_set->x_warn_noexcept_type)
        handle_generated_option (opts, opts_set,
                                 OPT_Wnoexcept_type, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    case OPT_Wunused:
      if (!opts_set->x_warn_unused_variable)
        handle_generated_option (opts, opts_set,
                                 OPT_Wunused_variable, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    case OPT_Wtraditional:
      if (!opts_set->x_cpp_warn_variadic_macros)
        handle_generated_option (opts, opts_set,
                                 OPT_Wvariadic_macros, NULL, value,
                                 lang_mask, kind, loc, handlers, true, dc);
      break;

    default:    
      break;    
    }           
  return true;  
}               


#include "cpplib.h"
void
cpp_handle_option_auto (const struct gcc_options * opts,                   
                        size_t scode, struct cpp_options * cpp_opts)
{                                                                     
  enum opt_code code = (enum opt_code) scode;                         
                                                                      
  switch (code)                                                       
    {                                                                 
    case OPT_Wbuiltin_macro_redefined:
      cpp_opts->warn_builtin_macro_redefined = opts->x_cpp_warn_builtin_macro_redefined;
      break;
    case OPT_Wc___compat:
      cpp_opts->warn_cxx_operator_names = opts->x_warn_cxx_compat;
      break;
    case OPT_Wc__11_compat:
      cpp_opts->cpp_warn_cxx11_compat = opts->x_warn_cxx11_compat;
      break;
    case OPT_Wc90_c99_compat:
      cpp_opts->cpp_warn_c90_c99_compat = opts->x_warn_c90_c99_compat;
      break;
    case OPT_Wcomment:
      cpp_opts->warn_comments = opts->x_cpp_warn_comment;
      break;
    case OPT_Wdate_time:
      cpp_opts->warn_date_time = opts->x_cpp_warn_date_time;
      break;
    case OPT_Wdeprecated:
      cpp_opts->cpp_warn_deprecated = opts->x_warn_deprecated;
      break;
    case OPT_Wendif_labels:
      cpp_opts->warn_endif_labels = opts->x_cpp_warn_endif_labels;
      break;
    case OPT_Wexpansion_to_defined:
      cpp_opts->warn_expansion_to_defined = opts->x_cpp_warn_expansion_to_defined;
      break;
    case OPT_Winvalid_pch:
      cpp_opts->warn_invalid_pch = opts->x_cpp_warn_invalid_pch;
      break;
    case OPT_Wliteral_suffix:
      cpp_opts->warn_literal_suffix = opts->x_cpp_warn_literal_suffix;
      break;
    case OPT_Wlong_long:
      cpp_opts->cpp_warn_long_long = opts->x_warn_long_long;
      break;
    case OPT_Wmissing_include_dirs:
      cpp_opts->warn_missing_include_dirs = opts->x_cpp_warn_missing_include_dirs;
      break;
    case OPT_Wmultichar:
      cpp_opts->warn_multichar = opts->x_cpp_warn_multichar;
      break;
    case OPT_Wnormalized_:
      cpp_opts->warn_normalize = opts->x_cpp_warn_normalize;
      break;
    case OPT_Wpedantic:
      cpp_opts->cpp_pedantic = opts->x_pedantic;
      break;
    case OPT_Wtraditional:
      cpp_opts->cpp_warn_traditional = opts->x_warn_traditional;
      break;
    case OPT_Wtrigraphs:
      cpp_opts->warn_trigraphs = opts->x_cpp_warn_trigraphs;
      break;
    case OPT_Wundef:
      cpp_opts->warn_undef = opts->x_cpp_warn_undef;
      break;
    case OPT_Wvariadic_macros:
      cpp_opts->warn_variadic_macros = opts->x_cpp_warn_variadic_macros;
      break;
    default:    
      break;    
    }           
}

void
init_global_opts_from_cpp(struct gcc_options * opts,                   
                         const struct cpp_options * cpp_opts)
{                                                                     
  opts->x_cpp_warn_builtin_macro_redefined = cpp_opts->warn_builtin_macro_redefined;
  opts->x_warn_cxx_compat = cpp_opts->warn_cxx_operator_names;
  opts->x_warn_cxx11_compat = cpp_opts->cpp_warn_cxx11_compat;
  opts->x_warn_c90_c99_compat = cpp_opts->cpp_warn_c90_c99_compat;
  opts->x_cpp_warn_comment = cpp_opts->warn_comments;
  opts->x_cpp_warn_date_time = cpp_opts->warn_date_time;
  opts->x_warn_deprecated = cpp_opts->cpp_warn_deprecated;
  opts->x_cpp_warn_endif_labels = cpp_opts->warn_endif_labels;
  opts->x_cpp_warn_expansion_to_defined = cpp_opts->warn_expansion_to_defined;
  opts->x_cpp_warn_invalid_pch = cpp_opts->warn_invalid_pch;
  opts->x_cpp_warn_literal_suffix = cpp_opts->warn_literal_suffix;
  opts->x_warn_long_long = cpp_opts->cpp_warn_long_long;
  opts->x_cpp_warn_missing_include_dirs = cpp_opts->warn_missing_include_dirs;
  opts->x_cpp_warn_multichar = cpp_opts->warn_multichar;
  opts->x_cpp_warn_normalize = cpp_opts->warn_normalize;
  opts->x_pedantic = cpp_opts->cpp_pedantic;
  opts->x_warn_traditional = cpp_opts->cpp_warn_traditional;
  opts->x_cpp_warn_trigraphs = cpp_opts->warn_trigraphs;
  opts->x_cpp_warn_undef = cpp_opts->warn_undef;
  opts->x_cpp_warn_variadic_macros = cpp_opts->warn_variadic_macros;
}               
