rust/compiler
Matthias Krüger cd5eb6a896
Rollup merge of #120031 - compiler-errors:construct-closure-ty-eagerly, r=oli-obk
Construct closure type eagerly

Construct the returned closure type *before* checking the body, in the same match as we were previously deducing the coroutine types based off of the closure kind.

This simplifies some changes I'm doing in the async closure PR, and imo just seems easier to read (since we only need one match on closure kind, instead of two). There's no reason I can tell that we needed to create the closure type *after* the body was checked.

~~This also has the side-effect of making it so that the universe of the closure synthetic infer vars are lower than any infer vars that come from checking the body. We can also get rid of `next_root_ty_var` hack from closure checking (though in general we still need this, #119106). cc ```@lcnr``` since you may care about this hack 😆~~

r? ```@oli-obk```
2024-01-17 20:21:22 +01:00
..
rustc
rustc_abi Avoid specialization for the Span Encodable and Decodable impls 2023-12-31 20:42:17 +00:00
rustc_arena rustc_arena: add alloc_str 2023-12-05 17:52:51 -08:00
rustc_ast Delegation implementation: step 1 2024-01-12 14:11:16 +03:00
rustc_ast_lowering Add check for ui_testing via promoting parameters from ParseSess to Session 2024-01-13 12:11:13 -05:00
rustc_ast_passes Auto merge of #119088 - George-lewis:glewis/suggest-upgrading-compiler, r=Nilstrieb 2024-01-13 20:06:03 +00:00
rustc_ast_pretty Delegation implementation: step 1 2024-01-12 14:11:16 +03:00
rustc_attr Add check for ui_testing via promoting parameters from ParseSess to Session 2024-01-13 12:11:13 -05:00
rustc_baked_icu_data Bump cfg(bootstrap)s 2023-11-15 19:41:28 -05:00
rustc_borrowck Rollup merge of #115291 - cjgillot:dest-prop-save, r=JakobDegen 2024-01-17 20:21:19 +01:00
rustc_builtin_macros Add check for ui_testing via promoting parameters from ParseSess to Session 2024-01-13 12:11:13 -05:00
rustc_codegen_cranelift compiler: Lower fn call arg spans down to MIR 2024-01-15 19:07:11 +01:00
rustc_codegen_gcc Rename {create,emit}_warning as {create,emit}_warn. 2024-01-10 07:33:06 +11:00
rustc_codegen_llvm Update measureme crate to version 11 2024-01-13 16:32:03 +01:00
rustc_codegen_ssa Auto merge of #119922 - nnethercote:fix-Diag-code-is_lint, r=oli-obk 2024-01-17 07:33:52 +00:00
rustc_const_eval compiler: Lower fn call arg spans down to MIR 2024-01-15 19:07:11 +01:00
rustc_data_structures Update measureme crate to version 11 2024-01-13 16:32:03 +01:00
rustc_driver Bump cfg(bootstrap)s 2023-11-15 19:41:28 -05:00
rustc_driver_impl Replace TrimmedDefPaths with a bool. 2024-01-15 09:16:14 +11:00
rustc_error_codes Add error code for missing base expression in struct update syntax 2024-01-09 19:25:54 +00:00
rustc_error_messages Remove rustc_error_messages/messages.ftl. 2023-11-26 08:37:27 +11:00
rustc_errors Rework how diagnostic lints are stored. 2024-01-14 14:04:25 +11:00
rustc_expand Add check for ui_testing via promoting parameters from ParseSess to Session 2024-01-13 12:11:13 -05:00
rustc_feature Rollup merge of #119866 - smoelius:patch-2, r=compiler-errors 2024-01-12 08:23:59 +01:00
rustc_fluent_macro annotate-snippets: update to 0.10 2024-01-07 16:53:32 +03:00
rustc_fs_util
rustc_graphviz remove unused pub fn 2023-11-23 14:11:02 +03:00
rustc_hir Auto merge of #119361 - sjwang05:issue-119352, r=WaffleLapkin 2024-01-14 09:39:03 +00:00
rustc_hir_analysis Rollup merge of #119975 - lukas-code:inferring-return-types-and-opaque-types-do-mix-sometimes, r=compiler-errors 2024-01-17 20:21:20 +01:00
rustc_hir_pretty Delegation implementation: step 1 2024-01-12 14:11:16 +03:00
rustc_hir_typeck Rollup merge of #120031 - compiler-errors:construct-closure-ty-eagerly, r=oli-obk 2024-01-17 20:21:22 +01:00
rustc_incremental Rename {create,emit}_warning as {create,emit}_warn. 2024-01-10 07:33:06 +11:00
rustc_index Auto merge of #119499 - cjgillot:dtm-opt, r=nnethercote 2024-01-06 11:54:15 +00:00
rustc_index_macros Rollup merge of #119963 - clubby789:spec-allow-internal-unstable, r=compiler-errors 2024-01-15 08:44:49 +01:00
rustc_infer Auto merge of #119922 - nnethercote:fix-Diag-code-is_lint, r=oli-obk 2024-01-17 07:33:52 +00:00
rustc_interface Add way to express no-values with check-cfg 2024-01-13 17:19:46 +01:00
rustc_lexer Rename some unescaping functions. 2023-12-13 14:17:50 +11:00
rustc_lint Auto merge of #119930 - Urgau:check-cfg-empty-values-means-empty, r=petrochenkov 2024-01-17 14:01:05 +00:00
rustc_lint_defs Rollup merge of #117556 - obeis:static-mut-ref-lint, r=davidtwco 2024-01-09 13:23:15 +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 Rework how diagnostic lints are stored. 2024-01-14 14:04:25 +11:00
rustc_metadata Auto merge of #119088 - George-lewis:glewis/suggest-upgrading-compiler, r=Nilstrieb 2024-01-13 20:06:03 +00:00
rustc_middle Auto merge of #119111 - michaelwoerister:measureme-11, r=Mark-Simulacrum 2024-01-17 09:32:03 +00:00
rustc_mir_build Auto merge of #116520 - Enselic:large-copy-into-fn, r=oli-obk 2024-01-16 19:33:14 +00:00
rustc_mir_dataflow Rollup merge of #115291 - cjgillot:dest-prop-save, r=JakobDegen 2024-01-17 20:21:19 +01:00
rustc_mir_transform Rollup merge of #115291 - cjgillot:dest-prop-save, r=JakobDegen 2024-01-17 20:21:19 +01:00
rustc_monomorphize large_assignments: Lint on specific large args passed to functions 2024-01-15 19:07:12 +01:00
rustc_next_trait_solver Remove movability from TyKind::Coroutine 2023-12-28 16:35:01 +00:00
rustc_parse Auto merge of #119341 - sjwang05:issue-58462, r=WaffleLapkin 2024-01-14 04:37:45 +00:00
rustc_parse_format Removing redudant note from parse error 2024-01-08 19:41:01 +01:00
rustc_passes Rollup merge of #120020 - oli-obk:long_const_eval_err_taint, r=compiler-errors 2024-01-17 20:21:21 +01:00
rustc_pattern_analysis Remove the unused overlapping_range_endpoints Vec 2024-01-15 19:27:06 +01:00
rustc_privacy Remove Session methods that duplicate DiagCtxt methods. 2023-12-24 08:05:28 +11:00
rustc_query_impl Update measureme crate to version 11 2024-01-13 16:32:03 +01:00
rustc_query_system Auto merge of #119977 - Mark-Simulacrum:defid-cache, r=cjgillot 2024-01-16 21:58:10 +00:00
rustc_resolve Auto merge of #119922 - nnethercote:fix-Diag-code-is_lint, r=oli-obk 2024-01-17 07:33:52 +00:00
rustc_serialize Remove more needless leb128 coding for enum variants 2024-01-09 20:08:44 -05:00
rustc_session Auto merge of #119922 - nnethercote:fix-Diag-code-is_lint, r=oli-obk 2024-01-17 07:33:52 +00:00
rustc_smir compiler: Lower fn call arg spans down to MIR 2024-01-15 19:07:11 +01:00
rustc_span compiler: Lower fn call arg spans down to MIR 2024-01-15 19:07:11 +01:00
rustc_symbol_mangling Rename consuming chaining methods on DiagnosticBuilder. 2024-01-10 07:40:00 +11:00
rustc_target Rollup merge of #119855 - rellerreller:freebsd-static, r=wesleywiser 2024-01-17 20:21:19 +01:00
rustc_trait_selection Auto merge of #120019 - lcnr:fn-wf, r=BoxyUwU 2024-01-17 02:35:06 +00:00
rustc_traits Remove redundant Code from FulfillmentErrorCode variants 2024-01-12 16:34:39 +00:00
rustc_transmute Fix an ICE that occurs after an error has already been reported 2024-01-09 16:09:30 +00:00
rustc_ty_utils Rollup merge of #119969 - compiler-errors:simplify-closure-env-ty, r=oli-obk 2024-01-16 17:55:23 +01:00
rustc_type_ir Fix tidy error 2023-12-31 20:58:36 +00:00
stable_mir Rollup merge of #119877 - celinval:smir-visit-projection, r=oli-obk 2024-01-12 15:16:57 +01:00