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 3 pull requests #64491

Merged
merged 12 commits into from
Sep 16, 2019
Merged

Rollup of 3 pull requests #64491

merged 12 commits into from
Sep 16, 2019

Commits on Aug 24, 2019

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

Commits on Sep 13, 2019

  1. save-analysis: Nest typeck tables when processing functions/methods

    Fixes an issue where we did not nest tables correctly when resolving
    associated types in formal argument/return type positions
    Xanewok committed Sep 13, 2019
    Configuration menu
    Copy the full SHA
    ab73b32 View commit details
    Browse the repository at this point in the history
  2. Always validate HIR ID for TypeckTables

    Performance shouldn't be impacted (see [1] for a perf run) and this
    should allow us to catch more bugs, e.g. [2] and [3].
    
    [1]: rust-lang#64262
    [2]: rust-lang#64250
    [3]: rust-lang#57298
    Xanewok committed Sep 13, 2019
    Configuration menu
    Copy the full SHA
    b456c82 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    6117faa View commit details
    Browse the repository at this point in the history
  4. save-analysis: Use process_bounds when processing opaque impl item type

    ...since the code is literally the same and does the same thing.
    Xanewok committed Sep 13, 2019
    Configuration menu
    Copy the full SHA
    b4151dd View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    0fafd61 View commit details
    Browse the repository at this point in the history

Commits on Sep 14, 2019

  1. Configuration menu
    Copy the full SHA
    30e39e8 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    a946b8d View commit details
    Browse the repository at this point in the history
  3. Don't mark expression with attributes as not needing parentheses

    This is not perfectly correct as `#[attr] (5)` will still not lint, but
    it does seem good enough, in particular as the parentheses in that case
    are not unambiguously incorrect.
    Mark-Simulacrum committed Sep 14, 2019
    Configuration menu
    Copy the full SHA
    1d33f06 View commit details
    Browse the repository at this point in the history

Commits on Sep 15, 2019

  1. Rollup merge of rust-lang#63872 - marmistrz:readdir, r=jonas-schievink

    Document platform-specific behavior of the iterator returned by std::fs::read_dir
    Centril committed Sep 15, 2019
    Configuration menu
    Copy the full SHA
    0a2e07e View commit details
    Browse the repository at this point in the history
  2. Rollup merge of rust-lang#64250 - Xanewok:save-analysis-assoc-nested,…

    … r=varkor
    
    save-analysis: Nest typeck tables when processing functions/methods
    
    Fixes an issue where we did not nest tables correctly when resolving
    associated types in formal argument/return type positions.
    
    This was the minimized reproduction case that I tested the fix on:
    ```rust
    pub trait Trait {
        type Assoc;
    }
    
    pub struct A;
    
    pub fn func() {
        fn _inner1<U: Trait>(_: U::Assoc) {}
        fn _inner2<U: Trait>() -> U::Assoc { unimplemented!() }
    
        impl A {
            fn _inner1<U: Trait>(self, _: U::Assoc) {}
            fn _inner2<U: Trait>(self) -> U::Assoc { unimplemented!() }
        }
    }
    ```
    using `debug_assertions`-enabled rustc and by additionally passing `-Zsave-analysis`.
    
    Unfortunately the original assertion fired is a *debug* one and from what I can tell we don't run the tests with these on, so I'm not adding a test here. If I missed it and there is a way to run tests with these on, I'd love to add a test case for this.
    
    Closes rust-lang#63663
    Closes rust-lang#50328
    Closes rust-lang#43982
    Centril committed Sep 15, 2019
    Configuration menu
    Copy the full SHA
    2e11e81 View commit details
    Browse the repository at this point in the history
  3. Rollup merge of rust-lang#64472 - Mark-Simulacrum:unused-parens-attr,…

    … r=varkor
    
    Don't mark expression with attributes as not needing parentheses
    
    This is not perfectly correct as `#[attr] (5)` will still not lint, but it does seem good enough, in particular as the parentheses in that case are not unambiguously incorrect; I might personally prefer to see them for clarity.
    
    Fixes rust-lang#43279.
    Centril committed Sep 15, 2019
    Configuration menu
    Copy the full SHA
    0592d13 View commit details
    Browse the repository at this point in the history