granite-rust/compiler
Matthias Krüger 2428083558
Rollup merge of #108839 - compiler-errors:canonicalize-the-root-var, r=lcnr
Canonicalize root var when making response from new solver

During trait solving, if we equate two inference variables `?0` and `?1` but don't equate them with any rigid types, then `InferCtxt::probe_ty_var` will return `Err` for both of these. The canonicalizer code will then canonicalize the variables independently(!), and the response will not reflect the fact that these two variables have been made equal.

This hinders inference and I also don't think it's sound? I haven't thought too much about it past that, so let's talk about it.

r? ``@lcnr``
2023-03-08 21:26:51 +01:00
..
rustc Add a new rustc_driver dylib to rexport rustc_driver_impl 2023-02-02 07:34:41 +01:00
rustc_abi Unify validity checks into a single query 2023-02-23 18:42:36 +00:00
rustc_apfloat compiler: remove unnecessary imports and qualified paths 2022-12-10 18:45:34 +01:00
rustc_arena compiler: remove unnecessary imports and qualified paths 2022-12-10 18:45:34 +01:00
rustc_ast Match unmatched backticks in comments in compiler/ 2023-03-03 08:39:00 +01:00
rustc_ast_lowering Auto merge of #108351 - petrochenkov:rmdit, r=cjgillot 2023-03-05 10:37:02 +00:00
rustc_ast_passes Remove allow(potential_query_instability) from ast_passes 2023-03-04 12:39:54 +00:00
rustc_ast_pretty Use ThinVec in various AST types. 2023-02-21 11:51:56 +11:00
rustc_attr errors: generate typed identifiers in each crate 2023-02-22 09:15:53 +00:00
rustc_baked_icu_data update ICU4X to 1.1.0 2023-02-04 22:28:59 +01:00
rustc_borrowck Auto merge of #108735 - clubby789:borrowck-unstable, r=Nilstrieb 2023-03-07 07:01:57 +00:00
rustc_builtin_macros Explain compile-time vs run-time difference in env!() error message 2023-02-28 16:44:59 +00:00
rustc_codegen_cranelift Auto merge of #95317 - Jules-Bertholet:round_ties_to_even, r=pnkfelix,m-ou-se,scottmcm 2023-03-07 09:43:12 +00:00
rustc_codegen_gcc Rollup merge of #108783 - antoyo:sync-cg_gcc-2023-03-04, r=cjgillot 2023-03-07 19:57:45 +01:00
rustc_codegen_llvm Rollup merge of #108822 - nikic:legacy-pm-removal-2, r=cuviper 2023-03-07 19:57:46 +01:00
rustc_codegen_ssa Auto merge of #108312 - michaelwoerister:hash-set-not-hash-stable, r=eholk 2023-03-08 06:07:11 +00:00
rustc_const_eval Rollup merge of #108803 - cjgillot:const-prop-normalize, r=oli-obk 2023-03-06 16:41:59 +01:00
rustc_data_structures Auto merge of #108312 - michaelwoerister:hash-set-not-hash-stable, r=eholk 2023-03-08 06:07:11 +00:00
rustc_driver Remove unneeded extern crate 2023-02-02 07:47:39 +01:00
rustc_driver_impl refactor: statically guarantee that current error codes are documented 2023-02-26 20:12:36 +13:00
rustc_error_codes refactor: statically guarantee that current error codes are documented 2023-02-26 20:12:36 +13:00
rustc_error_messages Handle selecting the default locale better 2023-02-23 01:14:10 +01:00
rustc_errors Properly colorize multi-part suggestions in the same line 2023-03-04 00:29:52 +00:00
rustc_expand rustc_expand: make proc-macro derive error translatable 2023-03-04 07:54:29 +02:00
rustc_feature Revert "Stabilize #![feature(target_feature_11)]" 2023-03-02 13:41:17 +01:00
rustc_fs_util Remove useless borrows and derefs 2022-12-01 17:34:43 +00:00
rustc_graphviz Fix uninlined_format_args for some compiler crates 2023-01-05 19:01:12 +01:00
rustc_hir Only look for param in generics if it actually comes from generics 2023-02-28 06:27:56 +00:00
rustc_hir_analysis Auto merge of #108312 - michaelwoerister:hash-set-not-hash-stable, r=eholk 2023-03-08 06:07:11 +00:00
rustc_hir_pretty Add ErrorGuaranteed to HIR ExprKind::Err 2023-02-25 19:46:36 +00:00
rustc_hir_typeck Rollup merge of #108731 - Ezrashaw:pin-suggestion-on-impl-future, r=petrochenkov 2023-03-07 23:06:22 +09:00
rustc_incremental Match unmatched backticks in compiler/ that are part of rustdoc 2023-03-03 08:39:00 +01:00
rustc_index Match unmatched backticks in compiler/ that are part of rustdoc 2023-03-03 08:39:00 +01:00
rustc_infer Rollup merge of #108839 - compiler-errors:canonicalize-the-root-var, r=lcnr 2023-03-08 21:26:51 +01:00
rustc_interface Match end user facing unmatched backticks in compiler/ 2023-03-03 08:39:36 +01:00
rustc_lexer Rustdoc-ify LiteralKind note 2023-03-03 08:39:36 +01:00
rustc_lint Auto merge of #108351 - petrochenkov:rmdit, r=cjgillot 2023-03-05 10:37:02 +00:00
rustc_lint_defs Rollup merge of #108363 - cjgillot:unused-crate, r=WaffleLapkin 2023-02-27 18:48:49 +01:00
rustc_llvm Remove references to PassManagerBuilder 2023-03-06 16:55:52 +01:00
rustc_log Rollup merge of #107895 - matthiaskrgr:cl, r=compiler-errors 2023-02-11 17:18:44 +01:00
rustc_macros Allow using bool for optional diagnostics 2023-02-27 12:54:11 +00:00
rustc_metadata Auto merge of #101550 - CraftSpider:link-dead-windows, r=wesleywiser 2023-03-05 02:00:58 +00:00
rustc_middle Auto merge of #108121 - aliemjay:resolve-var-region, r=lcnr 2023-03-08 12:33:21 +00:00
rustc_mir_build Rollup merge of #108855 - cbeuw:mir-cast, r=tmiasko 2023-03-07 23:06:25 +09:00
rustc_mir_dataflow Erase lifetimes in SROA. 2023-03-05 18:35:30 +00:00
rustc_mir_transform Auto merge of #108312 - michaelwoerister:hash-set-not-hash-stable, r=eholk 2023-03-08 06:07:11 +00:00
rustc_monomorphize rustc_middle: Remove trait DefIdTree 2023-03-02 23:46:44 +04:00
rustc_parse Rollup merge of #108715 - chenyukang:yukang/cleanup-parser-delims, r=compiler-errors 2023-03-04 20:48:17 +01:00
rustc_parse_format Replace some thens with some then_somes 2023-02-16 15:26:03 +00:00
rustc_passes Auto merge of #108312 - michaelwoerister:hash-set-not-hash-stable, r=eholk 2023-03-08 06:07:11 +00:00
rustc_plugin_impl errors: generate typed identifiers in each crate 2023-02-22 09:15:53 +00:00
rustc_privacy rustc_middle: Remove trait DefIdTree 2023-03-02 23:46:44 +04:00
rustc_query_impl Auto merge of #108167 - Zoxc:query-config-instance-slim, r=cjgillot 2023-03-07 18:55:36 +00:00
rustc_query_system Auto merge of #108167 - Zoxc:query-config-instance-slim, r=cjgillot 2023-03-07 18:55:36 +00:00
rustc_resolve Auto merge of #108351 - petrochenkov:rmdit, r=cjgillot 2023-03-05 10:37:02 +00:00
rustc_serialize Emit the enum discriminant separately for the Encodable macro 2023-02-25 01:04:56 +01:00
rustc_session Auto merge of #108312 - michaelwoerister:hash-set-not-hash-stable, r=eholk 2023-03-08 06:07:11 +00:00
rustc_smir
rustc_span Auto merge of #95317 - Jules-Bertholet:round_ties_to_even, r=pnkfelix,m-ou-se,scottmcm 2023-03-07 09:43:12 +00:00
rustc_symbol_mangling Rename many interner functions. 2023-02-24 07:32:24 +11:00
rustc_target Use FxIndexSet instead of FxHashSet for asm_target_features query. 2023-03-01 10:19:26 +01:00
rustc_trait_selection Rollup merge of #108839 - compiler-errors:canonicalize-the-root-var, r=lcnr 2023-03-08 21:26:51 +01:00
rustc_traits Add mk_canonical_var_infos_from_iter. 2023-02-24 07:33:02 +11:00
rustc_transmute rustc_middle: Remove trait DefIdTree 2023-03-02 23:46:44 +04:00
rustc_ty_utils Auto merge of #108312 - michaelwoerister:hash-set-not-hash-stable, r=eholk 2023-03-08 06:07:11 +00:00
rustc_type_ir make first component of dyn* use pointer layout+type, and adjust DynStar comment 2023-02-18 19:24:55 +00:00