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

Refactor how closures are represented to expose the types of the upvars #27087

Merged
merged 10 commits into from
Jul 24, 2015

Commits on Jul 24, 2015

  1. Configuration menu
    Copy the full SHA
    69d62e0 View commit details
    Browse the repository at this point in the history
  2. Introduce ClosureSubsts rather than just having random fields in the

    TyClosure variant; thread this through wherever closure substitutions
    are expected, which leads to a net simplification. Simplify trans
    treatment of closures in particular.
    nikomatsakis committed Jul 24, 2015
    Configuration menu
    Copy the full SHA
    1e2677b View commit details
    Browse the repository at this point in the history
  3. Run the analysis process only once per closure, on the way up the tree.

    This was the intention before but silly coding caused it to run twice if
    there are nested closures.
    nikomatsakis committed Jul 24, 2015
    Configuration menu
    Copy the full SHA
    6b49f4d View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    4172c82 View commit details
    Browse the repository at this point in the history
  5. Don't be so eager to call unresolved inference variables an error. MC

    is being used now before the final regionck stage and in some cases SOME
    amount of unresolved inference is OK. In fact, we could probably just
    allow inference variables as well with only minimal pain.
    nikomatsakis committed Jul 24, 2015
    Configuration menu
    Copy the full SHA
    a551697 View commit details
    Browse the repository at this point in the history
  6. Unify the upvar variables found in closures with the actual types of the

    upvars after analysis is done. Remove the `closure_upvars` helper and
    just consult this list of type variables directly.
    nikomatsakis committed Jul 24, 2015
    Configuration menu
    Copy the full SHA
    7ba288d View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    37aad77 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    f8931a7 View commit details
    Browse the repository at this point in the history
  9. nits

    nikomatsakis committed Jul 24, 2015
    Configuration menu
    Copy the full SHA
    d075faa View commit details
    Browse the repository at this point in the history
  10. minor rebase fixes

    nikomatsakis committed Jul 24, 2015
    Configuration menu
    Copy the full SHA
    71d4418 View commit details
    Browse the repository at this point in the history