rust/compiler
bors 52e3dffa50 Auto merge of #82743 - jackh726:resolve-refactor, r=nikomatsakis
Refactor rustc_resolve::late::lifetimes to resolve per-item

There are some changes to tests that I'd like some feedback on; so this is still WIP.

The reason behind this change will (hopefully) allow us to (as part of #76814) be able to essentially use the lifetime resolve code to resolve *all* late bound vars (including those of super traits). Currently, it only resolves those that are *syntactically* in scope. In #76814, I'm essentially finding that I would essentially have to redo the passing of bound vars through scopes (i.e. when instantiating a poly trait ref), and that's what this code does anyways. However, to be able to do this (ask super traits what bound vars are in scope), we have to be able to resolve items separately.

The first commit is actually partially orthogonal. Essentially removing one use of late bound debruijn indices.

Not exactly sure who would be best to review here.
Let r? `@nikomatsakis`
2021-03-25 19:28:16 +00:00
..
rustc Rollup merge of #82642 - sfackler:jemalloc-zone, r=pnkfelix 2021-03-08 13:13:22 +01:00
rustc_apfloat stabilize or_patterns 2021-03-19 19:45:32 -05:00
rustc_arena Rollup merge of #83197 - jyn514:cfg-test-dead-code, r=joshtriplett 2021-03-19 15:03:24 +01:00
rustc_ast Add query for const_param_default 2021-03-23 17:16:20 +00:00
rustc_ast_lowering Auto merge of #83424 - cjgillot:noparam, r=lcnr 2021-03-25 16:35:19 +00:00
rustc_ast_passes progress, stuff compiles now 2021-03-23 17:16:20 +00:00
rustc_ast_pretty Update with comments 2021-03-23 17:16:20 +00:00
rustc_attr stabilize or_patterns 2021-03-19 19:45:32 -05:00
rustc_builtin_macros stabilize or_patterns 2021-03-19 19:45:32 -05:00
rustc_codegen_cranelift update const_eval_resolve 2021-03-20 17:22:24 +01:00
rustc_codegen_llvm Auto merge of #83387 - cuviper:min-llvm-10, r=nagisa 2021-03-25 13:11:18 +00:00
rustc_codegen_ssa Auto merge of #83307 - richkadel:cov-unused-functions-1.1, r=tmandry 2021-03-25 05:07:34 +00:00
rustc_data_structures Revert "Revert stabilizing integer::BITS." 2021-03-24 22:34:36 +01:00
rustc_driver Auto merge of #83050 - osa1:issue83048, r=matthewjasper 2021-03-24 12:02:13 +00:00
rustc_error_codes progress, stuff compiles now 2021-03-23 17:16:20 +00:00
rustc_errors small cleanups in rustc_errors / emitter 2021-03-24 00:09:11 +01:00
rustc_expand Rollup merge of #83384 - mark-i-m:rename-pat2018, r=joshtriplett 2021-03-23 10:15:43 +09:00
rustc_feature Rollup merge of #83384 - mark-i-m:rename-pat2018, r=joshtriplett 2021-03-23 10:15:43 +09:00
rustc_fs_util Optimize away a fs::metadata call. 2021-01-06 08:33:15 -08:00
rustc_graphviz remove redundant closures (clippy::redundant_closure) 2021-01-03 13:34:24 +01:00
rustc_hir progress, stuff compiles now 2021-03-23 17:16:20 +00:00
rustc_hir_pretty Add has_default to GenericParamDefKind::Const 2021-03-23 17:16:20 +00:00
rustc_incremental Only enable assert_dep_graph when query-dep-graph is enabled. 2021-03-22 19:22:06 +01:00
rustc_index Remove useless Clone bound in IndexVec. 2021-03-09 18:51:36 +01:00
rustc_infer Update to not have extra match 2021-03-23 20:01:40 +00:00
rustc_interface Auto merge of #83307 - richkadel:cov-unused-functions-1.1, r=tmandry 2021-03-25 05:07:34 +00:00
rustc_lexer Return EOF_CHAR constant instead of magic char. 2021-01-07 13:20:04 +01:00
rustc_lint stabilize or_patterns 2021-03-19 19:45:32 -05:00
rustc_lint_defs Introduce proc_macro_back_compat lint, and emit for time-macros-impl 2021-03-14 21:31:46 -04:00
rustc_llvm Auto merge of #83387 - cuviper:min-llvm-10, r=nagisa 2021-03-25 13:11:18 +00:00
rustc_macros Add inlining. 2021-03-11 12:24:43 +01:00
rustc_metadata Auto merge of #83307 - richkadel:cov-unused-functions-1.1, r=tmandry 2021-03-25 05:07:34 +00:00
rustc_middle Auto merge of #82743 - jackh726:resolve-refactor, r=nikomatsakis 2021-03-25 19:28:16 +00:00
rustc_mir Auto merge of #83445 - erikdesjardins:rmunion, r=RalfJung 2021-03-25 07:48:52 +00:00
rustc_mir_build Auto merge of #79278 - mark-i-m:stabilize-or-pattern, r=nikomatsakis 2021-03-22 19:48:27 +00:00
rustc_parse Rollup merge of #83384 - mark-i-m:rename-pat2018, r=joshtriplett 2021-03-23 10:15:43 +09:00
rustc_parse_format stabilize or_patterns 2021-03-19 19:45:32 -05:00
rustc_passes Auto merge of #83424 - cjgillot:noparam, r=lcnr 2021-03-25 16:35:19 +00:00
rustc_plugin_impl Remove hir::Item::attrs. 2021-03-09 19:27:50 +01:00
rustc_privacy Update with comments 2021-03-23 17:16:20 +00:00
rustc_query_impl Auto merge of #82936 - oli-obk:valtree, r=RalfJung,lcnr,matthewjasper 2021-03-16 22:42:56 +00:00
rustc_query_system Debug-print result when an unstable fingerprint is detected 2021-03-19 21:47:57 -04:00
rustc_resolve write-up what is happening 2021-03-25 09:24:27 -04:00
rustc_save_analysis Auto merge of #83424 - cjgillot:noparam, r=lcnr 2021-03-25 16:35:19 +00:00
rustc_serialize Revert "Revert stabilizing integer::BITS." 2021-03-24 22:34:36 +01:00
rustc_session Auto merge of #83307 - richkadel:cov-unused-functions-1.1, r=tmandry 2021-03-25 05:07:34 +00:00
rustc_span Add has_default to GenericParamDefKind::Const 2021-03-23 17:16:20 +00:00
rustc_symbol_mangling stabilize or_patterns 2021-03-19 19:45:32 -05:00
rustc_target Allow not emitting uwtable on Android 2021-03-23 04:39:58 +08:00
rustc_trait_selection Use EvaluatedToOkModuloRegions whenever we erase regions 2021-03-24 16:01:37 -04:00
rustc_traits Add has_default to GenericParamDefKind::Const 2021-03-23 17:16:20 +00:00
rustc_ty_utils Don't consider !Unpin references as noalias 2021-03-21 20:10:53 +01:00
rustc_type_ir New pass to deduplicate blocks 2021-02-21 21:51:54 +01:00
rustc_typeck Auto merge of #82743 - jackh726:resolve-refactor, r=nikomatsakis 2021-03-25 19:28:16 +00:00