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

Projection bound validation #72788

Merged
merged 6 commits into from
Jun 21, 2020

Commits on Jun 20, 2020

  1. Configuration menu
    Copy the full SHA
    29272fc View commit details
    Browse the repository at this point in the history
  2. Consider fewer predicates for projection candidates

    We now require that projection candidates are applicable with the
    idenitity substs of the trait, rather than allowing predicates that are
    only applicable for certain substs.
    matthewjasper committed Jun 20, 2020
    Configuration menu
    Copy the full SHA
    04e589c View commit details
    Browse the repository at this point in the history
  3. Check associated type satisfy their bounds

    This was currently only happening due to eager normalization, which
    isn't possible if there's specialization or bound variables.
    matthewjasper committed Jun 20, 2020
    Configuration menu
    Copy the full SHA
    d660dbc View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    9818bc0 View commit details
    Browse the repository at this point in the history
  5. Move bounds on associated types to the type

    Given `trait X { type U; }` the bound `<Self as X>::U` now lives
    on the type, rather than the trait. This is feature gated on
    `feature(generic_associated_types)` for now until more testing can
    be done.
    
    The also enabled type-generic associated types since we no longer
    need "implies bounds".
    matthewjasper committed Jun 20, 2020
    Configuration menu
    Copy the full SHA
    db4826d View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    5e8c9f4 View commit details
    Browse the repository at this point in the history