1. The Unstable Book
  2. Compiler environment variables
    1. COLORTERM
    2. QNX_TARGET
    3. RUSTC_BLESS
    4. RUSTC_BOOTSTRAP
    5. RUSTC_BREAK_ON_ICE
    6. RUSTC_CTFE_BACKTRACE
    7. RUSTC_FORCE_RUSTC_VERSION
    8. RUSTC_GRAPHVIZ_FONT
    9. RUSTC_ICE
    10. RUSTC_LOG
    11. RUSTC_OVERRIDE_VERSION_STRING
    12. RUSTC_TRANSLATION_NO_DEBUG_ASSERT
    13. RUSTC_WINDOWS_RC
    14. RUST_BACKTRACE
    15. RUST_DEP_GRAPH
    16. RUST_DEP_GRAPH_FILTER
    17. RUST_FORBID_DEP_GRAPH_EDGE
    18. RUST_MIN_STACK
    19. RUST_TARGET_PATH
    20. SDKROOT
    21. TERM
    22. UNSTABLE_RUSTDOC_TEST_LINE
    23. UNSTABLE_RUSTDOC_TEST_PATH
  3. Compiler flags
    1. allow_features
    2. annotate_moves
    3. autodiff
    4. branch_protection
    5. cf_protection
    6. codegen_backend
    7. codegen_options
    8. codegen_source_order
    9. control_flow_guard
    10. coverage_options
    11. crate_attr
    12. debug_info_for_profiling
    13. debug_info_type_line_numbers
    14. default_visibility
    15. direct_access_external_data
    16. dump_mono_stats
    17. dump_mono_stats_format
    18. dylib_lto
    19. eagerly_emit_delayed_bugs
    20. embed_metadata
    21. embed_source
    22. emit_stack_sizes
    23. emscripten_wasm_eh
    24. env_set
    25. export_executable_symbols
    26. extern_options
    27. external_clangrt
    28. fixed_x18
    29. fmt_debug
    30. function_return
    31. hint_mostly_unused
    32. indirect_branch_cs_prefix
    33. instrument_xray
    34. link_native_libraries
    35. lint_llvm_ir
    36. llvm_module_flag
    37. location_detail
    38. macro_stats
    39. min_function_alignment
    40. move_size_limit
    41. no_parallel_llvm
    42. no_steal_thir
    43. no_unique_section_names
    44. offload
    45. on_broken_pipe
    46. patchable_function_entry
    47. print_check_cfg
    48. print_crate_root_lint_levels
    49. print_supported_crate_types
    50. profile_sample_use
    51. randomize_layout
    52. reg_struct_return
    53. regparm
    54. remap_cwd_prefix
    55. remap_path_scope
    56. report_time
    57. sanitizer
    58. self_profile
    59. self_profile_events
    60. shell_argfiles
    61. small_data_threshold
    62. split_dwarf_out_dir
    63. src_hash_algorithm
    64. temps_dir
    65. terminal_urls
    66. tiny_const_eval_limit
    67. tls_model
    68. track_diagnostics
    69. treat_err_as_bug
    70. ub_checks
    71. unsound_mir_opts
    72. verbose_asm
    73. virtual_function_elimination
    74. wasm_c_abi
  4. Language features
    1. aarch64_unstable_target_feature
    2. aarch64_ver_target_feature
    3. abi_avr_interrupt
    4. abi_cmse_nonsecure_call
    5. abi_custom
    6. abi_gpu_kernel
    7. abi_msp430_interrupt
    8. abi_ptx
    9. abi_riscv_interrupt
    10. abi_unadjusted
    11. abi_vectorcall
    12. abi_x86_interrupt
    13. adt_const_params
    14. alloc_error_handler
    15. allocator_internals
    16. allow_internal_unsafe
    17. allow_internal_unstable
    18. anonymous_lifetime_in_impl_trait
    19. apx_target_feature
    20. arbitrary_self_types
    21. arbitrary_self_types_pointers
    22. arm_target_feature
    23. asm_experimental_arch
    24. asm_experimental_reg
    25. asm_goto_with_outputs
    26. asm_unwind
    27. associated_type_defaults
    28. async_drop
    29. async_fn_in_dyn_trait
    30. async_fn_track_caller
    31. async_for_loop
    32. async_trait_bounds
    33. auto_traits
    34. avx10_target_feature
    35. box_patterns
    36. bpf_target_feature
    37. builtin_syntax
    38. c_variadic
    39. c_variadic_naked_functions
    40. cfg_contract_checks
    41. cfg_emscripten_wasm_eh
    42. cfg_overflow_checks
    43. cfg_relocation_model
    44. cfg_sanitize
    45. cfg_sanitizer_cfi
    46. cfg_target_compact
    47. cfg_target_has_atomic
    48. cfg_target_has_atomic_equal_alignment
    49. cfg_target_has_reliable_f16_f128
    50. cfg_target_thread_local
    51. cfg_ub_checks
    52. cfg_version
    53. cfi_encoding
    54. closure_lifetime_binder
    55. closure_track_caller
    56. cmse_nonsecure_entry
    57. compiler_builtins
    58. const_async_blocks
    59. const_closures
    60. const_destruct
    61. const_for
    62. const_precise_live_drops
    63. const_trait_impl
    64. const_try
    65. contracts
    66. contracts_internals
    67. coroutine_clone
    68. coroutines
    69. coverage_attribute
    70. csky_target_feature
    71. custom_inner_attributes
    72. custom_mir
    73. custom_test_frameworks
    74. decl_macro
    75. default_field_values
    76. deprecated_safe
    77. deprecated_suggestion
    78. deref_patterns
    79. derive_from
    80. diagnostic_on_const
    81. doc_cfg
    82. doc_masked
    83. doc_notable_trait
    84. dropck_eyepatch
    85. effective_target_features
    86. eii_internals
    87. ergonomic_clones
    88. ermsb_target_feature
    89. exhaustive_patterns
    90. explicit_extern_abis
    91. explicit_tail_calls
    92. export_stable
    93. extern_item_impls
    94. extern_types
    95. f128
    96. f16
    97. ffi_const
    98. ffi_pure
    99. fmt_debug
    100. fn_align
    101. fn_delegation
    102. freeze_impls
    103. frontmatter
    104. fundamental
    105. gen_blocks
    106. generic_assert
    107. generic_const_exprs
    108. generic_const_items
    109. generic_const_parameter_types
    110. generic_pattern_types
    111. global_registration
    112. guard_patterns
    113. half_open_range_patterns_in_slices
    114. hexagon_target_feature
    115. if_let_guard
    116. impl_trait_in_assoc_type
    117. impl_trait_in_bindings
    118. impl_trait_in_fn_trait_return
    119. import_trait_associated_functions
    120. inherent_associated_types
    121. intra_doc_pointers
    122. intrinsics
    123. lahfsahf_target_feature
    124. lang_items
    125. large_assignments
    126. lazy_type_alias
    127. link_arg_attribute
    128. link_cfg
    129. link_llvm_intrinsics
    130. linkage
    131. loongarch_target_feature
    132. loop_match
    133. m68k_target_feature
    134. macro_attr
    135. macro_derive
    136. macro_metavar_expr
    137. macro_metavar_expr_concat
    138. marker_trait_attr
    139. min_generic_const_args
    140. min_specialization
    141. mips_target_feature
    142. more_maybe_bounds
    143. more_qualified_paths
    144. movrs_target_feature
    145. multiple_supertrait_upcastable
    146. must_not_suspend
    147. mut_ref
    148. naked_functions_rustic_abi
    149. naked_functions_target_feature
    150. native_link_modifiers_as_needed
    151. needs_panic_runtime
    152. negative_bounds
    153. negative_impls
    154. never_patterns
    155. never_type
    156. new_range
    157. no_core
    158. non_exhaustive_omitted_patterns_lint
    159. non_lifetime_binders
    160. nvptx_target_feature
    161. offset_of_enum
    162. offset_of_slice
    163. optimize_attribute
    164. panic_runtime
    165. patchable_function_entry
    166. pattern_complexity_limit
    167. pattern_types
    168. pin_ergonomics
    169. postfix_match
    170. powerpc_target_feature
    171. prelude_import
    172. prfchw_target_feature
    173. proc_macro_hygiene
    174. profiler_runtime
    175. raw_dylib_elf
    176. reborrow
    177. ref_pat_eat_one_layer_2024
    178. ref_pat_eat_one_layer_2024_structural
    179. register_tool
    180. repr_simd
    181. return_type_notation
    182. riscv_target_feature
    183. rtm_target_feature
    184. rust_cold_cc
    185. rustc_allow_const_fn_unstable
    186. rustc_attrs
    187. rustc_private
    188. rustdoc_internals
    189. rustdoc_missing_doc_code_examples
    190. s390x_target_feature
    191. sanitize
    192. simd_ffi
    193. sized_hierarchy
    194. sparc_target_feature
    195. specialization
    196. staged_api
    197. static_align
    198. stmt_expr_attributes
    199. strict_provenance_lints
    200. structural_match
    201. super_let
    202. supertrait_item_shadowing
    203. target_feature_inline_always
    204. test_unstable_lint
    205. thread_local
    206. trait_alias
    207. transmute_generic_consts
    208. transparent_unions
    209. trivial_bounds
    210. try_blocks
    211. try_blocks_heterogeneous
    212. type_alias_impl_trait
    213. type_changing_struct_update
    214. unboxed_closures
    215. unqualified_local_imports
    216. unsafe_binders
    217. unsafe_fields
    218. unsized_const_params
    219. unsized_fn_params
    220. used_with_arg
    221. wasm_target_feature
    222. where_clause_attrs
    223. with_negative_coherence
    224. x86_amx_intrinsics
    225. x87_target_feature
    226. xop_target_feature
    227. yeet_expr
    228. yield_expr
  5. Library Features
    1. abort_unwind
    2. acceptfilter
    3. addr_parse_ascii
    4. align_to_uninit_mut
    5. alloc_error_hook
    6. alloc_internals
    7. alloc_layout_extra
    8. alloc_slice_into_array
    9. allocator_api
    10. alloctests
    11. arc_is_unique
    12. array_into_iter_constructors
    13. array_ptr_get
    14. array_try_from_fn
    15. array_try_map
    16. ascii_char
    17. ascii_char_variants
    18. assert_matches
    19. async_fn_traits
    20. async_gen_internals
    21. async_iter_from_iter
    22. async_iterator
    23. atomic_from_mut
    24. atomic_internals
    25. atomic_ptr_null
    26. atomic_try_update
    27. autodiff
    28. backtrace_frames
    29. bigint_helper_methods
    30. bikeshed_guaranteed_no_drop
    31. binary_heap_drain_sorted
    32. binary_heap_into_iter_sorted
    33. binary_heap_peek_mut_refresh
    34. bool_to_result
    35. bound_as_ref
    36. bound_copied
    37. box_as_ptr
    38. box_into_boxed_slice
    39. box_into_inner
    40. box_take
    41. box_vec_non_null
    42. breakpoint
    43. bstr
    44. bstr_internals
    45. btree_cursors
    46. btree_set_entry
    47. btreemap_alloc
    48. buf_read_has_data_left
    49. bufreader_peek
    50. c_size_t
    51. c_void_variant
    52. can_vector
    53. cast_maybe_uninit
    54. cell_get_cloned
    55. cell_leak
    56. cfg_accessible
    57. cfg_eval
    58. cfg_select
    59. char_internals
    60. char_max_len
    61. clamp_magnitude
    62. clone_from_ref
    63. clone_to_uninit
    64. cmp_minmax
    65. coerce_pointee_validated
    66. coerce_unsized
    67. cold_path
    68. command_resolved_envs
    69. concat_bytes
    70. const_alloc_error
    71. const_array
    72. const_btree_len
    73. const_carrying_mul_add
    74. const_cell_traits
    75. const_clone
    76. const_cmp
    77. const_control_flow
    78. const_convert
    79. const_default
    80. const_drop_guard
    81. const_drop_in_place
    82. const_eval_select
    83. const_format_args
    84. const_heap
    85. const_index
    86. const_manually_drop_take
    87. const_never_short_circuit
    88. const_ops
    89. const_option_ops
    90. const_range
    91. const_range_bounds
    92. const_raw_ptr_comparison
    93. const_ref_cell
    94. const_result_trait_fn
    95. const_result_unwrap_unchecked
    96. const_select_unpredictable
    97. const_slice_from_mut_ptr_range
    98. const_slice_from_ptr_range
    99. const_slice_make_iter
    100. const_split_off_first_last
    101. const_swap_with_slice
    102. const_try_residual
    103. const_type_name
    104. container_error_extra
    105. context_ext
    106. control_flow_into_value
    107. control_flow_ok
    108. convert_float_to_int
    109. copied_into_inner
    110. core_float_math
    111. core_intrinsics
    112. core_intrinsics_fallbacks
    113. core_io_borrowed_buf
    114. core_private_bignum
    115. core_private_diy_float
    116. coroutine_trait
    117. cow_is_borrowed
    118. cstr_bytes
    119. cstr_display
    120. cstr_internals
    121. current_thread_id
    122. cursor_split
    123. darwin_objc
    124. deadline_api
    125. debug_closure_helpers
    126. dec2flt
    127. deque_extend_front
    128. deref_pure_trait
    129. derive_clone_copy_internals
    130. derive_coerce_pointee
    131. derive_const
    132. derive_eq_internals
    133. dir_entry_ext2
    134. dirfd
    135. dirhandle
    136. discriminant_kind
    137. disjoint_bitor
    138. dispatch_from_dyn
    139. downcast_unchecked
    140. drain_keep_rest
    141. drop_guard
    142. duration_constants
    143. duration_constructors
    144. duration_integer_division
    145. duration_millis_float
    146. duration_units
    147. edition_panic
    148. error_generic_member_access
    149. error_iter
    150. error_reporter
    151. error_type_id
    152. exact_bitshifts
    153. exact_div
    154. exact_size_is_empty
    155. exclusive_wrapper
    156. exit_status_error
    157. exitcode_exit_method
    158. extend_one
    159. extend_one_unchecked
    160. fd
    161. fd_read
    162. file_buffered
    163. float_algebraic
    164. float_erf
    165. float_gamma
    166. float_minimum_maximum
    167. flt2dec
    168. fmt_arguments_from_str
    169. fmt_helpers_for_derive
    170. fmt_internals
    171. fn_ptr_trait
    172. fn_traits
    173. forget_unsized
    174. format_args_nl
    175. formatting_options
    176. freeze
    177. fs_set_times
    178. funnel_shifts
    179. future_join
    180. gen_future
    181. generic_assert_internals
    182. generic_atomic
    183. get_disjoint_mut_helpers
    184. get_mut_unchecked
    185. gethostname
    186. gpu_intrinsics
    187. hash_set_entry
    188. hasher_prefixfree_extras
    189. hashmap_internals
    190. hint_must_use
    191. hint_prefetch
    192. inplace_iteration
    193. int_format_into
    194. int_from_ascii
    195. int_lowest_highest_one
    196. int_roundings
    197. integer_atomics
    198. internal_impls_macro
    199. internal_output_capture
    200. io_const_error
    201. io_const_error_internals
    202. io_error_inprogress
    203. io_error_more
    204. io_error_uncategorized
    205. io_slice_as_bytes
    206. ip
    207. ip_as_octets
    208. is_ascii_octdigit
    209. is_loongarch_feature_detected
    210. is_riscv_feature_detected
    211. isolate_most_least_significant_one
    212. iter_advance_by
    213. iter_array_chunks
    214. iter_collect_into
    215. iter_from_coroutine
    216. iter_intersperse
    217. iter_is_partitioned
    218. iter_macro
    219. iter_map_windows
    220. iter_next_chunk
    221. iter_order_by
    222. iter_partition_in_place
    223. iterator_try_collect
    224. iterator_try_reduce
    225. junction_point
    226. layout_for_ptr
    227. lazy_cell_into_inner
    228. legacy_receiver_trait
    229. liballoc_internals
    230. libstd_sys_internals
    231. likely_unlikely
    232. linked_list_cursors
    233. linked_list_remove
    234. linked_list_retain
    235. linux_pidfd
    236. local_key_cell_update
    237. local_waker
    238. lock_value_accessors
    239. log_syntax
    240. map_try_insert
    241. mapped_lock_guards
    242. maybe_dangling
    243. maybe_uninit_array_assume_init
    244. maybe_uninit_as_bytes
    245. maybe_uninit_fill
    246. maybe_uninit_uninit_array_transpose
    247. mem_conjure_zst
    248. mem_copy_fn
    249. min_const_control_flow
    250. more_float_constants
    251. motor_ext
    252. mpmc_channel
    253. mutex_data_ptr
    254. new_range_api
    255. next_index
    256. nonpoison_condvar
    257. nonpoison_mutex
    258. nonpoison_rwlock
    259. nonzero_bitwise
    260. nonzero_from_mut
    261. nonzero_internals
    262. nonzero_ops
    263. normalize_lexically
    264. numfmt
    265. objc_class_variant
    266. objc_selector_variant
    267. once_cell_get_mut
    268. once_cell_try
    269. once_cell_try_insert
    270. one_sided_range
    271. oneshot_channel
    272. option_array_transpose
    273. option_into_flat_iter
    274. option_reduce
    275. option_reference_flattening
    276. option_zip
    277. os_str_slice
    278. os_string_truncate
    279. panic_abort
    280. panic_always_abort
    281. panic_backtrace_config
    282. panic_can_unwind
    283. panic_internals
    284. panic_unwind
    285. panic_update_hook
    286. partial_ord_chaining_methods
    287. path_is_empty
    288. path_trailing_sep
    289. pattern
    290. pattern_type_macro
    291. pattern_type_range_trait
    292. peer_credentials_unix_socket
    293. phantom_variance_markers
    294. pin_coerce_unsized_trait
    295. pin_derefmut_internals
    296. pointer_is_aligned_to
    297. pointer_try_cast_aligned
    298. portable_simd
    299. prelude_future
    300. prelude_next
    301. print_internals
    302. proc_macro_def_site
    303. proc_macro_diagnostic
    304. proc_macro_expand
    305. proc_macro_internals
    306. proc_macro_quote
    307. proc_macro_span
    308. proc_macro_totokens
    309. proc_macro_tracked_env
    310. proc_macro_tracked_path
    311. proc_macro_value
    312. process_chroot
    313. process_exitcode_internals
    314. process_internals
    315. process_setsid
    316. profiler_runtime_lib
    317. profiling_marker_api
    318. ptr_alignment_type
    319. ptr_as_ref_unchecked
    320. ptr_as_uninit
    321. ptr_cast_array
    322. ptr_internals
    323. ptr_mask
    324. ptr_metadata
    325. pub_crate_should_not_need_unstable_attr
    326. push_mut
    327. random
    328. range_bounds_is_empty
    329. range_into_bounds
    330. raw_os_error_ty
    331. raw_slice_split
    332. raw_vec_internals
    333. read_array
    334. read_buf
    335. read_buf_at
    336. reentrant_lock
    337. reentrant_lock_data_ptr
    338. refcell_try_map
    339. restricted_std
    340. result_option_map_or_default
    341. rev_into_inner
    342. rt
    343. rwlock_data_ptr
    344. sealed
    345. seek_io_take_position
    346. seek_stream_len
    347. set_permissions_nofollow
    348. set_ptr_value
    349. setgroups
    350. sgx_platform
    351. sized_type_properties
    352. slice_concat_ext
    353. slice_concat_trait
    354. slice_from_ptr_range
    355. slice_index_methods
    356. slice_internals
    357. slice_iter_mut_as_mut_slice
    358. slice_partial_sort_unstable
    359. slice_partition_dedup
    360. slice_pattern
    361. slice_ptr_get
    362. slice_range
    363. slice_split_once
    364. slice_swap_unchecked
    365. sliceindex_wrappers
    366. smart_pointer_try_map
    367. solid_ext
    368. sort_floats
    369. split_array
    370. split_as_slice
    371. std_internals
    372. stdarch_aarch64_feature_detection
    373. stdarch_arm_feature_detection
    374. stdarch_internal
    375. stdarch_loongarch_feature_detection
    376. stdarch_mips_feature_detection
    377. stdarch_powerpc_feature_detection
    378. stdarch_riscv_feature_detection
    379. stdio_makes_pipe
    380. stdio_swap
    381. step_trait
    382. str_as_str
    383. str_from_raw_parts
    384. str_from_utf16_endian
    385. str_internals
    386. str_lines_remainder
    387. str_split_inclusive_remainder
    388. str_split_remainder
    389. str_split_whitespace_remainder
    390. string_from_utf8_lossy_owned
    391. string_into_chars
    392. string_remove_matches
    393. string_replace_in_place
    394. strip_circumfix
    395. substr_range
    396. sync_nonpoison
    397. sync_poison_mod
    398. sync_unsafe_cell
    399. tcp_deferaccept
    400. tcp_linger
    401. tcplistener_into_incoming
    402. temporary_niche_types
    403. test
    404. thin_box
    405. thread_id_value
    406. thread_local_internals
    407. thread_raw
    408. thread_sleep_until
    409. thread_spawn_hook
    410. time_systemtime_limits
    411. trace_macros
    412. transmutability
    413. trim_prefix_suffix
    414. trivial_clone
    415. trusted_fused
    416. trusted_len
    417. trusted_len_next_unchecked
    418. trusted_random_access
    419. trusted_step
    420. try_as_dyn
    421. try_find
    422. try_reserve_kind
    423. try_trait_v2
    424. try_trait_v2_residual
    425. try_trait_v2_yeet
    426. try_with_capacity
    427. tuple_trait
    428. type_ascription
    429. type_info
    430. ub_checks
    431. uefi_std
    432. uint_bit_width
    433. uint_gather_scatter_bits
    434. unicode_internals
    435. unique_rc_arc
    436. unix_file_vectored_at
    437. unix_mkfifo
    438. unix_send_signal
    439. unix_set_mark
    440. unix_socket_ancillary_data
    441. unix_socket_exclbind
    442. unix_socket_peek
    443. unsafe_cell_access
    444. unsafe_pinned
    445. unsize
    446. unwrap_infallible
    447. update_panic_count
    448. utf16_extra
    449. variant_count
    450. vec_deque_extract_if
    451. vec_deque_iter_as_slices
    452. vec_deque_truncate_front
    453. vec_from_fn
    454. vec_into_chunks
    455. vec_peek_mut
    456. vec_push_within_capacity
    457. vec_recycle
    458. vec_split_at_spare
    459. vec_try_remove
    460. waker_fn
    461. waker_from_fn_ptr
    462. wasi_ext
    463. windows_by_handle
    464. windows_c
    465. windows_change_time
    466. windows_freeze_file_times
    467. windows_handle
    468. windows_net
    469. windows_process_exit_code_from
    470. windows_process_extensions_async_pipes
    471. windows_process_extensions_force_quotes
    472. windows_process_extensions_inherit_handles
    473. windows_process_extensions_main_thread_handle
    474. windows_process_extensions_raw_attribute
    475. windows_process_extensions_show_window
    476. windows_process_extensions_startupinfo
    477. windows_stdio
    478. wrapping_int_impl
    479. wrapping_next_power_of_two
    480. write_all_vectored
    481. wtf8_internals
    482. yeet_desugar_details