rust/compiler
bors a61f6f3baa Auto merge of #116072 - compiler-errors:rpitit-implied-bounds, r=aliemjay
Use placeholders to prevent using inferred RPITIT types to imply their own well-formedness

The issue here is that we use the same signature to do RPITIT inference as we do to compute implied bounds. To fix this, when gathering the assumed wf types for the method, we replace all of the infer vars (that will be eventually used to infer RPITIT types) with type placeholders, which imply nothing about lifetime bounds.

This solution kind of sucks, but I'm not certain there's another feasible way to fix this. If anyone has a better solution, I'd be glad to hear it.

My naive first solution was, instead of using placeholders, to replace the signature with the RPITIT projections that it originally started out with. But turns out that we can't just use the unnormalized signature of the trait method in `implied_outlives_bounds` since we normalize during WF computation -- that would cause a query cycle in `collect_return_position_impl_trait_in_trait_tys`.

idk who to request review...
r? `@lcnr` or `@aliemjay` i guess.

Fixes #116060
2023-09-26 01:50:12 +00:00
..
rustc inline format!() args up to and including rustc_middle 2023-07-30 13:18:33 +02:00
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 Auto merge of #114452 - weiznich:feature/diagnostic_on_unimplemented, r=compiler-errors 2023-09-17 10:00:15 +00:00
rustc_ast_lowering Record asyncness span in HIR 2023-09-21 19:18:14 +00:00
rustc_ast_passes Add comment about RTN feature gating 2023-09-24 10:47:57 +02:00
rustc_ast_pretty Move let expression checking to parsing 2023-09-11 15:51:18 +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 Remove span from BrAnon. 2023-09-24 09:46:55 +00:00
rustc_builtin_macros Rollup merge of #115891 - RalfJung:structural-trait-derive, r=nnethercote 2023-09-18 18:27:20 +02:00
rustc_codegen_cranelift Rollup merge of #115972 - RalfJung:const-consistency, r=oli-obk 2023-09-21 13:25:39 +02:00
rustc_codegen_gcc Have a single struct for queries and hook 2023-09-22 16:26:20 +00:00
rustc_codegen_llvm Pass name of object file to LLVM so it can correctly emit S_OBJNAME 2023-09-25 19:31:58 +02:00
rustc_codegen_ssa Pass name of object file to LLVM so it can correctly emit S_OBJNAME 2023-09-25 19:31:58 +02:00
rustc_const_eval Remove GeneratorWitness and rename GeneratorWitnessMIR. 2023-09-23 13:47:30 +00:00
rustc_data_structures Add OwnedTargetMachine to manage llvm:TargetMachine. Uses pointers 2023-09-24 21:11:37 +02:00
rustc_driver
rustc_driver_impl Auto merge of #115627 - compiler-errors:icedump-no-std, r=m-ou-se 2023-09-19 16:56:25 +00:00
rustc_error_codes Remove dead error code. 2023-09-23 13:47:30 +00:00
rustc_error_messages Bump cfg(bootstrap) 2023-08-23 20:05:14 -04:00
rustc_errors Auto merge of #115690 - ShE3py:Z-treat-err-as-bug, r=petrochenkov 2023-09-22 13:01:30 +00:00
rustc_expand Enable incremental-relative-spans by default. 2023-09-07 20:21:13 +00:00
rustc_feature Auto merge of #114452 - weiznich:feature/diagnostic_on_unimplemented, r=compiler-errors 2023-09-17 10:00:15 +00:00
rustc_fluent_macro
rustc_fs_util
rustc_graphviz
rustc_hir Record asyncness span in HIR 2023-09-21 19:18:14 +00:00
rustc_hir_analysis Auto merge of #116072 - compiler-errors:rpitit-implied-bounds, r=aliemjay 2023-09-26 01:50:12 +00:00
rustc_hir_pretty Record asyncness span in HIR 2023-09-21 19:18:14 +00:00
rustc_hir_typeck Use verbose suggestion for break without value 2023-09-25 22:10:08 +00:00
rustc_incremental Move DepKind to rustc_query_system and define it as u16 2023-09-21 17:06:14 +02:00
rustc_index Auto merge of #115094 - Mark-Simulacrum:bootstrap-update, r=ozkanonur 2023-08-24 11:10:52 +00:00
rustc_infer Remove span from BrAnon. 2023-09-24 09:46:55 +00:00
rustc_interface Enable drop_tracking_mir by default. 2023-09-23 13:34:09 +00:00
rustc_lexer Update lexer emoji diagnostics to Unicode 15.0 2023-07-29 08:47:21 +08:00
rustc_lint Remove GeneratorWitness and rename GeneratorWitnessMIR. 2023-09-23 13:47:30 +00:00
rustc_lint_defs Enable drop_tracking_mir by default. 2023-09-23 13:34:09 +00:00
rustc_llvm Pass name of object file to LLVM so it can correctly emit S_OBJNAME 2023-09-25 19:31:58 +02:00
rustc_log inline format!() args up to and including rustc_middle 2023-07-30 13:18:33 +02:00
rustc_macros Bump cfg(bootstrap) 2023-08-23 20:05:14 -04:00
rustc_metadata Enable drop_tracking_mir by default. 2023-09-23 13:34:09 +00:00
rustc_middle Remove span from BrAnon. 2023-09-24 09:46:55 +00:00
rustc_mir_build Rollup merge of #115972 - RalfJung:const-consistency, r=oli-obk 2023-09-21 13:25:39 +02:00
rustc_mir_dataflow Auto merge of #115794 - cjgillot:aggregate-no-box, r=davidtwco 2023-09-24 06:13:17 +00:00
rustc_mir_transform Enable drop_tracking_mir by default. 2023-09-23 13:34:09 +00:00
rustc_monomorphize Rollup merge of #115972 - RalfJung:const-consistency, r=oli-obk 2023-09-21 13:25:39 +02:00
rustc_parse Auto merge of #115677 - matthewjasper:let-expr-recovery, r=b-naber 2023-09-14 19:56:55 +00:00
rustc_parse_format Rollup merge of #115611 - lukas-code:format!("{r#ident}"), r=compiler-errors 2023-09-17 11:23:25 +00:00
rustc_passes Allow higher-ranked fn sigs in ValuePairs 2023-09-22 19:47:41 +00:00
rustc_plugin_impl
rustc_privacy Remove GeneratorWitness and rename GeneratorWitnessMIR. 2023-09-23 13:47:30 +00:00
rustc_query_impl Move DepKind to rustc_query_system and define it as u16 2023-09-21 17:06:14 +02:00
rustc_query_system Move DepKind to rustc_query_system and define it as u16 2023-09-21 17:06:14 +02:00
rustc_resolve Tweak wording and logic 2023-09-23 01:54:05 +00:00
rustc_serialize Open the FileEncoder file for reading and writing 2023-09-22 16:13:25 -04:00
rustc_session Enable drop_tracking_mir by default. 2023-09-23 13:34:09 +00:00
rustc_smir Remove span from BrAnon. 2023-09-24 09:46:55 +00:00
rustc_span Auto merge of #115549 - saethlin:include-bytes-resilient, r=jackh726 2023-09-21 02:50:54 +00:00
rustc_symbol_mangling Remove span from BrAnon. 2023-09-24 09:46:55 +00:00
rustc_target Auto merge of #116076 - chriswailes:android-riscv-extension-update, r=cjgillot 2023-09-24 11:40:45 +00:00
rustc_trait_selection Remove span from BrAnon. 2023-09-24 09:46:55 +00:00
rustc_traits Detect cycle errors hidden by opaques during monomorphization 2023-09-13 17:35:44 +00:00
rustc_transmute make the eval() functions on our const types return the resulting value 2023-09-13 07:29:34 +02:00
rustc_ty_utils Remove GeneratorWitness and rename GeneratorWitnessMIR. 2023-09-23 13:47:30 +00:00
rustc_type_ir Auto merge of #116069 - compiler-errors:debug-tuple, r=Nilstrieb 2023-09-24 15:16:18 +00:00