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

Point at argument instead of call for their obligations #88719

Merged
merged 10 commits into from
Sep 17, 2021

Commits on Sep 16, 2021

  1. Point at argument instead of call for their obligations

    When an obligation is introduced by a specific `fn` argument, point at
    the argument instead of the `fn` call if the obligation fails to be
    fulfilled.
    estebank committed Sep 16, 2021
    Configuration menu
    Copy the full SHA
    284a8a9 View commit details
    Browse the repository at this point in the history
  2. Refactor FulfillmentError to track less data

    Move the information about pointing at the call argument expression in
    an unmet obligation span from the `FulfillmentError` to a new
    `ObligationCauseCode`.
    estebank committed Sep 16, 2021
    Configuration menu
    Copy the full SHA
    8a3f712 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    569a842 View commit details
    Browse the repository at this point in the history
  4. Account for blocks in arguments

    When giving an error about an obligation introduced by a function call
    that an argument doesn't fulfill, and that argument is a block, add a
    span_label pointing at the innermost tail expression.
    estebank committed Sep 16, 2021
    Configuration menu
    Copy the full SHA
    22318f1 View commit details
    Browse the repository at this point in the history
  5. fix clone call

    estebank committed Sep 16, 2021
    Configuration menu
    Copy the full SHA
    f7c4a50 View commit details
    Browse the repository at this point in the history
  6. fix rebase

    estebank committed Sep 16, 2021
    Configuration menu
    Copy the full SHA
    dbecdd5 View commit details
    Browse the repository at this point in the history
  7. Remove unnecessary label

    estebank committed Sep 16, 2021
    Configuration menu
    Copy the full SHA
    88a5321 View commit details
    Browse the repository at this point in the history
  8. Fix rebase

    estebank committed Sep 16, 2021
    Configuration menu
    Copy the full SHA
    1d82905 View commit details
    Browse the repository at this point in the history
  9. Point at argument when evaluating Path's bounds

    When evaluating an `ExprKind::Call`, we first have to `check_expr` on it's
    callee. When this one is a `ExprKind::Path`, we had to evaluate the bounds
    introduced for its arguments, but by the time we evaluated them we no
    longer had access to the argument spans. Now we special case this so
    that we can point at the right place on unsatisfied bounds. This also
    allows the E0277 deduplication to kick in correctly, so we now emit
    fewer errors.
    estebank committed Sep 16, 2021
    Configuration menu
    Copy the full SHA
    4951e3a View commit details
    Browse the repository at this point in the history
  10. fix rebase

    estebank committed Sep 16, 2021
    Configuration menu
    Copy the full SHA
    0a4540b View commit details
    Browse the repository at this point in the history