rust/compiler
bors f3b9d47a46 Auto merge of #120392 - compiler-errors:async-bound-modifier, r=davidtwco,fmease
Introduce support for `async` bound modifier on `Fn*` traits

Adds `async` to the list of `TraitBoundModifiers`, which instructs AST lowering to map the trait to an async flavor of the trait. For now, this is only supported for `Fn*` to `AsyncFn*`, and I expect that this manual mapping via lang items will be replaced with a better system in the future.

The motivation for adding these bounds is to separate the users of async closures from the exact trait desugaring of their callable bounds. Instead of users needing to be concerned with the `AsyncFn` trait, they should be able to write `async Fn()` and it will desugar to whatever underlying trait we decide is best for the lowering of async closures.

Note: rustfmt support can be done in the rustfmt repo after a subtree sync.
2024-02-06 00:45:11 +00:00
..
rustc Clean up rustc_*/Cargo.toml. 2023-10-30 08:46:02 +11:00
rustc_abi Fix rustc_abi build on stable 2024-01-16 21:15:31 +01:00
rustc_arena Fix Stable trait and its impls to work with the new with_tables 2024-01-19 09:42:51 +00:00
rustc_ast Add async bound modifier to enable async Fn bounds 2024-01-31 16:59:19 +00:00
rustc_ast_lowering Auto merge of #120392 - compiler-errors:async-bound-modifier, r=davidtwco,fmease 2024-02-06 00:45:11 +00:00
rustc_ast_passes Correctly check never_type feature gating 2024-02-01 20:01:04 +01:00
rustc_ast_pretty Add async bound modifier to enable async Fn bounds 2024-01-31 16:59:19 +00:00
rustc_attr Stop using String for error codes. 2024-01-29 07:41:41 +11:00
rustc_baked_icu_data Bump cfg(bootstrap)s 2023-11-15 19:41:28 -05:00
rustc_borrowck Rollup merge of #120592 - trevyn:cleanup-to-string, r=Nilstrieb 2024-02-03 21:29:43 +01:00
rustc_builtin_macros Rollup merge of #120342 - oli-obk:track_errors6, r=nnethercote 2024-01-30 16:57:49 +01:00
rustc_codegen_cranelift Auto merge of #117372 - Amanieu:stdarch_update, r=Mark-Simulacrum 2024-02-05 15:41:40 +00:00
rustc_codegen_gcc Rollup merge of #119543 - usamoi:avx512fp16, r=oli-obk 2024-02-03 21:29:40 +01:00
rustc_codegen_llvm Auto merge of #120624 - matthiaskrgr:rollup-3gvcl20, r=matthiaskrgr 2024-02-04 20:51:28 +00:00
rustc_codegen_ssa Use DiagnosticArgName in a few more places. 2024-02-03 09:02:50 +11:00
rustc_const_eval Rollup merge of #120587 - lukas-code:miri-tail-normalize, r=RalfJung 2024-02-05 06:37:16 +01:00
rustc_data_structures Rollup merge of #119600 - aDotInTheVoid:comment-fix, r=compiler-errors 2024-02-05 06:37:14 +01:00
rustc_driver Bump cfg(bootstrap)s 2023-11-15 19:41:28 -05:00
rustc_driver_impl Stop using String for error codes. 2024-01-29 07:41:41 +11:00
rustc_error_codes Rollup merge of #119600 - aDotInTheVoid:comment-fix, r=compiler-errors 2024-02-05 06:37:14 +01:00
rustc_error_messages Remove unused features 2024-01-25 14:01:33 +00:00
rustc_errors Rollup merge of #119600 - aDotInTheVoid:comment-fix, r=compiler-errors 2024-02-05 06:37:14 +01:00
rustc_expand Add async bound modifier to enable async Fn bounds 2024-01-31 16:59:19 +00:00
rustc_feature #![feature(inline_const_pat)] is no longer incomplete 2024-02-01 10:27:54 +00:00
rustc_fluent_macro annotate-snippets: update to 0.10 2024-01-07 16:53:32 +03:00
rustc_fs_util Clean up rustc_*/Cargo.toml. 2023-10-30 08:46:02 +11:00
rustc_graphviz remove unused pub fn 2023-11-23 14:11:02 +03:00
rustc_hir hir: Remove the generic type parameter from MaybeOwned 2024-02-03 15:50:14 +03:00
rustc_hir_analysis Auto merge of #120649 - matthiaskrgr:rollup-ek80j61, r=matthiaskrgr 2024-02-04 22:55:40 +00:00
rustc_hir_pretty hir: Use InferArg in ArrayLen::Infer 2024-01-28 02:04:39 +03:00
rustc_hir_typeck Auto merge of #120649 - matthiaskrgr:rollup-ek80j61, r=matthiaskrgr 2024-02-04 22:55:40 +00:00
rustc_incremental hir: Simplify hir_owner_nodes query 2024-01-30 15:00:52 +03:00
rustc_index Auto merge of #120024 - Mark-Simulacrum:fast-union-merge, r=cjgillot 2024-01-27 22:26:37 +00:00
rustc_index_macros Restrict access to the private field of newtype indexes 2024-01-19 15:38:47 +00:00
rustc_infer Diagnostic cleanups 2024-02-03 09:02:50 +11:00
rustc_interface SilentEmitter::fatal_note doesn't need to be optional. 2024-02-03 09:02:50 +11:00
rustc_lexer Use unescape_unicode for raw C string literals. 2024-01-25 12:28:11 +11:00
rustc_lint Rollup merge of #116284 - RalfJung:no-nan-match, r=cjgillot 2024-02-05 11:07:26 +01:00
rustc_lint_defs remove illegal_floating_point_literal_pattern lint 2024-01-26 17:25:02 +01:00
rustc_llvm Revert "Auto merge of #113923 - DianQK:restore-no-builtins-lto, r=pnkfelix" 2024-01-12 18:23:04 +08:00
rustc_log rustc_log: provide a way to init logging based on the values, not names, of the env vars 2023-11-11 15:24:33 +01:00
rustc_macros Rollup merge of #120475 - Nilstrieb:cargo-build-my-a-, r=michaelwoerister 2024-01-30 16:57:50 +01:00
rustc_metadata Remove the lifetime from DiagnosticArgValue. 2024-01-30 18:46:06 +11:00
rustc_middle Rollup merge of #116284 - RalfJung:no-nan-match, r=cjgillot 2024-02-05 11:07:26 +01:00
rustc_mir_build Rollup merge of #116284 - RalfJung:no-nan-match, r=cjgillot 2024-02-05 11:07:26 +01:00
rustc_mir_dataflow Remove unused features 2024-01-25 14:01:33 +00:00
rustc_mir_transform coverage: Make fn_sig_span optional, and note its quirks 2024-02-05 10:09:50 +11:00
rustc_monomorphize Remove unused features 2024-01-25 14:01:33 +00:00
rustc_next_trait_solver Remove movability from TyKind::Coroutine 2023-12-28 16:35:01 +00:00
rustc_parse Auto merge of #120392 - compiler-errors:async-bound-modifier, r=davidtwco,fmease 2024-02-06 00:45:11 +00:00
rustc_parse_format Rename the unescaping functions. 2024-01-25 12:28:11 +11:00
rustc_passes Rollup merge of #120616 - fmease:fix-ice-const-eval-fail-undef-field-access, r=compiler-errors 2024-02-03 21:29:45 +01:00
rustc_pattern_analysis Auto merge of #120313 - Nadrieril:graceful-error, r=compiler-errors 2024-02-05 21:36:25 +00:00
rustc_privacy Stop using String for error codes. 2024-01-29 07:41:41 +11:00
rustc_query_impl Remove unused features 2024-01-25 14:01:33 +00:00
rustc_query_system Stop using String for error codes. 2024-01-29 07:41:41 +11:00
rustc_resolve Rollup merge of #120592 - trevyn:cleanup-to-string, r=Nilstrieb 2024-02-03 21:29:43 +01:00
rustc_serialize Remove unused features 2024-01-25 14:01:33 +00:00
rustc_session Simplify future breakage control flow. 2024-02-03 09:02:50 +11:00
rustc_smir Remove the abi_amdgpu_kernel feature 2024-01-30 15:46:40 +00:00
rustc_span Add async bound modifier to enable async Fn bounds 2024-01-31 16:59:19 +00:00
rustc_symbol_mangling Auto merge of #118636 - h1467792822:dev, r=michaelwoerister 2024-01-27 02:32:30 +00:00
rustc_target Rollup merge of #120661 - xen0n:loong-medium-cmodel, r=heiher,Nilstrieb 2024-02-05 11:07:28 +01:00
rustc_trait_selection Auto merge of #120649 - matthiaskrgr:rollup-ek80j61, r=matthiaskrgr 2024-02-04 22:55:40 +00:00
rustc_traits Remove unused features 2024-01-25 14:01:33 +00:00
rustc_transmute Remove unused features 2024-01-25 14:01:33 +00:00
rustc_ty_utils Remove the abi_amdgpu_kernel feature 2024-01-30 15:46:40 +00:00
rustc_type_ir Restrict access to the private field of newtype indexes 2024-01-19 15:38:47 +00:00
stable_mir Remove the abi_amdgpu_kernel feature 2024-01-30 15:46:40 +00:00