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