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

rustc: Start moving toward "try_get is a bug" for incremental #44071

Merged
merged 6 commits into from
Aug 26, 2017

Commits on Aug 25, 2017

  1. rustc_errors: Add the ability to delay as bugs

    This adds a function to `DiagnosticBuilder` to delay the entire diagnostic as a
    bug to be emitted at a later time. This'll end up getting used in the compiler
    in the subsequent commits...
    alexcrichton committed Aug 25, 2017
    Configuration menu
    Copy the full SHA
    64b0b2b View commit details
    Browse the repository at this point in the history
  2. rustc: Change the return of a query's try_get

    This alters the return value of the `try_get` function so the error contains a
    diagnostic rather than a `CycleError`. This way consumers are forced to take
    *some* action (else they get a bug to an un-emitted diagnostic). This action
    could be to emit the error itself, or in some cases delay the diagnostic as a
    bug and continue.
    alexcrichton committed Aug 25, 2017
    Configuration menu
    Copy the full SHA
    97f2c37 View commit details
    Browse the repository at this point in the history
  3. rustc: Fix two instances of try_get

    The `sized_constraint` and `needs_drop_raw` queries both use `try_get` to detect
    cycles, but in both of these cases the cycle indicates an error has happened
    elsewhere in compilation. In these cases we can just delay the diagnostic to get
    emitted as a bug later if we ended up forgetting to emit the error diagnostic.
    alexcrichton committed Aug 25, 2017
    Configuration menu
    Copy the full SHA
    ecb29c1 View commit details
    Browse the repository at this point in the history
  4. rustc: Add a FIXME for try_get in MIR inlining

    It sounds like this is being handled elsewhere, so for now just preserve the
    existing behavior of ignoring th error.
    alexcrichton committed Aug 25, 2017
    Configuration menu
    Copy the full SHA
    82bad95 View commit details
    Browse the repository at this point in the history
  5. rustc: Skip cyclic checks in item_path

    This seems like it may be likely to cause bugs with `RUST_LOG` and other
    "interesting" scenarios, but it removes the usage of `try_get` for now!
    alexcrichton committed Aug 25, 2017
    Configuration menu
    Copy the full SHA
    c77213d View commit details
    Browse the repository at this point in the history

Commits on Aug 26, 2017

  1. Configuration menu
    Copy the full SHA
    c766aa4 View commit details
    Browse the repository at this point in the history