about summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
authorNicholas Nethercote <nnethercote@mozilla.com>2020-04-03 10:42:29 +1100
committerNicholas Nethercote <nnethercote@mozilla.com>2020-04-19 20:03:18 +1000
commitcc93e51ed3d1ffe4e9d9dea3e5aff754623d032f (patch)
tree05f3d87ab2082eaa9e28de1175b3fd03e8452a3a /src
parent58217bc996564965d3362ca3010a272b39e229f6 (diff)
downloadrust-cc93e51ed3d1ffe4e9d9dea3e5aff754623d032f.tar.gz
rust-cc93e51ed3d1ffe4e9d9dea3e5aff754623d032f.zip
Show defaults in options descriptions.
For all `-C` and `-Z` options that have them.

The commit also rewords a few options to make them clearer, mostly by
avoiding the word "don't".

It also removes the listed default for `-Cinline-threshold`, which is
incorrect -- that option doesn't have a static default.
Diffstat (limited to 'src')
-rw-r--r--src/librustc_session/options.rs208
1 files changed, 109 insertions, 99 deletions
diff --git a/src/librustc_session/options.rs b/src/librustc_session/options.rs
index a40c88a3b3f..a7bf1279f28 100644
--- a/src/librustc_session/options.rs
+++ b/src/librustc_session/options.rs
@@ -622,7 +622,7 @@ options! {CodegenOptions, CodegenSetter, basic_codegen_options,
     link_args: Vec<String> = (Vec::new(), parse_list, [UNTRACKED],
         "extra arguments to append to the linker invocation (space separated)"),
     link_dead_code: bool = (false, parse_bool, [UNTRACKED],
-        "don't let linker strip dead code (turning it on can be used for code coverage)"),
+        "keep dead code at link time (useful for code coverage) (default: no)"),
     lto: LtoCli = (LtoCli::Unspecified, parse_lto, [TRACKED],
         "perform LLVM link-time optimizations"),
     target_cpu: Option<String> = (None, parse_opt_string, [TRACKED],
@@ -635,21 +635,21 @@ options! {CodegenOptions, CodegenSetter, basic_codegen_options,
     llvm_args: Vec<String> = (Vec::new(), parse_list, [TRACKED],
         "a list of arguments to pass to LLVM (space separated)"),
     save_temps: bool = (false, parse_bool, [UNTRACKED],
-        "save all temporary output files during compilation"),
+        "save all temporary output files during compilation (default: no)"),
     rpath: bool = (false, parse_bool, [UNTRACKED],
-        "set rpath values in libs/exes"),
+        "set rpath values in libs/exes (default: no)"),
     overflow_checks: Option<bool> = (None, parse_opt_bool, [TRACKED],
         "use overflow checks for integer arithmetic"),
     no_prepopulate_passes: bool = (false, parse_bool, [TRACKED],
-        "don't pre-populate the pass manager with a list of passes"),
+        "give an empty list of passes to the pass manager (default: no)"),
     no_vectorize_loops: bool = (false, parse_bool, [TRACKED],
-        "don't run the loop vectorization optimization passes"),
+        "disable loop vectorization optimization passes (default: no)"),
     no_vectorize_slp: bool = (false, parse_bool, [TRACKED],
-        "don't run LLVM's SLP vectorization pass"),
+        "disable LLVM's SLP vectorization pass (default: no)"),
     soft_float: bool = (false, parse_bool, [TRACKED],
-        "use soft float ABI (*eabihf targets only)"),
+        "use soft float ABI (*eabihf targets only) (default: no)"),
     prefer_dynamic: bool = (false, parse_bool, [TRACKED],
-        "prefer dynamic linking to static linking"),
+        "prefer dynamic linking to static linking (default: no)"),
     no_redzone: Option<bool> = (None, parse_opt_bool, [TRACKED],
         "disable the use of the redzone"),
     relocation_model: Option<String> = (None, parse_opt_string, [TRACKED],
@@ -665,24 +665,24 @@ options! {CodegenOptions, CodegenSetter, basic_codegen_options,
     remark: Passes = (Passes::Some(Vec::new()), parse_passes, [UNTRACKED],
         "print remarks for these optimization passes (space separated, or \"all\")"),
     no_stack_check: bool = (false, parse_bool, [UNTRACKED],
-        "the `--no-stack-check` flag is deprecated and does nothing"),
+        "this option is deprecated and does nothing"),
     debuginfo: usize = (0, parse_uint, [TRACKED],
-        "debug info emission level, 0 = no debug info, 1 = line tables only, \
-         2 = full debug info with variable and type information"),
+        "debug info emission level (0 = no debug info, 1 = line tables only, \
+         2 = full debug info with variable and type information; default: 0)"),
     opt_level: String = ("0".to_string(), parse_string, [TRACKED],
-        "optimize with possible levels 0-3, s, or z"),
+        "optimization level (0-3, s, or z; default: 0)"),
     force_frame_pointers: Option<bool> = (None, parse_opt_bool, [TRACKED],
         "force use of the frame pointers"),
     debug_assertions: Option<bool> = (None, parse_opt_bool, [TRACKED],
         "explicitly enable the `cfg(debug_assertions)` directive"),
     inline_threshold: Option<usize> = (None, parse_opt_uint, [TRACKED],
-        "set the threshold for inlining a function (default: 225)"),
+        "set the threshold for inlining a function"),
     panic: Option<PanicStrategy> = (None, parse_panic_strategy,
         [TRACKED], "panic strategy to compile crate with"),
     incremental: Option<String> = (None, parse_opt_string, [UNTRACKED],
         "enable incremental compilation"),
     default_linker_libraries: bool = (false, parse_bool, [UNTRACKED],
-        "allow the linker to link its default libraries"),
+        "allow the linker to link its default libraries (default: no)"),
     linker_flavor: Option<LinkerFlavor> = (None, parse_linker_flavor, [UNTRACKED],
                                            "linker flavor"),
     linker_plugin_lto: LinkerPluginLto = (LinkerPluginLto::Disabled,
@@ -701,41 +701,43 @@ options! {DebuggingOptions, DebuggingSetter, basic_debugging_options,
     codegen_backend: Option<String> = (None, parse_opt_string, [TRACKED],
         "the backend to use"),
     verbose: bool = (false, parse_bool, [UNTRACKED],
-        "in general, enable more debug printouts"),
+        "in general, enable more debug printouts (default: no)"),
+    // o/w tests have closure@path
     span_free_formats: bool = (false, parse_bool, [UNTRACKED],
-        "when debug-printing compiler state, do not include spans"), // o/w tests have closure@path
+        "exclude spans when debug-printing compiler state (default: no)"),
     identify_regions: bool = (false, parse_bool, [UNTRACKED],
-        "make unnamed regions display as '# (where # is some non-ident unique id)"),
+        "display unnamed regions as `'<id>`, using a non-ident unique id (default: no)"),
     borrowck: String = ("migrate".to_string(), parse_string, [UNTRACKED],
-        "select which borrowck is used (`mir` or `migrate`)"),
+        "select which borrowck is used (`mir` or `migrate`) (default: `migrate`)"),
     time_passes: bool = (false, parse_bool, [UNTRACKED],
-        "measure time of each rustc pass"),
+        "measure time of each rustc pass (default: no)"),
     time: bool = (false, parse_bool, [UNTRACKED],
-        "measure time of rustc processes"),
+        "measure time of rustc processes (default: no)"),
     time_llvm_passes: bool = (false, parse_bool, [UNTRACKED],
-        "measure time of each LLVM pass"),
+        "measure time of each LLVM pass (default: no)"),
     llvm_time_trace: bool = (false, parse_bool, [UNTRACKED],
-        "generate JSON tracing data file from LLVM data"),
+        "generate JSON tracing data file from LLVM data (default: no)"),
     input_stats: bool = (false, parse_bool, [UNTRACKED],
-        "gather statistics about the input"),
+        "gather statistics about the input (default: no)"),
     asm_comments: bool = (false, parse_bool, [TRACKED],
-        "generate comments into the assembly (may change behavior)"),
+        "generate comments into the assembly (may change behavior) (default: no)"),
     verify_llvm_ir: bool = (false, parse_bool, [TRACKED],
-        "verify LLVM IR"),
+        "verify LLVM IR (default: no)"),
     borrowck_stats: bool = (false, parse_bool, [UNTRACKED],
-        "gather borrowck statistics"),
+        "gather borrowck statistics (default: no)"),
     no_landing_pads: bool = (false, parse_bool, [TRACKED],
-        "omit landing pads for unwinding"),
+        "omit landing pads for unwinding (default: no)"),
     fewer_names: bool = (false, parse_bool, [TRACKED],
-        "reduce memory use by retaining fewer names within compilation artifacts (LLVM-IR)"),
+        "reduce memory use by retaining fewer names within compilation artifacts (LLVM-IR) \
+        (default: no)"),
     meta_stats: bool = (false, parse_bool, [UNTRACKED],
-        "gather metadata statistics"),
+        "gather metadata statistics (default: no)"),
     print_link_args: bool = (false, parse_bool, [UNTRACKED],
-        "print the arguments passed to the linker"),
+        "print the arguments passed to the linker (default: no)"),
     print_llvm_passes: bool = (false, parse_bool, [UNTRACKED],
-        "prints the LLVM optimization passes being run"),
+        "print the LLVM optimization passes being run (default: no)"),
     ast_json: bool = (false, parse_bool, [UNTRACKED],
-        "print the AST as JSON and halt"),
+        "print the AST as JSON and halt (default: no)"),
     // 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
