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

Rollup of 5 pull requests #70451

Merged
merged 28 commits into from
Mar 27, 2020
Merged

Rollup of 5 pull requests #70451

merged 28 commits into from
Mar 27, 2020

Commits on Mar 11, 2020

  1. Fix cycle error when emitting suggestion for mismatched fn type

    Fixes rust-lang#66667
    
    Previously, we called `tcx.typeck_tables_of` when determining whether or
    not to emit a suggestion for a type error. However, we might already be
    type-checking the `DefId` we pass to `typeck_tables_of` (it could be
    anywhere in the query stack).
    
    Fortunately, we only need the function signature, not the entire
    `TypeckTables`. By using `tcx.fn_sig`, we avoid the possibility of cycle
    errors while retaining the ability to emit a suggestion.
    Aaron1011 committed Mar 11, 2020
    Configuration menu
    Copy the full SHA
    ff65bff View commit details
    Browse the repository at this point in the history

Commits on Mar 16, 2020

  1. Configuration menu
    Copy the full SHA
    ef2957d View commit details
    Browse the repository at this point in the history
  2. add comments about safety

    TyPR124 committed Mar 16, 2020
    Configuration menu
    Copy the full SHA
    21975a1 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    cce8ee8 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    16712ed View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    e4a65e8 View commit details
    Browse the repository at this point in the history

Commits on Mar 20, 2020

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

Commits on Mar 24, 2020

  1. Configuration menu
    Copy the full SHA
    f07802c View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    b60d732 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    b3866a5 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    92885e3 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    f1701dd View commit details
    Browse the repository at this point in the history

Commits on Mar 26, 2020

  1. Configuration menu
    Copy the full SHA
    b514c42 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    b2f7a95 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    40a0fdc View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    15346ed View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    9978afb View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    bae1114 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    93ce5ff View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    a8cc89f View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    7108cea View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    fe0e7c3 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    89d6009 View commit details
    Browse the repository at this point in the history

Commits on Mar 27, 2020

  1. Rollup merge of rust-lang#69644 - ecstatic-morse:unified-dataflow-cle…

    …anup, r=eddyb
    
    Remove framework in `dataflow/mod.rs` in favor of "generic" one
    
    This is the culmination of the work described in rust-lang/compiler-team#202. All dataflow analyses (including the one in `clippy`) have been ported to use the framework in `dataflow/generic`, which can efficiently handle both gen/kill and generic problems. This PR moves the framework in `dataflow/generic` to `dataflow/framework`, and removes the gen/kill framework in `dataflow/mod.rs`.
    
    More comprehensive documentation for the new framework is tracked in rust-lang/rustc-dev-guide#564.
    
    `clippy` will need to change the path it uses to import the dataflow analysis traits.
    Dylan-DPC committed Mar 27, 2020
    Configuration menu
    Copy the full SHA
    0f6144a View commit details
    Browse the repository at this point in the history
  2. Rollup merge of rust-lang#69936 - Aaron1011:fix/suggestion-cycle, r=v…

    …arkor
    
    Fix cycle error when emitting suggestion for mismatched `fn` type
    
    Fixes rust-lang#66667
    
    Previously, we called `tcx.typeck_tables_of` when determining whether or
    not to emit a suggestion for a type error. However, we might already be
    type-checking the `DefId` we pass to `typeck_tables_of` (it could be
    anywhere in the query stack).
    
    Fortunately, we only need the function signature, not the entire
    `TypeckTables`. By using `tcx.fn_sig`, we avoid the possibility of cycle
    errors while retaining the ability to emit a suggestion.
    Dylan-DPC committed Mar 27, 2020
    Configuration menu
    Copy the full SHA
    f635c37 View commit details
    Browse the repository at this point in the history
  3. Rollup merge of rust-lang#70048 - TyPR124:mutable_osstr, r=dtolnay

    Allow obtaining &mut OsStr
    
    ```rust
    impl DerefMut for OsString {...}              // type Target = OsStr
    impl IndexMut<RangeFull> for OsString {...}   // type Output = OsStr
    ```
    
    ---
    
    This change is pulled out of rust-lang#69937 per @dtolnay
    
    This implements `DerefMut for OsString` to allow obtaining a `&mut OsStr`. This also implements `IndexMut for OsString`, which is used by `DerefMut`. This pattern is the same as is used by `Deref`.
    
    This is necessary to for methods like `make_ascii_lowercase` which need to mutate the underlying value.
    Dylan-DPC committed Mar 27, 2020
    Configuration menu
    Copy the full SHA
    c0369c4 View commit details
    Browse the repository at this point in the history
  4. Rollup merge of rust-lang#70344 - Centril:hir-pretty, r=eddyb

    Decouple `rustc_hir::print` into `rustc_hir_pretty`
    
    High level summary:
    - The HIR pretty printer, `rustc_hir::print` is moved into a new crate `rustc_hir_pretty`.
    - `rustc_ast_pretty` and `rustc_errors` are dropped as `rustc_hir` dependencies.
    - The dependence on HIR pretty is generally reduced, leaving `rustc_save_analysis`, `rustdoc`, `rustc_metadata`, and `rustc_driver` as the remaining clients.
    
    The main goal here is to reduce `rustc_hir`'s dependencies and its size such that it can start and finish earlier, thereby working towards rust-lang#65031.
    
    r? @Zoxc
    Dylan-DPC committed Mar 27, 2020
    Configuration menu
    Copy the full SHA
    7041efc View commit details
    Browse the repository at this point in the history
  5. Rollup merge of rust-lang#70435 - Alexendoo:test-66706, r=Centril

    Add regression test for rust-lang#66706
    
    Adds the two cases that no longer ICE (rust-lang#66706 (comment))
    Dylan-DPC committed Mar 27, 2020
    Configuration menu
    Copy the full SHA
    fa15774 View commit details
    Browse the repository at this point in the history