pub struct Features {
pub declared_lang_features: Vec<(Symbol, Span, Option<Symbol>)>,
pub declared_lib_features: Vec<(Symbol, Span)>,
pub asm: bool,
pub concat_idents: bool,
pub link_args: bool,
pub log_syntax: bool,
pub non_ascii_idents: bool,
pub plugin_registrar: bool,
pub thread_local: bool,
pub trace_macros: bool,
pub intrinsics: bool,
pub lang_items: bool,
pub format_args_nl: bool,
pub link_llvm_intrinsics: bool,
pub linkage: bool,
pub quote: bool,
pub rustc_diagnostic_macros: bool,
pub rustc_const_unstable: bool,
pub box_syntax: bool,
pub unboxed_closures: bool,
pub fundamental: bool,
pub main: bool,
pub needs_allocator: bool,
pub on_unimplemented: bool,
pub plugin: bool,
pub simd_ffi: bool,
pub start: bool,
pub structural_match: bool,
pub panic_runtime: bool,
pub needs_panic_runtime: bool,
pub optin_builtin_traits: bool,
pub staged_api: bool,
pub no_core: bool,
pub box_patterns: bool,
pub dropck_parametricity: bool,
pub dropck_eyepatch: bool,
pub custom_attribute: bool,
pub rustc_attrs: bool,
pub nll: bool,
pub allow_internal_unstable: bool,
pub allow_internal_unsafe: bool,
pub slice_patterns: bool,
pub const_fn: bool,
pub const_fn_union: bool,
pub const_raw_ptr_to_usize_cast: bool,
pub const_raw_ptr_deref: bool,
pub const_transmute: bool,
pub const_compare_raw_pointers: bool,
pub const_panic: bool,
pub prelude_import: bool,
pub default_type_parameter_fallback: bool,
pub associated_type_defaults: bool,
pub repr_simd: bool,
pub platform_intrinsics: bool,
pub unwind_attributes: bool,
pub naked_functions: bool,
pub no_debug: bool,
pub omit_gdb_pretty_printer_section: bool,
pub stmt_expr_attributes: bool,
pub type_ascription: bool,
pub cfg_target_thread_local: bool,
pub abi_vectorcall: bool,
pub exclusive_range_pattern: bool,
pub specialization: bool,
pub cfg_target_has_atomic: bool,
pub never_type: bool,
pub exhaustive_patterns: bool,
pub untagged_unions: bool,
pub compiler_builtins: bool,
pub link_cfg: bool,
pub abi_ptx: bool,
pub repr128: bool,
pub abi_unadjusted: bool,
pub decl_macro: bool,
pub static_nobundle: bool,
pub abi_msp430_interrupt: bool,
pub sanitizer_runtime: bool,
pub profiler_runtime: bool,
pub abi_x86_interrupt: bool,
pub try_blocks: bool,
pub global_asm: bool,
pub overlapping_marker_traits: bool,
pub marker_trait_attr: bool,
pub abi_thiscall: bool,
pub allow_fail: bool,
pub unsized_tuple_coercion: bool,
pub generators: bool,
pub trait_alias: bool,
pub allocator_internals: bool,
pub doc_cfg: bool,
pub doc_masked: bool,
pub doc_spotlight: bool,
pub external_doc: bool,
pub non_exhaustive: bool,
pub crate_visibility_modifier: bool,
pub extern_types: bool,
pub arbitrary_self_types: bool,
pub in_band_lifetimes: bool,
pub generic_associated_types: bool,
pub infer_static_outlives_requirements: bool,
pub macros_in_extern: bool,
pub existential_type: bool,
pub arm_target_feature: bool,
pub aarch64_target_feature: bool,
pub hexagon_target_feature: bool,
pub powerpc_target_feature: bool,
pub mips_target_feature: bool,
pub avx512_target_feature: bool,
pub mmx_target_feature: bool,
pub sse4a_target_feature: bool,
pub tbm_target_feature: bool,
pub wasm_target_feature: bool,
pub adx_target_feature: bool,
pub cmpxchg16b_target_feature: bool,
pub proc_macro_hygiene: bool,
pub doc_alias: bool,
pub trivial_bounds: bool,
pub label_break_value: bool,
pub precise_pointer_size_matching: bool,
pub doc_keyword: bool,
pub async_await: bool,
pub alloc_error_handler: bool,
pub abi_amdgpu_kernel: bool,
pub test_2018_feature: bool,
pub unrestricted_attribute_tokens: bool,
pub unsized_locals: bool,
pub custom_test_frameworks: bool,
pub custom_inner_attributes: bool,
pub bind_by_move_pattern_guards: bool,
pub impl_trait_in_bindings: bool,
pub underscore_const_names: bool,
pub lint_reasons: bool,
pub extern_crate_self: bool,
pub type_alias_enum_variants: bool,
pub re_rebalance_coherence: bool,
}