@@ -743,69 +745,72 @@ options! {DebuggingOptions, DebuggingSetter, basic_debugging_options,
     threads: usize = (1, parse_threads, [UNTRACKED],
         "use a thread pool with N threads"),
     ast_json_noexpand: bool = (false, parse_bool, [UNTRACKED],
-        "print the pre-expansion AST as JSON and halt"),
+        "print the pre-expansion AST as JSON and halt (default: no)"),
     ls: bool = (false, parse_bool, [UNTRACKED],
-        "list the symbols defined by a library crate"),
+        "list the symbols defined by a library crate (default: no)"),
     save_analysis: bool = (false, parse_bool, [UNTRACKED],
         "write syntax and type analysis (in JSON format) information, in \
-         addition to normal output"),
+         addition to normal output (default: no)"),
     print_region_graph: bool = (false, parse_bool, [UNTRACKED],
         "prints region inference graph. \
-         Use with RUST_REGION_GRAPH=help for more info"),
+         Use with RUST_REGION_GRAPH=help for more info (default: no)"),
     parse_only: bool = (false, parse_bool, [UNTRACKED],
-        "parse only; do not compile, assemble, or link"),
+        "parse only; do not compile, assemble, or link (default: no)"),
     dual_proc_macros: bool = (false, parse_bool, [TRACKED],
-        "load proc macros for both target and host, but only link to the target"),
+        "load proc macros for both target and host, but only link to the target (default: no)"),
     no_codegen: bool = (false, parse_bool, [TRACKED],
-        "run all passes except codegen; no output"),
+        "run all passes except codegen; no output (default: no)"),
     treat_err_as_bug: Option<usize> = (None, parse_treat_err_as_bug, [TRACKED],
         "treat error number `val` that occurs as bug"),
     report_delayed_bugs: bool = (false, parse_bool, [TRACKED],
-        "immediately print bugs registered with `delay_span_bug`"),
+        "immediately print bugs registered with `delay_span_bug` (default: no)"),
     macro_backtrace: bool = (false, parse_bool, [UNTRACKED],
-        "show macro backtraces"),
+        "show macro backtraces (default: no)"),
     teach: bool = (false, parse_bool, [TRACKED],
-        "show extended diagnostic help"),
+        "show extended diagnostic help (default: no)"),
     terminal_width: Option<usize> = (None, parse_opt_uint, [UNTRACKED],
         "set the current terminal width"),
     panic_abort_tests: bool = (false, parse_bool, [TRACKED],
-        "support compiling tests with panic=abort"),
+        "support compiling tests with panic=abort (default: no)"),
     dep_tasks: bool = (false, parse_bool, [UNTRACKED],
-        "print tasks that execute and the color their dep node gets (requires debug build)"),
+        "print tasks that execute and the color their dep node gets (requires debug build) \
+        (default: no)"),
     incremental_info: bool = (false, parse_bool, [UNTRACKED],
-        "print high-level information about incremental reuse (or the lack thereof)"),
+        "print high-level information about incremental reuse (or the lack thereof) \
+        (default: no)"),
     incremental_verify_ich: bool = (false, parse_bool, [UNTRACKED],
-        "verify incr. comp. hashes of green query instances"),
+        "verify incr. comp. hashes of green query instances (default: no)"),
     incremental_ignore_spans: bool = (false, parse_bool, [UNTRACKED],
-        "ignore spans during ICH computation -- used for testing"),
+        "ignore spans during ICH computation -- used for testing (default: no)"),
     instrument_mcount: bool = (false, parse_bool, [TRACKED],
-        "insert function instrument code for mcount-based tracing"),
+        "insert function instrument code for mcount-based tracing (default: no)"),
     dump_dep_graph: bool = (false, parse_bool, [UNTRACKED],
-        "dump the dependency graph to $RUST_DEP_GRAPH (default: /tmp/dep_graph.gv)"),
+        "dump the dependency graph to $RUST_DEP_GRAPH (default: /tmp/dep_graph.gv) \
+        (default: no)"),
     query_dep_graph: bool = (false, parse_bool, [UNTRACKED],
-        "enable queries of the dependency graph for regression testing"),
+        "enable queries of the dependency graph for regression testing (default: no)"),
     no_analysis: bool = (false, parse_bool, [UNTRACKED],
-        "parse and expand the source, but run no analysis"),
+        "parse and expand the source, but run no analysis (default: no)"),
     unstable_options: bool = (false, parse_bool, [UNTRACKED],
-        "adds unstable command line options to rustc interface"),
+        "adds unstable command line options to rustc interface (default: no)"),
     force_overflow_checks: Option<bool> = (None, parse_opt_bool, [TRACKED],
         "force overflow checks on or off"),
     trace_macros: bool = (false, parse_bool, [UNTRACKED],
-        "for every macro invocation, print its name and arguments"),
+        "for every macro invocation, print its name and arguments (default: no)"),
     debug_macros: bool = (false, parse_bool, [TRACKED],
-        "emit line numbers debug info inside macros"),
+        "emit line numbers debug info inside macros (default: no)"),
     no_generate_arange_section: bool = (false, parse_bool, [TRACKED],
-        "don't generate DWARF address ranges that give faster lookups"),
+        "omit DWARF address ranges that give faster lookups (default: no)"),
     keep_hygiene_data: bool = (false, parse_bool, [UNTRACKED],
-        "don't clear the hygiene data after analysis"),
+        "keep hygiene data after analysis (default: no)"),
     show_span: Option<String> = (None, parse_opt_string, [TRACKED],
         "show spans for compiler debugging (expr|pat|ty)"),
     print_type_sizes: bool = (false, parse_bool, [UNTRACKED],
-        "print layout information for each type encountered"),
+        "print layout information for each type encountered (default: no)"),
     print_mono_items: Option<String> = (None, parse_opt_string, [UNTRACKED],
         "print the result of the monomorphization collection pass"),
     mir_opt_level: usize = (1, parse_uint, [TRACKED],
-        "set the MIR optimization level (0-3, default: 1)"),
+        "MIR optimization level (0-3; default: 1)"),
     mutable_noalias: bool = (false, parse_bool, [TRACKED],
         "emit noalias metadata for mutable references (default: no)"),
     dump_mir: Option<String> = (None, parse_opt_string, [UNTRACKED],
@@ -817,29 +822,30 @@ options! {DebuggingOptions, DebuggingSetter, basic_debugging_options,
         `foo | bar` all passes for function names containing 'foo' or 'bar'."),
 
     dump_mir_dir: String = ("mir_dump".to_string(), parse_string, [UNTRACKED],
-        "the directory the MIR is dumped into"),
+        "the directory the MIR is dumped into (default: `mir_dump`)"),
     dump_mir_graphviz: bool = (false, parse_bool, [UNTRACKED],
-        "in addition to `.mir` files, create graphviz `.dot` files"),
+        "in addition to `.mir` files, create graphviz `.dot` files (default: no)"),
     dump_mir_dataflow: bool = (false, parse_bool, [UNTRACKED],
-        "in addition to `.mir` files, create graphviz `.dot` files with dataflow results"),
+        "in addition to `.mir` files, create graphviz `.dot` files with dataflow results (default: no)"),
     dump_mir_exclude_pass_number: bool = (false, parse_bool, [UNTRACKED],
-        "if set, exclude the pass number when dumping MIR (used in tests)"),
+        "exclude the pass number when dumping MIR (used in tests) (default: no)"),
     mir_emit_retag: bool = (false, parse_bool, [TRACKED],
-        "emit Retagging MIR statements, interpreted e.g., by miri; implies -Zmir-opt-level=0"),
+        "emit Retagging MIR statements, interpreted e.g., by miri; implies -Zmir-opt-level=0 \
+        (default: no)"),
     perf_stats: bool = (false, parse_bool, [UNTRACKED],
-        "print some performance-related statistics"),
+        "print some performance-related statistics (default: no)"),
     query_stats: bool = (false, parse_bool, [UNTRACKED],
-        "print some statistics about the query system"),
+        "print some statistics about the query system (default: no)"),
     hir_stats: bool = (false, parse_bool, [UNTRACKED],
-        "print some statistics about AST and HIR"),
+        "print some statistics about AST and HIR (default: no)"),
     always_encode_mir: bool = (false, parse_bool, [TRACKED],
-        "encode MIR of all functions into the crate metadata"),
+        "encode MIR of all functions into the crate metadata (default: no)"),
     unleash_the_miri_inside_of_you: bool = (false, parse_bool, [TRACKED],
-        "take the breaks off const evaluation. NOTE: this is unsound"),
+        "take the brakes off const evaluation. NOTE: this is unsound (default: no)"),
     osx_rpath_install_name: bool = (false, parse_bool, [TRACKED],
-        "pass `-install_name @rpath/...` to the macOS linker"),
+        "pass `-install_name @rpath/...` to the macOS linker (default: no)"),
     sanitizer: Option<Sanitizer> = (None, parse_sanitizer, [TRACKED],
-                                    "use a sanitizer"),
+        "use a sanitizer"),
     sanitizer_recover: Vec<Sanitizer> = (vec![], parse_sanitizer_list, [TRACKED],
         "enable recovery for selected sanitizers"),
     sanitizer_memory_track_origins: usize = (0, parse_sanitizer_memory_track_origins, [TRACKED],
@@ -849,23 +855,24 @@ options! {DebuggingOptions, DebuggingSetter, basic_debugging_options,
     print_fuel: Option<String> = (None, parse_opt_string, [TRACKED],
         "make rustc print the total optimization fuel used by a crate"),
     force_unstable_if_unmarked: bool = (false, parse_bool, [TRACKED],
-        "force all crates to be `rustc_private` unstable"),
+        "force all crates to be `rustc_private` unstable (default: no)"),
     pre_link_arg: (/* redirected to pre_link_args */) = ((), parse_string_push, [UNTRACKED],
         "a single extra argument to prepend the linker invocation (can be used several times)"),
     pre_link_args: Vec<String> = (Vec::new(), parse_list, [UNTRACKED],
         "extra arguments to prepend to the linker invocation (space separated)"),
     profile: bool = (false, parse_bool, [TRACKED],
-                     "insert profiling code"),
+        "insert profiling code (default: no)"),
     no_profiler_runtime: bool = (false, parse_bool, [TRACKED],
-        "don't automatically inject the profiler_builtins crate"),
+        "prevent automatic injection of the profiler_builtins crate"),
     relro_level: Option<RelroLevel> = (None, parse_relro_level, [TRACKED],
         "choose which RELRO level to use"),
     nll_facts: bool = (false, parse_bool, [UNTRACKED],
-                       "dump facts from NLL analysis into side files"),
+        "dump facts from NLL analysis into side files (default: no)"),
     dont_buffer_diagnostics: bool = (false, parse_bool, [UNTRACKED],
-        "emit diagnostics rather than buffering (breaks NLL error downgrading, sorting)"),
+        "emit diagnostics rather than buffering (breaks NLL error downgrading, sorting) \
+        (default: no)"),
     polonius: bool = (false, parse_bool, [UNTRACKED],
-        "enable polonius-based borrow-checker"),
+        "enable polonius-based borrow-checker (default: no)"),
     thinlto: Option<bool> = (None, parse_opt_bool, [TRACKED],
         "enable ThinLTO when possible"),
     inline_in_all_cgus: Option<bool> = (None, parse_opt_bool, [TRACKED],
@@ -874,12 +881,12 @@ options! {DebuggingOptions, DebuggingSetter, basic_debugging_options,
         "choose the TLS model to use (`rustc --print tls-models` for details)"),
     saturating_float_casts: bool = (false, parse_bool, [TRACKED],
         "make float->int casts UB-free: numbers outside the integer type's range are clipped to \
-         the max/min integer respectively, and NaN is mapped to 0"),
+         the max/min integer respectively, and NaN is mapped to 0 (default: no)"),
     human_readable_cgu_names: bool = (false, parse_bool, [TRACKED],
-        "generate human-readable, predictable names for codegen units"),
+        "generate human-readable, predictable names for codegen units (default: no)"),
     dep_info_omit_d_target: bool = (false, parse_bool, [TRACKED],
         "in dep-info output, omit targets for tracking dependencies of the dep-info files \
-         themselves"),
+         themselves (default: no)"),
     unpretty: Option<String> = (None, parse_unpretty, [UNTRACKED],
         "present the input source, unstable (and less-pretty) variants;
         valid types are any of the types for `--pretty`, as well as:
@@ -894,21 +901,22 @@ options! {DebuggingOptions, DebuggingSetter, basic_debugging_options,
     // preserving that temporarily, but we're likely to switch the default
     // soon.
     run_dsymutil: bool = (true, parse_bool, [TRACKED],
-        "run `dsymutil` and delete intermediate object files"),
+        "if on Mac, run `dsymutil` and delete intermediate object files (default: yes)"),
     ui_testing: bool = (false, parse_bool, [UNTRACKED],
-        "format compiler diagnostics in a way that's better suitable for UI testing"),
+        "emit compiler diagnostics in a form suitable for UI testing (default: no)"),
     embed_bitcode: bool = (false, parse_bool, [TRACKED],
-        "embed LLVM bitcode in object files"),
+        "embed LLVM bitcode in object files (default: no)"),
     strip_debuginfo_if_disabled: bool = (false, parse_bool, [TRACKED],
-        "tell the linker to strip debuginfo when building without debuginfo enabled"),
+        "tell the linker to strip debuginfo when building without debuginfo enabled \
+        (default: no)"),
     share_generics: Option<bool> = (None, parse_opt_bool, [TRACKED],
         "make the current crate share its generic instantiations"),
     no_parallel_llvm: bool = (false, parse_bool, [UNTRACKED],
-        "don't run LLVM in parallel (while keeping codegen-units and ThinLTO)"),
+        "run LLVM in non-parallel mode (while keeping codegen-units and ThinLTO) (default: no)"),
     no_leak_check: bool = (false, parse_bool, [UNTRACKED],
-        "disables the 'leak check' for subtyping; unsound, but useful for tests"),
+        "disable the 'leak check' for subtyping; unsound, but useful for tests (default: no)"),
     no_interleave_lints: bool = (false, parse_bool, [UNTRACKED],
-        "don't interleave execution of lints; allows benchmarking individual lints"),
+        "execute lints separately; allows benchmarking individual lints (default: no)"),
     crate_attr: Vec<String> = (Vec::new(), parse_string_push, [TRACKED],
         "inject the given attribute in the crate"),
     self_profile: SwitchWithOptPath = (SwitchWithOptPath::Disabled,
@@ -916,18 +924,18 @@ options! {DebuggingOptions, DebuggingSetter, basic_debugging_options,
         "run the self profiler and output the raw event data"),
     // keep this in sync with the event filter names in librustc_data_structures/profiling.rs
     self_profile_events: Option<Vec<String>> = (None, parse_opt_comma_list, [UNTRACKED],
-        "specifies which kinds of events get recorded by the self profiler;
+        "specify the events recorded by the self profiler;
         for example: `-Z self-profile-events=default,query-keys`
         all options: none, all, default, generic-activity, query-provider, query-cache-hit
                      query-blocked, incr-cache-load, query-keys, function-args, args, llvm"),
     emit_stack_sizes: bool = (false, parse_bool, [UNTRACKED],
-        "emits a section containing stack size metadata"),
+        "emit a section containing stack size metadata (default: no)"),
     plt: Option<bool> = (None, parse_opt_bool, [TRACKED],
-          "whether to use the PLT when calling into shared libraries;
-          only has effect for PIC code on systems with ELF binaries
-          (default: PLT is disabled if full relro is enabled)"),
+        "whether to use the PLT when calling into shared libraries;
+        only has effect for PIC code on systems with ELF binaries
+        (default: PLT is disabled if full relro is enabled)"),
     merge_functions: Option<MergeFunctions> = (None, parse_merge_functions, [TRACKED],
-        "control the operation of the MergeFunctions LLVM pass, taking
+        "control the operation of the MergeFunctions LLVM pass, taking \
          the same values as the target option of the same name"),
     allow_features: Option<Vec<String>> = (None, parse_opt_comma_list, [TRACKED],
         "only allow the listed language features to be enabled in code (space separated)"),
@@ -935,22 +943,24 @@ options! {DebuggingOptions, DebuggingSetter, basic_debugging_options,
         parse_symbol_mangling_version, [TRACKED],
         "which mangling version to use for symbol names"),
     binary_dep_depinfo: bool = (false, parse_bool, [TRACKED],
-        "include artifacts (sysroot, crate dependencies) used during compilation in dep-info"),
+        "include artifacts (sysroot, crate dependencies) used during compilation in dep-info \
+        (default: no)"),
     insert_sideeffect: bool = (false, parse_bool, [TRACKED],
         "fix undefined behavior when a thread doesn't eventually make progress \
-         (such as entering an empty infinite loop) by inserting llvm.sideeffect"),
+         (such as entering an empty infinite loop) by inserting llvm.sideeffect \
+         (default: no)"),
     deduplicate_diagnostics: bool = (true, parse_bool, [UNTRACKED],
-        "deduplicate identical diagnostics"),
+        "deduplicate identical diagnostics (default: yes)"),
     control_flow_guard: CFGuard = (CFGuard::Disabled, parse_cfguard, [UNTRACKED],
         "use Windows Control Flow Guard (`disabled`, `nochecks` or `checks`)"),
     no_link: bool = (false, parse_bool, [TRACKED],
-        "compile without linking"),
+        "compile without linking (default: no)"),
     link_only: bool = (false, parse_bool, [TRACKED],
-        "link the `.rlink` file generated by `-Z no-link`"),
+        "link the `.rlink` file generated by `-Z no-link` (default: no)"),
     new_llvm_pass_manager: bool = (false, parse_bool, [TRACKED],
-        "use new LLVM pass manager"),
+        "use new LLVM pass manager (default: no)"),
     link_native_libraries: bool = (true, parse_bool, [UNTRACKED],
-        "link native libraries in the linker invocation"),
+        "link native libraries in the linker invocation (default: yes)"),
     src_hash_algorithm: Option<SourceFileHashAlgorithm> = (None, parse_src_file_hash, [TRACKED],
         "hash algorithm of source files in debug info (`md5`, or `sha1`)"),
 }