1. The Unstable Book
  2. Compiler flags
    1. branch_protection
    2. cf_protection
    3. codegen_backend
    4. codegen_options
    5. control_flow_guard
    6. coverage_options
    7. debug_info_for_profiling
    8. default_visibility
    9. direct_access_external_data
    10. dump_mono_stats
    11. dump_mono_stats_format
    12. dwarf_version
    13. dylib_lto
    14. embed_source
    15. emit_stack_sizes
    16. env_set
    17. export_executable_symbols
    18. extern_options
    19. external_clangrt
    20. fixed_x18
    21. fmt_debug
    22. function_return
    23. instrument_xray
    24. link_native_libraries
    25. linker_features
    26. lint_llvm_ir
    27. llvm_module_flag
    28. location_detail
    29. move_size_limit
    30. no_jump_tables
    31. no_parallel_llvm
    32. no_unique_section_names
    33. on_broken_pipe
    34. patchable_function_entry
    35. print_check_cfg
    36. profile_sample_use
    37. regparm
    38. remap_cwd_prefix
    39. remap_path_scope
    40. report_time
    41. sanitizer
    42. self_profile
    43. self_profile_events
    44. shell_argfiles
    45. small_data_threshold
    46. src_hash_algorithm
    47. temps_dir
    48. tiny_const_eval_limit
    49. tls_model
    50. ub_checks
    51. unsound_mir_opts
    52. verbose_asm
    53. virtual_function_elimination
    54. wasm_c_abi
  3. Language features
    1. aarch64_unstable_target_feature
    2. aarch64_ver_target_feature
    3. abi_avr_interrupt
    4. abi_c_cmse_nonsecure_call
    5. abi_msp430_interrupt
    6. abi_ptx
    7. abi_riscv_interrupt
    8. abi_unadjusted
    9. abi_vectorcall
    10. abi_x86_interrupt
    11. adt_const_params
    12. alloc_error_handler
    13. allocator_internals
    14. allow_internal_unsafe
    15. allow_internal_unstable
    16. anonymous_lifetime_in_impl_trait
    17. arbitrary_self_types
    18. arbitrary_self_types_pointers
    19. arm_target_feature
    20. asm_experimental_arch
    21. asm_goto
    22. asm_unwind
    23. associated_const_equality
    24. associated_type_defaults
    25. async_closure
    26. async_fn_track_caller
    27. async_for_loop
    28. auto_traits
    29. avx512_target_feature
    30. box_patterns
    31. bpf_target_feature
    32. builtin_syntax
    33. c_variadic
    34. cfg_boolean_literals
    35. cfg_overflow_checks
    36. cfg_relocation_model
    37. cfg_sanitize
    38. cfg_sanitizer_cfi
    39. cfg_target_compact
    40. cfg_target_has_atomic
    41. cfg_target_has_atomic_equal_alignment
    42. cfg_target_thread_local
    43. cfg_ub_checks
    44. cfg_version
    45. cfi_encoding
    46. closure_lifetime_binder
    47. closure_track_caller
    48. cmse_nonsecure_entry
    49. compiler_builtins
    50. const_async_blocks
    51. const_closures
    52. const_for
    53. const_precise_live_drops
    54. const_trait_impl
    55. const_try
    56. coroutine_clone
    57. coroutines
    58. coverage_attribute
    59. csky_target_feature
    60. custom_inner_attributes
    61. custom_mir
    62. custom_test_frameworks
    63. decl_macro
    64. deprecated_safe
    65. deprecated_suggestion
    66. deref_patterns
    67. do_not_recommend
    68. doc_auto_cfg
    69. doc_cfg
    70. doc_cfg_hide
    71. doc_masked
    72. doc_notable_trait
    73. dropck_eyepatch
    74. dyn_compatible_for_dispatch
    75. dyn_star
    76. ermsb_target_feature
    77. exhaustive_patterns
    78. explicit_tail_calls
    79. extended_varargs_abi_support
    80. extern_types
    81. f128
    82. f16
    83. ffi_const
    84. ffi_pure
    85. fmt_debug
    86. fn_align
    87. fn_delegation
    88. freeze_impls
    89. fundamental
    90. gen_blocks
    91. generic_arg_infer
    92. generic_assert
    93. generic_associated_types_extended
    94. generic_const_exprs
    95. generic_const_items
    96. global_registration
    97. half_open_range_patterns_in_slices
    98. hexagon_target_feature
    99. if_let_guard
    100. impl_trait_in_assoc_type
    101. impl_trait_in_fn_trait_return
    102. inherent_associated_types
    103. inline_const_pat
    104. intra_doc_pointers
    105. intrinsics
    106. lahfsahf_target_feature
    107. lang_items
    108. large_assignments
    109. lazy_type_alias
    110. let_chains
    111. lifetime_capture_rules_2024
    112. link_arg_attribute
    113. link_cfg
    114. link_llvm_intrinsics
    115. linkage
    116. loongarch_target_feature
    117. macro_metavar_expr
    118. macro_metavar_expr_concat
    119. marker_trait_attr
    120. min_generic_const_args
    121. min_specialization
    122. mips_target_feature
    123. more_maybe_bounds
    124. more_qualified_paths
    125. multiple_supertrait_upcastable
    126. must_not_suspend
    127. mut_ref
    128. naked_functions
    129. native_link_modifiers_as_needed
    130. needs_panic_runtime
    131. negative_bounds
    132. negative_impls
    133. never_patterns
    134. never_type
    135. never_type_fallback
    136. no_core
    137. no_sanitize
    138. non_exhaustive_omitted_patterns_lint
    139. non_lifetime_binders
    140. offset_of_enum
    141. offset_of_slice
    142. omit_gdb_pretty_printer_section
    143. optimize_attribute
    144. panic_runtime
    145. patchable_function_entry
    146. pattern_complexity
    147. pattern_types
    148. pin_ergonomics
    149. postfix_match
    150. powerpc_target_feature
    151. precise_capturing_in_traits
    152. prelude_import
    153. prfchw_target_feature
    154. proc_macro_hygiene
    155. profiler_runtime
    156. ref_pat_eat_one_layer_2024
    157. ref_pat_eat_one_layer_2024_structural
    158. register_tool
    159. repr_simd
    160. repr128
    161. return_type_notation
    162. riscv_target_feature
    163. rtm_target_feature
    164. rust_cold_cc
    165. rustc_allow_const_fn_unstable
    166. rustc_attrs
    167. rustc_private
    168. rustdoc_internals
    169. rustdoc_missing_doc_code_examples
    170. s390x_target_feature
    171. sha512_sm_x86
    172. simd_ffi
    173. sparc_target_feature
    174. specialization
    175. sse4a_target_feature
    176. staged_api
    177. start
    178. stmt_expr_attributes
    179. strict_provenance_lints
    180. string_deref_patterns
    181. structural_match
    182. target_feature_11
    183. tbm_target_feature
    184. test_unstable_lint
    185. thread_local
    186. trait_alias
    187. trait_upcasting
    188. transmute_generic_consts
    189. transparent_unions
    190. trivial_bounds
    191. try_blocks
    192. type_alias_impl_trait
    193. type_changing_struct_update
    194. unboxed_closures
    195. unqualified_local_imports
    196. unsized_const_params
    197. unsized_fn_params
    198. unsized_locals
    199. unsized_tuple_coercion
    200. used_with_arg
    201. wasm_target_feature
    202. with_negative_coherence
    203. x86_amx_intrinsics
    204. xop_target_feature
    205. yeet_expr
  4. Library Features
    1. abort_unwind
    2. acceptfilter
    3. addr_parse_ascii
    4. alloc_error_hook
    5. alloc_internals
    6. alloc_layout_extra
    7. allocator_api
    8. anonymous_pipe
    9. array_chunks
    10. array_into_iter_constructors
    11. array_ptr_get
    12. array_repeat
    13. array_try_from_fn
    14. array_try_map
    15. array_windows
    16. as_array_of_cells
    17. ascii_char
    18. ascii_char_variants
    19. assert_matches
    20. async_drop
    21. async_fn_traits
    22. async_gen_internals
    23. async_iter_from_iter
    24. async_iterator
    25. atomic_from_mut
    26. autodiff
    27. backtrace_frames
    28. bigint_helper_methods
    29. binary_heap_drain_sorted
    30. binary_heap_into_iter_sorted
    31. bound_as_ref
    32. box_as_ptr
    33. box_into_boxed_slice
    34. box_into_inner
    35. box_uninit_write
    36. box_vec_non_null
    37. btree_cursors
    38. btree_extract_if
    39. btreemap_alloc
    40. buf_read_has_data_left
    41. bufreader_peek
    42. build_hasher_default_const_new
    43. c_size_t
    44. c_str_module
    45. c_void_variant
    46. can_vector
    47. cell_leak
    48. cell_update
    49. cfg_accessible
    50. cfg_eval
    51. cfg_match
    52. char_internals
    53. clone_to_uninit
    54. cmp_minmax
    55. coerce_unsized
    56. concat_bytes
    57. concat_idents
    58. const_align_of_val
    59. const_align_of_val_raw
    60. const_alloc_error
    61. const_alloc_layout
    62. const_array_each_ref
    63. const_binary_heap_new_in
    64. const_black_box
    65. const_box
    66. const_btree_len
    67. const_cell
    68. const_char_classify
    69. const_collections_with_hasher
    70. const_eq_ignore_ascii_case
    71. const_eval_select
    72. const_exact_div
    73. const_float_methods
    74. const_fmt_arguments_new
    75. const_format_args
    76. const_heap
    77. const_intrinsic_compare_bytes
    78. const_intrinsic_raw_eq
    79. const_is_char_boundary
    80. const_maybe_uninit_write
    81. const_mut_cursor
    82. const_nonnull_new
    83. const_pref_align_of
    84. const_ptr_sub_ptr
    85. const_range_bounds
    86. const_raw_ptr_comparison
    87. const_size_of_val
    88. const_size_of_val_raw
    89. const_slice_flatten
    90. const_slice_from_mut_ptr_range
    91. const_slice_from_ptr_range
    92. const_sockaddr_setters
    93. const_str_from_utf8
    94. const_str_split_at
    95. const_swap
    96. const_three_way_compare
    97. const_type_id
    98. const_type_name
    99. const_typed_swap
    100. const_ub_checks
    101. const_vec_string_slice
    102. container_error_extra
    103. context_ext
    104. convert_float_to_int
    105. core_intrinsics
    106. core_io_borrowed_buf
    107. core_pattern_type
    108. core_pattern_types
    109. core_private_bignum
    110. core_private_diy_float
    111. coroutine_trait
    112. cow_is_borrowed
    113. cstr_bytes
    114. cstr_internals
    115. cursor_split
    116. deadline_api
    117. debug_closure_helpers
    118. dec2flt
    119. deref_pure_trait
    120. derive_clone_copy
    121. derive_coerce_pointee
    122. derive_const
    123. derive_eq
    124. dir_entry_ext2
    125. discriminant_kind
    126. dispatch_from_dyn
    127. downcast_unchecked
    128. drain_keep_rest
    129. duration_constants
    130. duration_constructors
    131. duration_millis_float
    132. duration_units
    133. edition_panic
    134. error_generic_member_access
    135. error_iter
    136. error_reporter
    137. error_type_id
    138. exact_size_is_empty
    139. exclusive_wrapper
    140. exit_status_error
    141. exitcode_exit_method
    142. extend_one
    143. extend_one_unchecked
    144. extract_if
    145. fd
    146. fd_read
    147. file_buffered
    148. file_lock
    149. float_gamma
    150. float_minimum_maximum
    151. float_next_up_down
    152. flt2dec
    153. fmt_helpers_for_derive
    154. fmt_internals
    155. fn_ptr_trait
    156. fn_traits
    157. forget_unsized
    158. format_args_nl
    159. freeze
    160. future_join
    161. gen_future
    162. generic_assert_internals
    163. get_many_mut
    164. get_mut_unchecked
    165. hash_extract_if
    166. hash_raw_entry
    167. hash_set_entry
    168. hasher_prefixfree_extras
    169. hashmap_internals
    170. hint_must_use
    171. inplace_iteration
    172. int_roundings
    173. integer_atomics
    174. integer_sign_cast
    175. internal_impls_macro
    176. internal_output_capture
    177. io_error_inprogress
    178. io_error_more
    179. io_error_uncategorized
    180. io_slice_as_bytes
    181. ip
    182. ip_from
    183. is_ascii_octdigit
    184. is_loongarch_feature_detected
    185. is_riscv_feature_detected
    186. iter_advance_by
    187. iter_array_chunks
    188. iter_chain
    189. iter_collect_into
    190. iter_from_coroutine
    191. iter_intersperse
    192. iter_is_partitioned
    193. iter_map_windows
    194. iter_next_chunk
    195. iter_order_by
    196. iter_partition_in_place
    197. iterator_try_collect
    198. iterator_try_reduce
    199. junction_point
    200. layout_for_ptr
    201. lazy_cell_into_inner
    202. lazy_get
    203. legacy_receiver_trait
    204. liballoc_internals
    205. libstd_sys_internals
    206. linked_list_cursors
    207. linked_list_remove
    208. linked_list_retain
    209. linux_pidfd
    210. local_waker
    211. log_syntax
    212. map_many_mut
    213. map_try_insert
    214. mapped_lock_guards
    215. maybe_uninit_array_assume_init
    216. maybe_uninit_as_bytes
    217. maybe_uninit_fill
    218. maybe_uninit_slice
    219. maybe_uninit_uninit_array
    220. maybe_uninit_uninit_array_transpose
    221. maybe_uninit_write_slice
    222. mem_copy_fn
    223. mixed_integer_ops_unsigned_sub
    224. more_float_constants
    225. mpmc_channel
    226. new_range_api
    227. new_zeroed_alloc
    228. non_null_from_ref
    229. non_zero_count_ones
    230. nonzero_bitwise
    231. nonzero_from_mut
    232. nonzero_internals
    233. nonzero_ops
    234. noop_waker
    235. num_midpoint
    236. numfmt
    237. once_cell_get_mut
    238. once_cell_try
    239. once_cell_try_insert
    240. once_wait
    241. one_sided_range
    242. option_array_transpose
    243. option_zip
    244. os_str_display
    245. os_str_slice
    246. os_string_pathbuf_leak
    247. panic_abort
    248. panic_always_abort
    249. panic_backtrace_config
    250. panic_can_unwind
    251. panic_internals
    252. panic_payload_as_str
    253. panic_unwind
    254. panic_update_hook
    255. path_add_extension
    256. path_file_prefix
    257. pattern
    258. peer_credentials_unix_socket
    259. pin_coerce_unsized_trait
    260. pointer_is_aligned_to
    261. pointer_like_trait
    262. portable_simd
    263. prelude_2024
    264. print_internals
    265. proc_macro_def_site
    266. proc_macro_diagnostic
    267. proc_macro_expand
    268. proc_macro_internals
    269. proc_macro_quote
    270. proc_macro_span
    271. proc_macro_totokens
    272. proc_macro_tracked_env
    273. process_exitcode_internals
    274. process_internals
    275. profiler_runtime_lib
    276. ptr_alignment_type
    277. ptr_as_ref_unchecked
    278. ptr_as_uninit
    279. ptr_fn_addr_eq
    280. ptr_internals
    281. ptr_mask
    282. ptr_metadata
    283. ptr_sub_ptr
    284. pub_crate_should_not_need_unstable_attr
    285. random
    286. raw_os_error_ty
    287. raw_slice_split
    288. raw_vec_internals
    289. read_buf
    290. reentrant_lock
    291. restricted_std
    292. result_flattening
    293. round_char_boundary
    294. rt
    295. rustc_encodable_decodable
    296. rwlock_downgrade
    297. sealed
    298. seek_stream_len
    299. set_ptr_value
    300. setgroups
    301. sgx_platform
    302. sized_type_properties
    303. slice_as_chunks
    304. slice_concat_ext
    305. slice_concat_trait
    306. slice_from_ptr_range
    307. slice_index_methods
    308. slice_internals
    309. slice_iter_mut_as_mut_slice
    310. slice_partition_dedup
    311. slice_pattern
    312. slice_ptr_get
    313. slice_range
    314. slice_split_once
    315. slice_swap_unchecked
    316. slice_take
    317. solid_ext
    318. sort_floats
    319. split_array
    320. split_as_slice
    321. std_internals
    322. stdarch_arm_feature_detection
    323. stdarch_mips_feature_detection
    324. stdarch_powerpc_feature_detection
    325. stdio_makes_pipe
    326. step_trait
    327. str_as_str
    328. str_from_raw_parts
    329. str_from_utf16_endian
    330. str_internals
    331. str_lines_remainder
    332. str_split_inclusive_remainder
    333. str_split_remainder
    334. str_split_whitespace_remainder
    335. strict_overflow_ops
    336. strict_provenance_atomic_ptr
    337. string_extend_from_within
    338. string_from_utf8_lossy_owned
    339. string_remove_matches
    340. substr_range
    341. sync_unsafe_cell
    342. tcp_deferaccept
    343. tcp_linger
    344. tcp_quickack
    345. tcplistener_into_incoming
    346. test
    347. thin_box
    348. thread_id_value
    349. thread_local_internals
    350. thread_raw
    351. thread_sleep_until
    352. thread_spawn_hook
    353. trace_macros
    354. track_path
    355. transmutability
    356. trusted_fused
    357. trusted_len
    358. trusted_len_next_unchecked
    359. trusted_random_access
    360. trusted_step
    361. try_find
    362. try_reserve_kind
    363. try_trait_v2
    364. try_trait_v2_residual
    365. try_trait_v2_yeet
    366. try_with_capacity
    367. tuple_trait
    368. type_ascription
    369. ub_checks
    370. uefi_std
    371. unbounded_shifts
    372. unchecked_neg
    373. unchecked_shifts
    374. unicode_internals
    375. unique_rc_arc
    376. unix_file_vectored_at
    377. unix_set_mark
    378. unix_socket_ancillary_data
    379. unix_socket_peek
    380. unsafe_pin_internals
    381. unsigned_is_multiple_of
    382. unsigned_nonzero_div_ceil
    383. unsigned_signed_diff
    384. unsize
    385. unwrap_infallible
    386. update_panic_count
    387. utf16_extra
    388. variant_count
    389. vec_deque_iter_as_slices
    390. vec_into_raw_parts
    391. vec_pop_if
    392. vec_push_within_capacity
    393. vec_split_at_spare
    394. wasi_ext
    395. windows_by_handle
    396. windows_c
    397. windows_change_time
    398. windows_handle
    399. windows_net
    400. windows_process_exit_code_from
    401. windows_process_extensions_async_pipes
    402. windows_process_extensions_force_quotes
    403. windows_process_extensions_main_thread_handle
    404. windows_process_extensions_raw_attribute
    405. windows_process_extensions_show_window
    406. windows_stdio
    407. wrapping_int_impl
    408. wrapping_next_power_of_two
    409. write_all_vectored
    410. yeet_desugar_details