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

Defer reasoning about regions until after regionck #7187

Commits on Jul 2, 2013

  1. Defer reasoning about region relationships until after regionck.

    This patch makes error handling for region inference failures more
    uniform by not reporting *any* region errors until the reigon inference
    step. This requires threading through more information about what
    caused a region constraint, so that we can still give informative
    error messages.
    
    I have only taken partial advantage of this information: when region
    inference fails, we still report the same error we always did, despite
    the fact that we now know precisely what caused the various constriants
    and what the region variable represents, which we did not know before.
    
    This change is required not only to improve error messages but
    because the region hierarchy is not in fact fully known until regionck,
    because it is not clear where closure bodies fit in (our current
    treatment is unsound). Moreover, the relationships between free variables
    cannot be fully determined until type inference is otherwise complete.
    
    cc rust-lang#3238.
    nikomatsakis committed Jul 2, 2013
    Configuration menu
    Copy the full SHA
    9e6d5e1 View commit details
    Browse the repository at this point in the history
  2. Correct handling of if/match, and make explicit computation of

    common supertypes.
    
    This was breaking with the change to regions because of the
    (now incorrect) assumpton that our inference code makes,
    which is that if a <: b succeeds, there is no need to compute
    the LUB/GLB.
    nikomatsakis committed Jul 2, 2013
    Configuration menu
    Copy the full SHA
    42344af View commit details
    Browse the repository at this point in the history
  3. move docs into doc.rs

    nikomatsakis committed Jul 2, 2013
    Configuration menu
    Copy the full SHA
    79ea266 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    9d48a7d View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    d7522fe View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    e416c9f View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    4a0469e View commit details
    Browse the repository at this point in the history
  8. 17 Configuration menu
    Copy the full SHA
    ef5c439 View commit details
    Browse the repository at this point in the history