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

Remove the "leak check" in favor of "universes" #48407

Closed
wants to merge 22 commits into from

Commits on Mar 14, 2018

  1. Revert "change skolemizations to use universe index"

    This reverts commit 755bdaa.
    sgrif committed Mar 14, 2018
    Configuration menu
    Copy the full SHA
    48df576 View commit details
    Browse the repository at this point in the history
  2. Revert "fix tests in librustc_driver"

    This reverts commit 17df455.
    sgrif committed Mar 14, 2018
    Configuration menu
    Copy the full SHA
    50bd71c View commit details
    Browse the repository at this point in the history
  3. Revert "fix tidy error"

    This reverts commit a985634.
    sgrif committed Mar 14, 2018
    Configuration menu
    Copy the full SHA
    5dad682 View commit details
    Browse the repository at this point in the history
  4. Revert "change skolemizations to use universe index"

    This reverts commit 35e78b5.
    sgrif committed Mar 14, 2018
    Configuration menu
    Copy the full SHA
    2a94f30 View commit details
    Browse the repository at this point in the history
  5. Revert "introduce UniverseIndex into ParamEnv"

    This reverts commit d4df52c.
    sgrif committed Mar 14, 2018
    Configuration menu
    Copy the full SHA
    f6e6d23 View commit details
    Browse the repository at this point in the history
  6. Revert "add universes to type inference variables"

    This reverts commit 13efaf0.
    sgrif committed Mar 14, 2018
    Configuration menu
    Copy the full SHA
    26d1fc7 View commit details
    Browse the repository at this point in the history
  7. introduce UniverseIndex into InferCtxt

    Always using root environment for now.
    sgrif committed Mar 14, 2018
    Configuration menu
    Copy the full SHA
    3d4791b View commit details
    Browse the repository at this point in the history
  8. add universes to type inference variables

    This gives each type inference variable a notion of universe but doesn't
    do anything with it. We can always get the "current universe" from
    infer_ctxt. This relies on the property of type variables that they can
    never interact with siblings.
    sgrif committed Mar 14, 2018
    Configuration menu
    Copy the full SHA
    ff17bd7 View commit details
    Browse the repository at this point in the history
  9. change skolemizations to use universe index

    This is sort of confusing "side step". All it does is to change the
    representation of a skolemized region. but the source of that universe
    index is not the inference context, which is what we eventually want,
    but rather an internal counter in the region inference context.
    
    We'll patch that up later. But doing this now ought to help with
    confusing diffs later.
    sgrif committed Mar 14, 2018
    Configuration menu
    Copy the full SHA
    66520ff View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    534d5d1 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    59f3b20 View commit details
    Browse the repository at this point in the history
  12. make solving "universe aware", in a simplistic way

    This simple change says that if you have a constraint like
    
    ``` exists<'a> { for<'b> { 'a: 'b } } ```
    
    you can solve it by making 'a static. This is "good enough" for now,
    though not super smart, since for example
    
    ``` exists<'a> { for<'b> { if ('a: 'b) { 'a: 'b } } } ```
    
    will still force 'a to be 'static, though it should not. (We don't
    intend to fix that in this PR series; current rustc kind of sidesteps
    the need to consider such concerns at the moment.)
    sgrif committed Mar 14, 2018
    Configuration menu
    Copy the full SHA
    ad9e9d9 View commit details
    Browse the repository at this point in the history
  13. kill higher_ranked_lub and higher_ranked_glb

    These are only used to provide a better hint for code that was phased
    out long ago. We can just remove it. It's been long enough.
    sgrif committed Mar 14, 2018
    Configuration menu
    Copy the full SHA
    24478c4 View commit details
    Browse the repository at this point in the history
  14. remove hr_match -- no longer needed

    nikomatsakis authored and sgrif committed Mar 14, 2018
    Configuration menu
    Copy the full SHA
    367be87 View commit details
    Browse the repository at this point in the history
  15. Configuration menu
    Copy the full SHA
    5aca3b9 View commit details
    Browse the repository at this point in the history
  16. Wrap InferCtxt::universe in a cell

    We'll need this in order to start tracking skolemizatoins here, and it's
    easier to update all the field accesses now rather than later.
    sgrif committed Mar 14, 2018
    Configuration menu
    Copy the full SHA
    afb4010 View commit details
    Browse the repository at this point in the history
  17. Configuration menu
    Copy the full SHA
    3b8008f View commit details
    Browse the repository at this point in the history
  18. Configuration menu
    Copy the full SHA
    0bc324a View commit details
    Browse the repository at this point in the history
  19. DO NOT MERGE THIS COMMIT

    remove all failing tests so we can do a crater run
    sgrif committed Mar 14, 2018
    Configuration menu
    Copy the full SHA
    17e0577 View commit details
    Browse the repository at this point in the history
  20. Fix rustdoc breakage

    sgrif committed Mar 14, 2018
    Configuration menu
    Copy the full SHA
    bd90fb5 View commit details
    Browse the repository at this point in the history
  21. Configuration menu
    Copy the full SHA
    725eeb0 View commit details
    Browse the repository at this point in the history

Commits on Mar 19, 2018

  1. Fix rebase issues

    sgrif committed Mar 19, 2018
    Configuration menu
    Copy the full SHA
    3f599ad View commit details
    Browse the repository at this point in the history