Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rollup of 6 pull requests #72490

Closed
wants to merge 33 commits into from
Closed
Changes from 1 commit
Commits
Show all changes
33 commits
Select commit Hold shift + click to select a range
0ef565e
Add missing ASM arena declaration to librustc_middle
Aaron1011 May 20, 2020
5728c53
Use `HirId` as key for `ResolverOutputs::trait_map` instead of `NodeId`
marmeladema May 20, 2020
3c5dba7
Use `HirId` in value of `ResolverOutputs::trait_map` instead of `NodeId`
marmeladema May 20, 2020
52359f7
Use `HirId` in `ResolverOutputs::export_map` instead of `NodeId`
marmeladema May 20, 2020
13c86f2
Use `LocalDefId` in `ResolverOutputs::maybe_unused_trait_imports` ins…
marmeladema May 20, 2020
25f575b
Use `DefId` in `ResolverOutputs::maybe_unused_extern_crates` instead …
marmeladema May 20, 2020
21f65ae
Use `DefId` in `ResolverOutputs::glob_map` instead of `NodeId`
marmeladema May 20, 2020
8ff6ffd
Use `DefId` in `ResolverOutputs::extern_crate_map` instead of `NodeId`
marmeladema May 20, 2020
4c4cb46
Use `collect()` instead of manually inserting elements into maps
marmeladema May 21, 2020
f31e076
Replace unecessary calls to `.clone()` by argument binding pattern fo…
marmeladema May 21, 2020
407958a
Replace obligation construction with deref_steps()
ldm0 May 17, 2020
52bb09a
Rewrite `Parser::collect_tokens`
Aaron1011 May 19, 2020
33f90f2
Check for upper bound universe errors more carefully
matthewjasper May 19, 2020
187bfb3
Improve the error when an opaque type captures ReEmtpty
matthewjasper May 19, 2020
c102312
Remove the parts of regionck referencing ReScope
matthewjasper May 19, 2020
7d73e4c
Remove ReScope
matthewjasper May 19, 2020
52d628f
Remove unused error reporting code
matthewjasper May 19, 2020
3d8a073
Remove dead ScopeTree code
matthewjasper May 19, 2020
f9f3063
Update tests
matthewjasper May 20, 2020
9754b3f
Document `collect_bounding_regions`
matthewjasper May 21, 2020
730c6f3
Preserve substitutions when trying to prove trait obligation
ecstatic-morse Apr 27, 2020
8ea828b
Add regression test for #71394
ecstatic-morse Apr 27, 2020
4d9e9c6
Bless other example of #71394
ecstatic-morse Apr 27, 2020
d2bacb1
Ensure that `new_self_ty` has no escaping bound vars
ecstatic-morse Apr 28, 2020
7278e29
Document invariants of `mk_trait_obligation_with_new_self_ty`
ecstatic-morse May 18, 2020
f99519b
Bail out if `output_ty` has bound variables
ecstatic-morse May 18, 2020
1fad3b7
Use `mk_trait_obligation_with_new_self_ty` for new suggestion
ecstatic-morse May 18, 2020
a630767
Rollup merge of #71618 - ecstatic-morse:issue-71394, r=nikomatsakis
RalfJung May 23, 2020
6b9b044
Rollup merge of #72292 - ldm0:derefsteps, r=estebank
RalfJung May 23, 2020
533b6ce
Rollup merge of #72362 - matthewjasper:remove-rescope, r=nikomatsakis
RalfJung May 23, 2020
8e98d8d
Rollup merge of #72393 - Aaron1011:feature/rewrite-collect-tokens, r=…
RalfJung May 23, 2020
f1f3e52
Rollup merge of #72400 - Aaron1011:fix/asm-incr-ice, r=Amanieu
RalfJung May 23, 2020
88e2815
Rollup merge of #72402 - marmeladema:resolver-outputs-def-id, r=ecsta…
RalfJung May 23, 2020
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Document collect_bounding_regions
  • Loading branch information
matthewjasper committed May 22, 2020
commit 9754b3fc1d9d24bc1e65136e5798cc5a6d226a4f
11 changes: 11 additions & 0 deletions src/librustc_infer/infer/lexical_region_resolve/mod.rs
Original file line number Diff line number Diff line change
@@ -862,6 +862,17 @@ impl<'cx, 'tcx> LexicalResolver<'cx, 'tcx> {
);
}

/// Collects all regions that "bound" the variable `orig_node_idx` in the
/// given direction.
///
/// If `dup_vec` is `Some` it's used to track duplicates between successive
/// calls of this function.
///
/// The return tuple fields are:
/// - a list of all concrete regions bounding the given region.
/// - the set of all region variables bounding the given region.
/// - a `bool` that's true if the returned region variables overlap with
/// those returned by a previous call for another region.
fn collect_bounding_regions(
&self,
graph: &RegionGraph<'tcx>,