rust/compiler
bors e2b3676733 Auto merge of #114586 - oli-obk:patch_tait_rpit_order_check, r=lcnr,compiler-errors
Bubble up opaque <eq> opaque operations instead of picking an order

In case we are in `Bubble` mode (meaning every opaque type that is defined in the current crate is treated as if it were in its defining scope), we don't try to register an opaque type as the hidden type of another opaque type, but instead bubble up an obligation to equate them at the query caller site. Usually that means we have a `DefiningAnchor::Bind` and thus can reliably figure out whether an opaque type is in its defining scope. Where we can't, we'll error out, so the default is sound.

With this change we start using `AliasTyEq` predicates in the old solver, too.

fixes https://github.com/rust-lang/rust/issues/108498

But also regresses `tests/ui/impl-trait/anon_scope_creep.rs`. Our use of `Bubble` for `check_opaque_type_well_formed` is going to keep biting us.

r? `@lcnr` `@compiler-errors`
2023-09-11 19:01:38 +00:00
..
rustc
rustc_abi turns out Layout has some more things to worry about -- move ABI comparison into helper function 2023-09-08 09:14:07 +02:00
rustc_arena Bump cfg(bootstrap) 2023-08-23 20:05:14 -04:00
rustc_ast improve AttrTokenStream 2023-09-04 20:07:28 +08:00
rustc_ast_lowering Enable incremental-relative-spans by default. 2023-09-07 20:21:13 +00:00
rustc_ast_passes Auto merge of #115131 - frank-king:feature/unnamed-fields-lite, r=petrochenkov 2023-08-24 12:52:35 +00:00
rustc_ast_pretty Auto merge of #115131 - frank-king:feature/unnamed-fields-lite, r=petrochenkov 2023-08-24 12:52:35 +00:00
rustc_attr Auto merge of #114201 - Centri3:explicit-repr-rust, r=WaffleLapkin 2023-08-25 00:02:54 +00:00
rustc_baked_icu_data
rustc_borrowck Auto merge of #114586 - oli-obk:patch_tait_rpit_order_check, r=lcnr,compiler-errors 2023-09-11 19:01:38 +00:00
rustc_builtin_macros Load include_bytes! directly into an Lrc 2023-08-27 20:16:19 -04:00
rustc_codegen_cranelift Auto merge of #115418 - Zoxc:freeze-source, r=oli-obk 2023-09-08 17:20:23 +00:00
rustc_codegen_gcc Deduplicate inlined function debug info, but create a new lexical scope to child subsequent scopes and variables from colliding 2023-09-01 14:27:21 -07:00
rustc_codegen_llvm Auto merge of #115685 - matthiaskrgr:rollup-t31gowy, r=matthiaskrgr 2023-09-08 22:47:40 +00:00
rustc_codegen_ssa Auto merge of #115417 - dpaoliello:fixdi, r=wesleywiser 2023-09-08 20:56:01 +00:00
rustc_const_eval Auto merge of #115372 - RalfJung:abi-assert-eq, r=davidtwco 2023-09-08 11:56:08 +00:00
rustc_data_structures Auto merge of #115388 - Zoxc:sharded-lock, r=SparrowLii 2023-09-11 01:43:29 +00:00
rustc_driver
rustc_driver_impl Add missing Debuginfo to PDB debug file on windows. 2023-09-08 00:28:40 +02:00
rustc_error_codes Generalize E0401 2023-09-10 23:06:14 +02:00
rustc_error_messages Bump cfg(bootstrap) 2023-08-23 20:05:14 -04:00
rustc_errors Auto merge of #115418 - Zoxc:freeze-source, r=oli-obk 2023-09-08 17:20:23 +00:00
rustc_expand Enable incremental-relative-spans by default. 2023-09-07 20:21:13 +00:00
rustc_feature fix version for abi_thiscall to 1.73.0, which was forgotten to change when stabilized 2023-09-01 19:46:09 +03:00
rustc_fluent_macro
rustc_fs_util
rustc_graphviz
rustc_hir replace doc occurrences of ItemLikeVisitor 2023-09-05 22:40:36 +02:00
rustc_hir_analysis Rollup merge of #115727 - fee1-dead-contrib:effect-fallback, r=oli-obk 2023-09-11 17:03:31 +02:00
rustc_hir_pretty
rustc_hir_typeck Rollup merge of #115727 - fee1-dead-contrib:effect-fallback, r=oli-obk 2023-09-11 17:03:31 +02:00
rustc_incremental Avoid a source_span query when encoding Spans into query results 2023-09-08 02:08:52 +02:00
rustc_index Auto merge of #115094 - Mark-Simulacrum:bootstrap-update, r=ozkanonur 2023-08-24 11:10:52 +00:00
rustc_infer Auto merge of #114586 - oli-obk:patch_tait_rpit_order_check, r=lcnr,compiler-errors 2023-09-11 19:01:38 +00:00
rustc_interface Use FreezeLock for CStore 2023-09-09 16:02:11 +02:00
rustc_lexer
rustc_lint Rollup merge of #115739 - Alexendoo:lint-pass-check-attribute, r=oli-obk 2023-09-11 17:03:32 +02:00
rustc_lint_defs Don't emit refining_impl_trait for private items 2023-09-07 01:31:32 +00:00
rustc_llvm Rollup merge of #115358 - durin42:compress-debuginfo, r=oli-obk 2023-09-09 00:28:19 +02:00
rustc_log
rustc_macros Bump cfg(bootstrap) 2023-08-23 20:05:14 -04:00
rustc_metadata add is_host_effect to GenericParamDefKind::Const and address review 2023-09-11 13:18:36 +00:00
rustc_middle Rollup merge of #115743 - compiler-errors:no-impls, r=davidtwco 2023-09-11 17:03:32 +02:00
rustc_mir_build Refactor how MIR represents composite debuginfo. 2023-09-05 17:20:07 +00:00
rustc_mir_dataflow Correct comment and assumption. 2023-09-07 15:45:25 +00:00
rustc_mir_transform Auto merge of #115612 - cjgillot:const-prop-int, r=oli-obk 2023-09-08 15:32:54 +00:00
rustc_monomorphize Rollup merge of #115492 - Enselic:large-box-move, r=oli-obk 2023-09-05 07:15:16 +02:00
rustc_parse Rollup merge of #115596 - nnethercote:two-small-changes, r=lqd 2023-09-06 19:31:50 +02:00
rustc_parse_format Replace data_structures dependency with index in rustc_parse_format 2023-09-05 19:11:50 +02:00
rustc_passes Disentangle Debug and Display for Ty. 2023-09-11 12:51:07 +10:00
rustc_plugin_impl
rustc_privacy Rollup merge of #115727 - fee1-dead-contrib:effect-fallback, r=oli-obk 2023-09-11 17:03:31 +02:00
rustc_query_impl remove some unused crate deps 2023-09-01 19:13:09 +03:00
rustc_query_system Auto merge of #115388 - Zoxc:sharded-lock, r=SparrowLii 2023-09-11 01:43:29 +00:00
rustc_resolve Rollup merge of #115744 - fmease:fix-e0401, r=compiler-errors 2023-09-11 17:03:32 +02:00
rustc_serialize Use a specialized varint + bitpacking scheme for DepGraph encoding 2023-09-04 12:16:50 -04:00
rustc_session Auto merge of #115656 - cjgillot:default-relative-spans, r=davidtwco 2023-09-11 10:46:55 +00:00
rustc_smir Rollup merge of #115727 - fee1-dead-contrib:effect-fallback, r=oli-obk 2023-09-11 17:03:31 +02:00
rustc_span Auto merge of #115594 - nnethercote:span-tweaks, r=cjgillot 2023-09-09 10:56:24 +00:00
rustc_symbol_mangling Fix CFI: f32 and f64 are encoded incorrectly for c 2023-08-24 21:02:06 -07:00
rustc_target turns out Layout has some more things to worry about -- move ABI comparison into helper function 2023-09-08 09:14:07 +02:00
rustc_trait_selection Auto merge of #114586 - oli-obk:patch_tait_rpit_order_check, r=lcnr,compiler-errors 2023-09-11 19:01:38 +00:00
rustc_traits remove some unused crate deps 2023-09-01 19:13:09 +03:00
rustc_transmute Fix error report for size overflow from transmute 2023-09-06 06:48:34 +08:00
rustc_ty_utils Disentangle Debug and Display for Ty. 2023-09-11 12:51:07 +10:00
rustc_type_ir Use newtype_index for IntVid and FloatVid. 2023-09-07 17:31:35 +10:00