rust/compiler
bors 8ab71ab59f Auto merge of #100980 - compiler-errors:normalize-opaque-w-bound-vars, r=lcnr
Normalize opaques w/ bound vars

First, we reenable normalization of opaque types with escaping late bound regions to fix rust-lang/miri#2433. This essentially reverts #89285.

Second, we mitigate the perf regression found in #88862 by simplifying the way that we relate (sub and eq) GeneratorWitness types.

This relies on the fact that we construct these GeneratorWitness types somewhat particularly (with all free regions found in the witness types replaced with late bound regions) -- but those bound regions really should be treated as existential regions, not universal ones. Those two facts leads me to believe that we do not need to use the full `higher_ranked_sub` machinery to relate two generator witnesses. I'm pretty confident that this is correct, but I'm glad to discuss this further.
2022-09-22 12:47:31 +00:00
..
rustc Don't rerun the build script for the compiler each time on linux 2022-07-10 23:57:25 -05:00
rustc_apfloat Add diagnostic translation lints to crates that don't emit them 2022-08-18 19:29:02 +01:00
rustc_arena Make use of [wrapping_]byte_{add,sub} 2022-08-23 19:32:37 +04:00
rustc_ast Rollup merge of #93628 - est31:stabilize_let_else, r=joshtriplett 2022-09-17 15:31:06 +05:30
rustc_ast_lowering FIX - adopt new Diagnostic naming in newly migrated modules 2022-09-21 11:43:22 -04:00
rustc_ast_passes UPDATE - rename SessionSubdiagnostic macro to Subdiagnostic 2022-09-21 11:39:53 -04:00
rustc_ast_pretty make mk_attr_id part of ParseSess 2022-09-14 08:49:10 +08:00
rustc_attr FIX - adopt new Diagnostic naming in newly migrated modules 2022-09-21 11:43:22 -04:00
rustc_borrowck Auto merge of #100982 - fee1-dead-contrib:const-impl-requires-const-trait, r=oli-obk 2022-09-22 04:22:24 +00:00
rustc_builtin_macros UPDATE - rename DiagnosticHandler macro to Diagnostic 2022-09-21 11:39:53 -04:00
rustc_codegen_cranelift Auto merge of #99806 - oli-obk:unconstrained_opaque_type, r=estebank 2022-09-20 12:09:52 +00:00
rustc_codegen_gcc Remove dead broken code from const zst handling in backends 2022-09-06 14:09:49 +00:00
rustc_codegen_llvm Use LLVM C-API to build atomic cmpxchg and fence 2022-09-18 16:01:57 -07:00
rustc_codegen_ssa Auto merge of #99806 - oli-obk:unconstrained_opaque_type, r=estebank 2022-09-20 12:09:52 +00:00
rustc_const_eval Auto merge of #100982 - fee1-dead-contrib:const-impl-requires-const-trait, r=oli-obk 2022-09-22 04:22:24 +00:00
rustc_data_structures Only enable the let_else feature on bootstrap 2022-09-15 21:06:45 +02:00
rustc_driver UPDATE - rename DiagnosticHandler macro to Diagnostic 2022-09-21 11:39:53 -04:00
rustc_error_codes Stabilize #![feature(label_break_value)] 2022-08-23 21:14:12 -05:00
rustc_error_messages UPDATE - rename SessionSubdiagnostic macro to Subdiagnostic 2022-09-21 11:39:53 -04:00
rustc_errors FIX - adopt new Diagnostic naming in newly migrated modules 2022-09-21 11:43:22 -04:00
rustc_expand FIX - adopt new Diagnostic naming in newly migrated modules 2022-09-21 11:43:22 -04:00
rustc_feature Auto merge of #100982 - fee1-dead-contrib:const-impl-requires-const-trait, r=oli-obk 2022-09-22 04:22:24 +00:00
rustc_fs_util Add diagnostic translation lints to crates that don't emit them 2022-08-18 19:29:02 +01:00
rustc_graphviz Add diagnostic translation lints to crates that don't emit them 2022-08-18 19:29:02 +01:00
rustc_hir Rollup merge of #93628 - est31:stabilize_let_else, r=joshtriplett 2022-09-17 15:31:06 +05:30
rustc_hir_pretty Handle generic parameters. 2022-09-09 01:31:46 +00:00
rustc_incremental Only enable the let_else feature on bootstrap 2022-09-15 21:06:45 +02:00
rustc_index Only enable the let_else feature on bootstrap 2022-09-15 21:06:45 +02:00
rustc_infer Auto merge of #100980 - compiler-errors:normalize-opaque-w-bound-vars, r=lcnr 2022-09-22 12:47:31 +00:00
rustc_interface UPDATE - rename DiagnosticHandler macro to Diagnostic 2022-09-21 11:39:53 -04:00
rustc_lexer remove unnecessary PartialOrd and Ord 2022-09-08 06:15:33 +09:00
rustc_lint FIX - adopt new Diagnostic naming in newly migrated modules 2022-09-21 11:43:22 -04:00
rustc_lint_defs Compute lint_levels by definition 2022-09-14 19:02:44 +02:00
rustc_llvm Use LLVM C-API to build atomic cmpxchg and fence 2022-09-18 16:01:57 -07:00
rustc_log Add diagnostic translation lints to crates that don't emit them 2022-08-18 19:29:02 +01:00
rustc_macros FIX - adopt new Diagnostic naming in newly migrated modules 2022-09-21 11:43:22 -04:00
rustc_metadata Auto merge of #101558 - JhonnyBillM:session-diagnostic-to-diagnostic-handler-refactor, r=davidtwco 2022-09-21 19:58:39 +00:00
rustc_middle Auto merge of #100982 - fee1-dead-contrib:const-impl-requires-const-trait, r=oli-obk 2022-09-22 04:22:24 +00:00
rustc_mir_build Rollup merge of #102021 - lcnr:tyConst-fun, r=b-naber,BoxyUwU 2022-09-20 10:13:01 -07:00
rustc_mir_dataflow UPDATE - rename DiagnosticHandler macro to Diagnostic 2022-09-21 11:39:53 -04:00
rustc_mir_transform Rollup merge of #102045 - RalfJung:const-prop-regression-fix, r=oli-obk 2022-09-21 19:01:08 +05:30
rustc_monomorphize FIX - adopt new Diagnostic naming in newly migrated modules 2022-09-21 11:43:22 -04:00
rustc_parse FIX - adopt new Diagnostic naming in newly migrated modules 2022-09-21 11:43:22 -04:00
rustc_parse_format Separate CountIsStar from CountIsParam in rustc_parse_format. 2022-08-25 14:49:09 +02:00
rustc_passes Auto merge of #100982 - fee1-dead-contrib:const-impl-requires-const-trait, r=oli-obk 2022-09-22 04:22:24 +00:00
rustc_plugin_impl UPDATE - rename DiagnosticHandler macro to Diagnostic 2022-09-21 11:39:53 -04:00
rustc_privacy UPDATE - rename SessionSubdiagnostic macro to Subdiagnostic 2022-09-21 11:39:53 -04:00
rustc_query_impl Rollup merge of #101801 - SparrowLii:query_depth_note, r=estebank 2022-09-17 19:27:06 +02:00
rustc_query_system FIX - adopt new Diagnostic naming in newly migrated modules 2022-09-21 11:43:22 -04:00
rustc_resolve Rollup merge of #101713 - Bryanskiy:AccessLevels, r=petrochenkov 2022-09-17 23:30:49 +02:00
rustc_save_analysis UPDATE - rename DiagnosticHandler macro to Diagnostic 2022-09-21 11:39:53 -04:00
rustc_serialize Rollup merge of #101014 - isikkema:fix-zmeta-stats-file-encoder-no-read-perms, r=isikkema 2022-09-20 10:12:57 -07:00
rustc_session FIX - adopt new Diagnostic naming in newly migrated modules 2022-09-21 11:43:22 -04:00
rustc_smir Only keep one version of ImplicitSelfKind. 2022-09-13 19:18:23 +02:00
rustc_span Auto merge of #101999 - the8472:source-lines-partition-point, r=davidtwco 2022-09-22 07:03:42 +00:00
rustc_symbol_mangling UPDATE - rename DiagnosticHandler trait to IntoDiagnostic 2022-09-21 11:39:52 -04:00
rustc_target Auto merge of #101329 - QuinnPainter:armv5te-targets, r=nagisa 2022-09-21 09:36:21 +00:00
rustc_trait_selection Auto merge of #100980 - compiler-errors:normalize-opaque-w-bound-vars, r=lcnr 2022-09-22 12:47:31 +00:00
rustc_traits remove the Subst trait, always use EarlyBinder 2022-09-19 11:37:27 +02:00
rustc_transmute Auto merge of #100726 - jswrenn:transmute, r=oli-obk 2022-09-04 07:55:44 +00:00
rustc_ty_utils UPDATE - rename SessionSubdiagnostic macro to Subdiagnostic 2022-09-21 11:39:53 -04:00
rustc_type_ir Address code review comments 2022-09-13 14:50:12 -07:00
rustc_typeck Auto merge of #100980 - compiler-errors:normalize-opaque-w-bound-vars, r=lcnr 2022-09-22 12:47:31 +00:00