1. The Unstable Book
  2. 1. Compiler flags
    1. 1.1. codegen_backend
    2. 1.2. control_flow_guard
    3. 1.3. emit_stack_sizes
    4. 1.4. profile
    5. 1.5. report_time
    6. 1.6. sanitizer
    7. 1.7. self_profile
    8. 1.8. self_profile_events
    9. 1.9. src_hash_algorithm
    10. 1.10. strip
    11. 1.11. tls_model
    12. 1.12. unsound_mir_opts
  3. 2. Language features
    1. 2.1. aarch64_target_feature
    2. 2.2. abi_amdgpu_kernel
    3. 2.3. abi_avr_interrupt
    4. 2.4. abi_efiapi
    5. 2.5. abi_msp430_interrupt
    6. 2.6. abi_ptx
    7. 2.7. abi_thiscall
    8. 2.8. abi_unadjusted
    9. 2.9. abi_vectorcall
    10. 2.10. abi_x86_interrupt
    11. 2.11. adx_target_feature
    12. 2.12. alloc_error_handler
    13. 2.13. allocator_internals
    14. 2.14. allow_fail
    15. 2.15. allow_internal_unsafe
    16. 2.16. allow_internal_unstable
    17. 2.17. arbitrary_enum_discriminant
    18. 2.18. arbitrary_self_types
    19. 2.19. arm_target_feature
    20. 2.20. associated_type_bounds
    21. 2.21. associated_type_defaults
    22. 2.22. async_closure
    23. 2.23. avx512_target_feature
    24. 2.24. bindings_after_at
    25. 2.25. box_patterns
    26. 2.26. box_syntax
    27. 2.27. c_variadic
    28. 2.28. cfg_sanitize
    29. 2.29. cfg_target_has_atomic
    30. 2.30. cfg_target_thread_local
    31. 2.31. cfg_version
    32. 2.32. cmpxchg16b_target_feature
    33. 2.33. cmse_nonsecure_entry
    34. 2.34. compiler_builtins
    35. 2.35. const_eval_limit
    36. 2.36. const_evaluatable_checked
    37. 2.37. const_extern_fn
    38. 2.38. const_fn
    39. 2.39. const_fn_floating_point_arithmetic
    40. 2.40. const_fn_fn_ptr_basics
    41. 2.41. const_fn_transmute
    42. 2.42. const_fn_union
    43. 2.43. const_generics
    44. 2.44. const_impl_trait
    45. 2.45. const_in_array_repeat_expressions
    46. 2.46. const_mut_refs
    47. 2.47. const_panic
    48. 2.48. const_precise_live_drops
    49. 2.49. const_raw_ptr_deref
    50. 2.50. const_raw_ptr_to_usize_cast
    51. 2.51. const_trait_bound_opt_out
    52. 2.52. const_trait_impl
    53. 2.53. crate_visibility_modifier
    54. 2.54. custom_inner_attributes
    55. 2.55. custom_test_frameworks
    56. 2.56. decl_macro
    57. 2.57. default_alloc_error_handler
    58. 2.58. default_type_parameter_fallback
    59. 2.59. doc_cfg
    60. 2.60. doc_keyword
    61. 2.61. doc_masked
    62. 2.62. doc_spotlight
    63. 2.63. dropck_eyepatch
    64. 2.64. exclusive_range_pattern
    65. 2.65. exhaustive_patterns
    66. 2.66. extern_types
    67. 2.67. external_doc
    68. 2.68. f16c_target_feature
    69. 2.69. ffi_const
    70. 2.70. ffi_pure
    71. 2.71. ffi_returns_twice
    72. 2.72. format_args_capture
    73. 2.73. fundamental
    74. 2.74. generators
    75. 2.75. generic_associated_types
    76. 2.76. half_open_range_patterns
    77. 2.77. hexagon_target_feature
    78. 2.78. if_let_guard
    79. 2.79. impl_trait_in_bindings
    80. 2.80. in_band_lifetimes
    81. 2.81. infer_static_outlives_requirements
    82. 2.82. inline_const
    83. 2.83. intrinsics
    84. 2.84. isa_attribute
    85. 2.85. label_break_value
    86. 2.86. lang_items
    87. 2.87. lazy_normalization_consts
    88. 2.88. let_chains
    89. 2.89. link_args
    90. 2.90. link_cfg
    91. 2.91. link_llvm_intrinsics
    92. 2.92. linkage
    93. 2.93. lint_reasons
    94. 2.94. main
    95. 2.95. marker_trait_attr
    96. 2.96. member_constraints
    97. 2.97. min_const_generics
    98. 2.98. min_specialization
    99. 2.99. mips_target_feature
    100. 2.100. movbe_target_feature
    101. 2.101. naked_functions
    102. 2.102. needs_panic_runtime
    103. 2.103. negative_impls
    104. 2.104. never_type
    105. 2.105. never_type_fallback
    106. 2.106. nll
    107. 2.107. no_core
    108. 2.108. no_niche
    109. 2.109. no_sanitize
    110. 2.110. non_ascii_idents
    111. 2.111. object_safe_for_dispatch
    112. 2.112. omit_gdb_pretty_printer_section
    113. 2.113. optimize_attribute
    114. 2.114. optin_builtin_traits
    115. 2.115. or_patterns
    116. 2.116. panic_runtime
    117. 2.117. platform_intrinsics
    118. 2.118. plugin
    119. 2.119. plugin_registrar
    120. 2.120. powerpc_target_feature
    121. 2.121. precise_pointer_size_matching
    122. 2.122. prelude_import
    123. 2.123. proc_macro_hygiene
    124. 2.124. profiler_runtime
    125. 2.125. raw_dylib
    126. 2.126. raw_ref_op
    127. 2.127. register_attr
    128. 2.128. register_tool
    129. 2.129. repr_simd
    130. 2.130. repr128
    131. 2.131. riscv_target_feature
    132. 2.132. rtm_target_feature
    133. 2.133. rustc_attrs
    134. 2.134. rustc_private
    135. 2.135. simd_ffi
    136. 2.136. specialization
    137. 2.137. sse4a_target_feature
    138. 2.138. staged_api
    139. 2.139. start
    140. 2.140. static_nobundle
    141. 2.141. stmt_expr_attributes
    142. 2.142. structural_match
    143. 2.143. target_feature_11
    144. 2.144. tbm_target_feature
    145. 2.145. test_2018_feature
    146. 2.146. thread_local
    147. 2.147. trait_alias
    148. 2.148. transparent_unions
    149. 2.149. trivial_bounds
    150. 2.150. try_blocks
    151. 2.151. type_alias_impl_trait
    152. 2.152. type_ascription
    153. 2.153. unboxed_closures
    154. 2.154. unsafe_block_in_unsafe_fn
    155. 2.155. unsized_locals
    156. 2.156. unsized_tuple_coercion
    157. 2.157. untagged_unions
    158. 2.158. unwind_attributes
    159. 2.159. wasm_target_feature
  4. 3. Library Features
    1. 3.1. alloc_error_hook
    2. 3.2. alloc_internals
    3. 3.3. alloc_layout_extra
    4. 3.4. alloc_prelude
    5. 3.5. allocator_api
    6. 3.6. arc_mutate_strong_count
    7. 3.7. arc_new_cyclic
    8. 3.8. array_chunks
    9. 3.9. array_error_internals
    10. 3.10. array_from_ref
    11. 3.11. array_map
    12. 3.12. array_methods
    13. 3.13. array_value_iter
    14. 3.14. array_windows
    15. 3.15. asm
    16. 3.16. assoc_char_consts
    17. 3.17. assoc_char_funcs
    18. 3.18. atomic_from_mut
    19. 3.19. atomic_mut_ptr
    20. 3.20. available_concurrency
    21. 3.21. backtrace
    22. 3.22. binary_heap_drain_sorted
    23. 3.23. binary_heap_into_iter_sorted
    24. 3.24. binary_heap_retain
    25. 3.25. bool_to_option
    26. 3.26. bound_cloned
    27. 3.27. box_into_boxed_slice
    28. 3.28. box_into_pin
    29. 3.29. btree_drain_filter
    30. 3.30. bufreader_seek_relative
    31. 3.31. c_void_variant
    32. 3.32. can_vector
    33. 3.33. cell_leak
    34. 3.34. cell_update
    35. 3.35. cfg_accessible
    36. 3.36. char_error_internals
    37. 3.37. char_internals
    38. 3.38. clamp
    39. 3.39. cmp_min_max_by
    40. 3.40. coerce_unsized
    41. 3.41. command_access
    42. 3.42. concat_idents
    43. 3.43. const_align_of_val
    44. 3.44. const_alloc_layout
    45. 3.45. const_assume
    46. 3.46. const_btree_new
    47. 3.47. const_caller_location
    48. 3.48. const_checked_int_methods
    49. 3.49. const_cow_is_borrowed
    50. 3.50. const_cstr_unchecked
    51. 3.51. const_cttz
    52. 3.52. const_discriminant
    53. 3.53. const_euclidean_int_methods
    54. 3.54. const_float_bits_conv
    55. 3.55. const_float_classify
    56. 3.56. const_int_pow
    57. 3.57. const_int_unchecked_arith
    58. 3.58. const_ip
    59. 3.59. const_ipv4
    60. 3.60. const_ipv6
    61. 3.61. const_likely
    62. 3.62. const_maybe_uninit_as_ptr
    63. 3.63. const_nonnull_slice_from_raw_parts
    64. 3.64. const_option
    65. 3.65. const_overflowing_int_methods
    66. 3.66. const_pin
    67. 3.67. const_pref_align_of
    68. 3.68. const_ptr_is_null
    69. 3.69. const_ptr_offset
    70. 3.70. const_ptr_offset_from
    71. 3.71. const_raw_ptr_comparison
    72. 3.72. const_size_of_val
    73. 3.73. const_slice_from_raw_parts
    74. 3.74. const_slice_ptr_len
    75. 3.75. const_str_from_utf8_unchecked
    76. 3.76. const_type_id
    77. 3.77. const_type_name
    78. 3.78. const_unreachable_unchecked
    79. 3.79. const_wrapping_int_methods
    80. 3.80. constctlz
    81. 3.81. container_error_extra
    82. 3.82. control_flow_enum
    83. 3.83. convert_float_to_int
    84. 3.84. core_intrinsics
    85. 3.85. core_panic
    86. 3.86. core_private_bignum
    87. 3.87. core_private_diy_float
    88. 3.88. cow_is_borrowed
    89. 3.89. cstring_from_vec_with_nul
    90. 3.90. deadline_api
    91. 3.91. debug_non_exhaustive
    92. 3.92. dec2flt
    93. 3.93. default_free_fn
    94. 3.94. deque_range
    95. 3.95. derive_clone_copy
    96. 3.96. derive_eq
    97. 3.97. discriminant_kind
    98. 3.98. dispatch_from_dyn
    99. 3.99. div_duration
    100. 3.100. drain_filter
    101. 3.101. duration_constants
    102. 3.102. duration_consts_2
    103. 3.103. duration_saturating_ops
    104. 3.104. duration_zero
    105. 3.105. entry_insert
    106. 3.106. error_iter
    107. 3.107. error_type_id
    108. 3.108. exact_size_is_empty
    109. 3.109. extend_one
    110. 3.110. fd
    111. 3.111. fd_read
    112. 3.112. fixed_size_array
    113. 3.113. flt2dec
    114. 3.114. fmt_as_str
    115. 3.115. fmt_internals
    116. 3.116. fn_traits
    117. 3.117. foo
    118. 3.118. forget_unsized
    119. 3.119. format_args_nl
    120. 3.120. future_poll_fn
    121. 3.121. gen_future
    122. 3.122. generator_trait
    123. 3.123. get_mut_unchecked
    124. 3.124. global_asm
    125. 3.125. hash_drain_filter
    126. 3.126. hash_raw_entry
    127. 3.127. hash_set_entry
    128. 3.128. hashmap_internals
    129. 3.129. inplace_iteration
    130. 3.130. int_bits_const
    131. 3.131. int_error_internals
    132. 3.132. int_error_matching
    133. 3.133. integer_atomics
    134. 3.134. into_future
    135. 3.135. io_slice_advance
    136. 3.136. ip
    137. 3.137. is_sorted
    138. 3.138. iter_advance_by
    139. 3.139. iter_is_partitioned
    140. 3.140. iter_map_while
    141. 3.141. iter_order_by
    142. 3.142. iter_partition_in_place
    143. 3.143. iterator_fold_self
    144. 3.144. layout_for_ptr
    145. 3.145. liballoc_internals
    146. 3.146. libstd_io_internals
    147. 3.147. libstd_sys_internals
    148. 3.148. libstd_thread_internals
    149. 3.149. linked_list_cursors
    150. 3.150. linked_list_extras
    151. 3.151. linked_list_prepend
    152. 3.152. linked_list_remove
    153. 3.153. llvm_asm
    154. 3.154. log_syntax
    155. 3.155. map_entry_replace
    156. 3.156. map_first_last
    157. 3.157. map_into_keys_values
    158. 3.158. maybe_uninit_extra
    159. 3.159. maybe_uninit_ref
    160. 3.160. maybe_uninit_slice
    161. 3.161. maybe_uninit_uninit_array
    162. 3.162. new_uninit
    163. 3.163. nonnull_slice_from_raw_parts
    164. 3.164. num_as_ne_bytes
    165. 3.165. once_cell
    166. 3.166. once_poison
    167. 3.167. option_expect_none
    168. 3.168. option_result_contains
    169. 3.169. option_unwrap_none
    170. 3.170. option_zip
    171. 3.171. or_insert_with_key
    172. 3.172. osstring_ascii
    173. 3.173. panic_abort
    174. 3.174. panic_info_message
    175. 3.175. panic_internals
    176. 3.176. panic_unwind
    177. 3.177. partition_point
    178. 3.178. pattern
    179. 3.179. peekable_next_if
    180. 3.180. peer_credentials_unix_socket
    181. 3.181. poll_map
    182. 3.182. print_internals
    183. 3.183. proc_macro_def_site
    184. 3.184. proc_macro_diagnostic
    185. 3.185. proc_macro_internals
    186. 3.186. proc_macro_is_available
    187. 3.187. proc_macro_quote
    188. 3.188. proc_macro_span
    189. 3.189. proc_macro_tracked_env
    190. 3.190. process_exitcode_placeholder
    191. 3.191. process_internals
    192. 3.192. profiler_runtime_lib
    193. 3.193. ptr_as_uninit
    194. 3.194. ptr_internals
    195. 3.195. range_bounds_assert_len
    196. 3.196. raw
    197. 3.197. raw_ref_macros
    198. 3.198. raw_vec_internals
    199. 3.199. read_initializer
    200. 3.200. ready_macro
    201. 3.201. receiver_trait
    202. 3.202. refcell_take
    203. 3.203. renamed_spin_loop
    204. 3.204. result_cloned
    205. 3.205. result_contains_err
    206. 3.206. result_copied
    207. 3.207. result_flattening
    208. 3.208. rt
    209. 3.209. seek_convenience
    210. 3.210. set_ptr_value
    211. 3.211. set_stdio
    212. 3.212. sgx_platform
    213. 3.213. shrink_to
    214. 3.214. slice_concat_ext
    215. 3.215. slice_concat_trait
    216. 3.216. slice_fill
    217. 3.217. slice_index_methods
    218. 3.218. slice_internals
    219. 3.219. slice_iter_mut_as_slice
    220. 3.220. slice_partition_at_index
    221. 3.221. slice_partition_dedup
    222. 3.222. slice_ptr_get
    223. 3.223. slice_ptr_len
    224. 3.224. slice_split_at_unchecked
    225. 3.225. slice_strip
    226. 3.226. sort_internals
    227. 3.227. split_inclusive
    228. 3.228. std_internals
    229. 3.229. stdsimd
    230. 3.230. step_trait
    231. 3.231. step_trait_ext
    232. 3.232. str_internals
    233. 3.233. str_split_as_str
    234. 3.234. str_split_inclusive_as_str
    235. 3.235. str_split_once
    236. 3.236. string_drain_as_str
    237. 3.237. termination_trait_lib
    238. 3.238. test
    239. 3.239. thread_id_value
    240. 3.240. thread_local_internals
    241. 3.241. thread_spawn_unchecked
    242. 3.242. toowned_clone_into
    243. 3.243. total_cmp
    244. 3.244. trace_macros
    245. 3.245. trusted_len
    246. 3.246. trusted_random_access
    247. 3.247. try_find
    248. 3.248. try_reserve
    249. 3.249. try_trait
    250. 3.250. type_name_of_val
    251. 3.251. unchecked_math
    252. 3.252. unicode_internals
    253. 3.253. unix_socket_peek
    254. 3.254. unsafe_cell_get_mut
    255. 3.255. unsafe_cell_raw_get
    256. 3.256. unsigned_abs
    257. 3.257. unsize
    258. 3.258. unwrap_infallible
    259. 3.259. update_panic_count
    260. 3.260. variant_count
    261. 3.261. vec_into_raw_parts
    262. 3.262. vec_remove_item
    263. 3.263. vec_spare_capacity
    264. 3.264. vecdeque_binary_search
    265. 3.265. wake_trait
    266. 3.266. wasi_ext
    267. 3.267. windows_by_handle
    268. 3.268. windows_c
    269. 3.269. windows_file_type_ext
    270. 3.270. windows_handle
    271. 3.271. windows_net
    272. 3.272. windows_stdio
    273. 3.273. with_options
    274. 3.274. wrapping_int_impl
    275. 3.275. wrapping_next_power_of_two
    276. 3.276. write_all_vectored

The Rust Unstable Book

Library Features