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