Struct rustc_session::config::UnstableOptions
source · [−]pub struct UnstableOptions {Show 171 fields
pub allow_features: Option<Vec<String>>,
pub always_encode_mir: bool,
pub assume_incomplete_release: bool,
pub asm_comments: bool,
pub assert_incr_state: Option<String>,
pub binary_dep_depinfo: bool,
pub box_noalias: Option<bool>,
pub branch_protection: Option<BranchProtection>,
pub cf_protection: CFProtection,
pub cgu_partitioning_strategy: Option<String>,
pub chalk: bool,
pub codegen_backend: Option<String>,
pub combine_cgu: bool,
pub crate_attr: Vec<String>,
pub debug_info_for_profiling: bool,
pub debug_macros: bool,
pub deduplicate_diagnostics: bool,
pub dep_info_omit_d_target: bool,
pub dep_tasks: bool,
pub dlltool: Option<PathBuf>,
pub dont_buffer_diagnostics: bool,
pub drop_tracking: bool,
pub dual_proc_macros: bool,
pub dump_dep_graph: bool,
pub dump_drop_tracking_cfg: Option<String>,
pub dump_mir: Option<String>,
pub dump_mir_dataflow: bool,
pub dump_mir_dir: String,
pub dump_mir_exclude_pass_number: bool,
pub dump_mir_graphviz: bool,
pub dump_mir_spanview: Option<MirSpanview>,
pub dwarf_version: Option<u32>,
pub emit_stack_sizes: bool,
pub emit_thin_lto: bool,
pub export_executable_symbols: bool,
pub extra_const_ub_checks: bool,
pub fewer_names: Option<bool>,
pub force_unstable_if_unmarked: bool,
pub fuel: Option<(String, u64)>,
pub function_sections: Option<bool>,
pub future_incompat_test: bool,
pub gcc_ld: Option<LdImpl>,
pub graphviz_dark_mode: bool,
pub graphviz_font: String,
pub hir_stats: bool,
pub human_readable_cgu_names: bool,
pub identify_regions: bool,
pub incremental_ignore_spans: bool,
pub incremental_info: bool,
pub incremental_relative_spans: bool,
pub incremental_verify_ich: bool,
pub inline_llvm: bool,
pub inline_mir: Option<bool>,
pub inline_mir_threshold: Option<usize>,
pub inline_mir_hint_threshold: Option<usize>,
pub inline_in_all_cgus: Option<bool>,
pub input_stats: bool,
pub instrument_coverage: Option<InstrumentCoverage>,
pub instrument_mcount: bool,
pub keep_hygiene_data: bool,
pub link_native_libraries: bool,
pub link_only: bool,
pub llvm_plugins: Vec<String>,
pub llvm_time_trace: bool,
pub location_detail: LocationDetail,
pub ls: bool,
pub macro_backtrace: bool,
pub merge_functions: Option<MergeFunctions>,
pub meta_stats: bool,
pub mir_emit_retag: bool,
pub mir_enable_passes: Vec<(String, bool)>,
pub mir_pretty_relative_line_numbers: bool,
pub mir_opt_level: Option<usize>,
pub move_size_limit: Option<usize>,
pub mutable_noalias: Option<bool>,
pub new_llvm_pass_manager: Option<bool>,
pub nll_facts: bool,
pub nll_facts_dir: String,
pub no_analysis: bool,
pub no_codegen: bool,
pub no_generate_arange_section: bool,
pub no_interleave_lints: bool,
pub no_leak_check: bool,
pub no_link: bool,
pub no_parallel_llvm: bool,
pub no_unique_section_names: bool,
pub no_profiler_runtime: bool,
pub normalize_docs: bool,
pub oom: OomStrategy,
pub osx_rpath_install_name: bool,
pub diagnostic_width: Option<usize>,
pub packed_bundled_libs: bool,
pub panic_abort_tests: bool,
pub panic_in_drop: PanicStrategy,
pub parse_only: bool,
pub perf_stats: bool,
pub pick_stable_methods_before_any_unstable: bool,
pub plt: Option<bool>,
pub polonius: bool,
pub polymorphize: bool,
pub pre_link_arg: (),
pub pre_link_args: Vec<String>,
pub precise_enum_drop_elaboration: bool,
pub print_fuel: Option<String>,
pub print_llvm_passes: bool,
pub print_mono_items: Option<String>,
pub print_type_sizes: bool,
pub proc_macro_backtrace: bool,
pub proc_macro_execution_strategy: ProcMacroExecutionStrategy,
pub profile: bool,
pub profile_closures: bool,
pub profile_emit: Option<PathBuf>,
pub profiler_runtime: String,
pub profile_sample_use: Option<PathBuf>,
pub query_dep_graph: bool,
pub randomize_layout: bool,
pub layout_seed: Option<u64>,
pub relax_elf_relocations: Option<bool>,
pub relro_level: Option<RelroLevel>,
pub remap_cwd_prefix: Option<PathBuf>,
pub simulate_remapped_rust_src_base: Option<PathBuf>,
pub report_delayed_bugs: bool,
pub sanitizer: SanitizerSet,
pub sanitizer_memory_track_origins: usize,
pub sanitizer_recover: SanitizerSet,
pub saturating_float_casts: Option<bool>,
pub save_analysis: bool,
pub self_profile: SwitchWithOptPath,
pub self_profile_events: Option<Vec<String>>,
pub self_profile_counter: String,
pub share_generics: Option<bool>,
pub show_span: Option<String>,
pub span_debug: bool,
pub span_free_formats: bool,
pub src_hash_algorithm: Option<SourceFileHashAlgorithm>,
pub stack_protector: StackProtector,
pub strict_init_checks: bool,
pub strip: Strip,
pub split_dwarf_kind: SplitDwarfKind,
pub split_dwarf_inlining: bool,
pub symbol_mangling_version: Option<SymbolManglingVersion>,
pub teach: bool,
pub temps_dir: Option<String>,
pub translate_lang: Option<LanguageIdentifier>,
pub translate_additional_ftl: Option<PathBuf>,
pub translate_directionality_markers: bool,
pub tune_cpu: Option<String>,
pub thinlto: Option<bool>,
pub thir_unsafeck: bool,
pub threads: usize,
pub time: bool,
pub time_llvm_passes: bool,
pub time_passes: bool,
pub tls_model: Option<TlsModel>,
pub trace_macros: bool,
pub translate_remapped_path_to_local_path: bool,
pub trap_unreachable: Option<bool>,
pub treat_err_as_bug: Option<NonZeroUsize>,
pub trim_diagnostic_paths: bool,
pub ui_testing: bool,
pub uninit_const_chunk_threshold: usize,
pub unleash_the_miri_inside_of_you: bool,
pub unpretty: Option<String>,
pub unsound_mir_opts: bool,
pub unstable_options: bool,
pub use_ctors_section: Option<bool>,
pub validate_mir: bool,
pub verbose: bool,
pub verify_llvm_ir: bool,
pub virtual_function_elimination: bool,
pub wasi_exec_model: Option<WasiExecModel>,
}
Fields
allow_features: Option<Vec<String>>
always_encode_mir: bool
assume_incomplete_release: bool
asm_comments: bool
assert_incr_state: Option<String>
binary_dep_depinfo: bool
box_noalias: Option<bool>
branch_protection: Option<BranchProtection>
cf_protection: CFProtection
cgu_partitioning_strategy: Option<String>
chalk: bool
codegen_backend: Option<String>
combine_cgu: bool
crate_attr: Vec<String>
debug_info_for_profiling: bool
debug_macros: bool
deduplicate_diagnostics: bool
dep_info_omit_d_target: bool
dep_tasks: bool
dlltool: Option<PathBuf>
dont_buffer_diagnostics: bool
drop_tracking: bool
dual_proc_macros: bool
dump_dep_graph: bool
dump_drop_tracking_cfg: Option<String>
dump_mir: Option<String>
dump_mir_dataflow: bool
dump_mir_dir: String
dump_mir_exclude_pass_number: bool
dump_mir_graphviz: bool
dump_mir_spanview: Option<MirSpanview>
dwarf_version: Option<u32>
emit_stack_sizes: bool
emit_thin_lto: bool
export_executable_symbols: bool
extra_const_ub_checks: bool
fewer_names: Option<bool>
force_unstable_if_unmarked: bool
fuel: Option<(String, u64)>
function_sections: Option<bool>
future_incompat_test: bool
gcc_ld: Option<LdImpl>
graphviz_dark_mode: bool
graphviz_font: String
hir_stats: bool
human_readable_cgu_names: bool
identify_regions: bool
incremental_ignore_spans: bool
incremental_info: bool
incremental_relative_spans: bool
incremental_verify_ich: bool
inline_llvm: bool
inline_mir: Option<bool>
inline_mir_threshold: Option<usize>
inline_mir_hint_threshold: Option<usize>
inline_in_all_cgus: Option<bool>
input_stats: bool
instrument_coverage: Option<InstrumentCoverage>
instrument_mcount: bool
keep_hygiene_data: bool
link_native_libraries: bool
link_only: bool
llvm_plugins: Vec<String>
llvm_time_trace: bool
location_detail: LocationDetail
ls: bool
macro_backtrace: bool
merge_functions: Option<MergeFunctions>
meta_stats: bool
mir_emit_retag: bool
mir_enable_passes: Vec<(String, bool)>
mir_pretty_relative_line_numbers: bool
mir_opt_level: Option<usize>
move_size_limit: Option<usize>
mutable_noalias: Option<bool>
new_llvm_pass_manager: Option<bool>
nll_facts: bool
nll_facts_dir: String
no_analysis: bool
no_codegen: bool
no_generate_arange_section: bool
no_interleave_lints: bool
no_leak_check: bool
no_link: bool
no_parallel_llvm: bool
no_unique_section_names: bool
no_profiler_runtime: bool
normalize_docs: bool
oom: OomStrategy
osx_rpath_install_name: bool
diagnostic_width: Option<usize>
packed_bundled_libs: bool
panic_abort_tests: bool
panic_in_drop: PanicStrategy
parse_only: bool
perf_stats: bool
pick_stable_methods_before_any_unstable: bool
plt: Option<bool>
polonius: bool
polymorphize: bool
pre_link_arg: ()
pre_link_args: Vec<String>
precise_enum_drop_elaboration: bool
print_fuel: Option<String>
print_llvm_passes: bool
print_mono_items: Option<String>
print_type_sizes: bool
proc_macro_backtrace: bool
proc_macro_execution_strategy: ProcMacroExecutionStrategy
profile: bool
profile_closures: bool
profile_emit: Option<PathBuf>
profiler_runtime: String
profile_sample_use: Option<PathBuf>
query_dep_graph: bool
randomize_layout: bool
layout_seed: Option<u64>
relax_elf_relocations: Option<bool>
relro_level: Option<RelroLevel>
remap_cwd_prefix: Option<PathBuf>
simulate_remapped_rust_src_base: Option<PathBuf>
report_delayed_bugs: bool
sanitizer: SanitizerSet
sanitizer_memory_track_origins: usize
sanitizer_recover: SanitizerSet
saturating_float_casts: Option<bool>
save_analysis: bool
self_profile: SwitchWithOptPath
self_profile_events: Option<Vec<String>>
keep this in sync with the event filter names in librustc_data_structures/profiling.rs
self_profile_counter: String
show_span: Option<String>
span_debug: bool
span_free_formats: bool
o/w tests have closure@path
src_hash_algorithm: Option<SourceFileHashAlgorithm>
stack_protector: StackProtector
strict_init_checks: bool
strip: Strip
split_dwarf_kind: SplitDwarfKind
split_dwarf_inlining: bool
symbol_mangling_version: Option<SymbolManglingVersion>
teach: bool
temps_dir: Option<String>
translate_lang: Option<LanguageIdentifier>
translate_additional_ftl: Option<PathBuf>
translate_directionality_markers: bool
tune_cpu: Option<String>
thinlto: Option<bool>
thir_unsafeck: bool
threads: usize
We default to 1 here since we want to behave like a sequential compiler for now. This’ll likely be adjusted in the future. Note that -Zthreads=0 is the way to get the num_cpus behavior.
time: bool
time_llvm_passes: bool
time_passes: bool
tls_model: Option<TlsModel>
trace_macros: bool
translate_remapped_path_to_local_path: bool
trap_unreachable: Option<bool>
treat_err_as_bug: Option<NonZeroUsize>
trim_diagnostic_paths: bool
ui_testing: bool
uninit_const_chunk_threshold: usize
unleash_the_miri_inside_of_you: bool
unpretty: Option<String>
unsound_mir_opts: bool
unstable_options: bool
This name is kind of confusing: Most unstable options enable something themselves, while this just allows “normal” options to be feature-gated.
use_ctors_section: Option<bool>
validate_mir: bool
verbose: bool
verify_llvm_ir: bool
virtual_function_elimination: bool
wasi_exec_model: Option<WasiExecModel>
Implementations
sourceimpl UnstableOptions
impl UnstableOptions
pub fn diagnostic_handler_flags(&self, can_emit_warnings: bool) -> HandlerFlags
sourceimpl UnstableOptions
impl UnstableOptions
pub fn build(matches: &Matches, error_format: ErrorOutputType) -> UnstableOptions
fn dep_tracking_hash(
&self,
for_crate_hash: bool,
error_format: ErrorOutputType
) -> u64
Trait Implementations
sourceimpl Clone for UnstableOptions
impl Clone for UnstableOptions
sourcefn clone(&self) -> UnstableOptions
fn clone(&self) -> UnstableOptions
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresourceimpl Default for UnstableOptions
impl Default for UnstableOptions
sourcefn default() -> UnstableOptions
fn default() -> UnstableOptions
Returns the “default value” for a type. Read more
Auto Trait Implementations
impl RefUnwindSafe for UnstableOptions
impl Send for UnstableOptions
impl Sync for UnstableOptions
impl Unpin for UnstableOptions
impl UnwindSafe for UnstableOptions
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Layout
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...)
attributes. Please see the Rust Reference’s “Type Layout” chapter for details on type layout guarantees.
Size: 1048 bytes