rust/compiler
bors 4400d8fce7 Auto merge of #110204 - compiler-errors:new-solver-hir-typeck-hacks, r=lcnr
Deal with unnormalized projections when structurally resolving types with new solver

1. Normalize types in `structurally_resolved_type` when the new solver is enabled
2. Normalize built-in autoderef targets in `Autoderef` when the new solver is enabled
3. Normalize-erasing-regions in `resolve_type` in writeback

This is motivated by the UI test provided, which currently fails with:

```
error[E0609]: no field `x` on type `<usize as SliceIndex<[Foo]>>::Output`
 --> <source>:9:11
  |
9 |     xs[0].x = 1;
  |           ^
```

 I'm pretty happy with the approach in (1.) and (2.) and think we'll inevitably need something like this in the long-term, but (3.) seems like a hack to me. It's a *lot* of work to add tons of new calls to every user of these typeck results though (mir build, late lints, etc). Happy to discuss further.

r? `@lcnr`
2023-05-23 04:41:44 +00:00
..
rustc
rustc_abi
rustc_apfloat
rustc_arena
rustc_ast
rustc_ast_lowering
rustc_ast_passes
rustc_ast_pretty
rustc_attr
rustc_baked_icu_data
rustc_borrowck
rustc_builtin_macros Rollup merge of #111054 - cjgillot:cfg-eval-recover, r=b-naber 2023-05-18 17:37:08 +05:30
rustc_codegen_cranelift Rollup merge of #111633 - nnethercote:avoid-ref-format, r=WaffleLapkin 2023-05-18 10:52:35 +05:30
rustc_codegen_gcc
rustc_codegen_llvm Auto merge of #111413 - workingjubilee:bump-object-0-31-1, r=MarkSimulacrum 2023-05-20 13:19:37 +00:00
rustc_codegen_ssa Auto merge of #111675 - Urgau:fix-local-libs-for-native-static-libs, r=bjorn3 2023-05-21 01:12:45 +00:00
rustc_const_eval
rustc_data_structures Auto merge of #111596 - cjgillot:dominator-bucket, r=Mark-Simulacrum 2023-05-20 07:41:15 +00:00
rustc_driver
rustc_driver_impl Rollup merge of #111606 - jyn514:nightly-diagnostics, r=lcnr 2023-05-20 12:20:59 +05:30
rustc_error_codes
rustc_error_messages
rustc_errors Rollup merge of #111745 - Badel2:emitter-add-overflow, r=compiler-errors 2023-05-21 16:02:59 +02:00
rustc_expand fix: emit error when fragment is MethodReceiverExpr and items is empty 2023-05-19 21:21:05 +08:00
rustc_feature
rustc_fluent_macro
rustc_fs_util
rustc_graphviz
rustc_hir Auto merge of #111345 - jyn514:cfg-release-caching, r=cjgillot,est31 2023-05-18 21:45:02 +00:00
rustc_hir_analysis Structurally normalize in the new solver 2023-05-22 21:18:20 +00:00
rustc_hir_pretty
rustc_hir_typeck Structurally normalize in the new solver 2023-05-22 21:18:20 +00:00
rustc_incremental
rustc_index
rustc_infer Rollup merge of #111450 - compiler-errors:opaque-ty-key, r=oli-obk 2023-05-20 15:37:23 +02:00
rustc_interface Auto merge of #111641 - michaelwoerister:debugger-visualizer-fixes, r=cjgillot 2023-05-19 11:30:44 +00:00
rustc_lexer
rustc_lint Rename forget_ref lint to forgetting_references 2023-05-21 14:28:09 +02:00
rustc_lint_defs
rustc_llvm
rustc_log
rustc_macros Merge query property modules into one 2023-05-18 09:45:12 +02:00
rustc_metadata Auto merge of #111641 - michaelwoerister:debugger-visualizer-fixes, r=cjgillot 2023-05-19 11:30:44 +00:00
rustc_middle Auto merge of #111848 - Dylan-DPC:rollup-7jqydzg, r=Dylan-DPC 2023-05-22 20:33:51 +00:00
rustc_mir_build Rollup merge of #111501 - WaffleLapkin:drivebycleanupuwu, r=oli-obk 2023-05-23 00:32:17 +05:30
rustc_mir_dataflow
rustc_mir_transform Rollup merge of #111501 - WaffleLapkin:drivebycleanupuwu, r=oli-obk 2023-05-23 00:32:17 +05:30
rustc_monomorphize Improve CGU partitioning debug output. 2023-05-19 08:48:28 +10:00
rustc_parse Rollup merge of #111708 - jyn514:delay-span-bug-msg, r=compiler-errors 2023-05-20 12:21:00 +05:30
rustc_parse_format
rustc_passes
rustc_plugin_impl
rustc_privacy
rustc_query_impl Add comment 2023-05-21 11:25:07 +02:00
rustc_query_system
rustc_resolve Rollup merge of #111652 - clubby789:self-import-improvement, r=compiler-errors 2023-05-20 12:21:00 +05:30
rustc_serialize
rustc_session Rollup merge of #111606 - jyn514:nightly-diagnostics, r=lcnr 2023-05-20 12:20:59 +05:30
rustc_smir
rustc_span Auto merge of #111641 - michaelwoerister:debugger-visualizer-fixes, r=cjgillot 2023-05-19 11:30:44 +00:00
rustc_symbol_mangling Auto merge of #111697 - rcvalle:rust-cfi-fix-111510, r=bjorn3 2023-05-21 06:42:05 +00:00
rustc_target
rustc_trait_selection Auto merge of #110204 - compiler-errors:new-solver-hir-typeck-hacks, r=lcnr 2023-05-23 04:41:44 +00:00
rustc_traits
rustc_transmute
rustc_ty_utils
rustc_type_ir