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 14 pull requests #73393

Closed
wants to merge 52 commits into from

Commits on May 26, 2020

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

Commits on May 28, 2020

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

Commits on Jun 6, 2020

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

Commits on Jun 7, 2020

  1. Configuration menu
    Copy the full SHA
    5837518 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    d684855 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    b5fdbbe View commit details
    Browse the repository at this point in the history
  4. Preserve expressions that get a DefId

    Namely closures and `async` blocks. We have to make a few modifications
    to closures to make them compile.
    ecstatic-morse committed Jun 7, 2020
    Configuration menu
    Copy the full SHA
    d8c99f3 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    1a30042 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    e319f20 View commit details
    Browse the repository at this point in the history

Commits on Jun 8, 2020

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

Commits on Jun 10, 2020

  1. Add -O compile flag to test

    Amanieu committed Jun 10, 2020
    Configuration menu
    Copy the full SHA
    2af53e9 View commit details
    Browse the repository at this point in the history

Commits on Jun 13, 2020

  1. Configuration menu
    Copy the full SHA
    01e29c7 View commit details
    Browse the repository at this point in the history
  2. Speed up bootstrap a little.

    ehuss committed Jun 13, 2020
    Configuration menu
    Copy the full SHA
    0687b78 View commit details
    Browse the repository at this point in the history

Commits on Jun 14, 2020

  1. Ignore overflow when finding auto-trait impls in Rustdoc

    In rust-lang#72936 (comment),
    it was determined that some unusual code could cause rustc to overflow
    when evaluating a predicate of the form `T: AutoTrait`. Even if this is
    a bug, it will still be possible to cause overflow through writing
    explicit impls of auto traits, just like any other type of impl.
    
    In rustdoc, this overflow can happen simply as a result of defining
    certain types, since we will automatically generate and evaluate
    auto-trait predicates when generating documentation.
    
    For now, we just ignore overflow during selection if it occurs in
    rustdoc. We should probably come up with a better way to handle this -
    e.g. rendering some kind of error in the generated documentation.
    However, this is a very unusual corner case, and this PR is sufficient
    to unblock landing a Chalk update in PR rust-lang#72936
    
    This adds additional hacks to `librustc_trait_selection`. The
    auto-trait-finding code should probably be completely rewritten, but I
    think this is good enough for the time being.
    Aaron1011 committed Jun 14, 2020
    Configuration menu
    Copy the full SHA
    561107c View commit details
    Browse the repository at this point in the history
  2. Switch bootstrap metadata to --no-deps.

    This should run much faster.
    
    There are also some drive-by cleanups here to try to simplify things.
    Also, the paths for in-tree crates are now displayed as relative
    in `x.py test -h -v`.
    ehuss committed Jun 14, 2020
    Configuration menu
    Copy the full SHA
    607e851 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    c2b920f View commit details
    Browse the repository at this point in the history

Commits on Jun 15, 2020

  1. Configuration menu
    Copy the full SHA
    f17fd7b View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    64a6de2 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    9e51008 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    b67bdb5 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    fe7456c View commit details
    Browse the repository at this point in the history
  6. Tweak "non-primitive cast" error

    - Suggest borrowing expression if it would allow cast to work.
    - Suggest using `<Type>::from(<expr>)` when appropriate.
    - Minor tweak to `;` typo suggestion.
    
    Partily address rust-lang#47136.
    estebank committed Jun 15, 2020
    Configuration menu
    Copy the full SHA
    e857696 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    81c9094 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    4e90f17 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    921f35f View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    e755889 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    bc15790 View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    539e978 View commit details
    Browse the repository at this point in the history
  13. review comments: wording

    estebank committed Jun 15, 2020
    Configuration menu
    Copy the full SHA
    31ea589 View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    10d9bf1 View commit details
    Browse the repository at this point in the history
  15. Register new eror code

    estebank committed Jun 15, 2020
    Configuration menu
    Copy the full SHA
    34d8692 View commit details
    Browse the repository at this point in the history
  16. small tweaks

    estebank committed Jun 15, 2020
    Configuration menu
    Copy the full SHA
    e31367d View commit details
    Browse the repository at this point in the history
  17. Configuration menu
    Copy the full SHA
    f7a1f97 View commit details
    Browse the repository at this point in the history
  18. fix rebase

    estebank committed Jun 15, 2020
    Configuration menu
    Copy the full SHA
    bfe1434 View commit details
    Browse the repository at this point in the history
  19. Configuration menu
    Copy the full SHA
    a4337cc View commit details
    Browse the repository at this point in the history
  20. Configuration menu
    Copy the full SHA
    fc13fd0 View commit details
    Browse the repository at this point in the history
  21. Configuration menu
    Copy the full SHA
    b34a417 View commit details
    Browse the repository at this point in the history
  22. Fix typo in docs of std::mem

    ratijas committed Jun 15, 2020
    Configuration menu
    Copy the full SHA
    71c54db View commit details
    Browse the repository at this point in the history

Commits on Jun 16, 2020

  1. Rollup merge of rust-lang#72628 - MikailBag:array-default-tests, r=sh…

    …epmaster
    
    Add tests for 'impl Default for [T; N]'
    
    Related: rust-lang#71690.
    This pull request adds two tests:
    - Even it T::default() panics, no leaks occur.
    - [T; 0] is Default even if T is not.
    
    I believe at some moment `Default` impl for arrays will be rewritten to use const generics instead of macros, and these tests will help to prevent behavior changes.
    Manishearth committed Jun 16, 2020
    Configuration menu
    Copy the full SHA
    6dbc959 View commit details
    Browse the repository at this point in the history
  2. Rollup merge of rust-lang#72804 - estebank:opaque-missing-lts-in-fn-2…

    …, r=nikomatsakis
    
    Further tweak lifetime errors involving `dyn Trait` and `impl Trait` in return position
    
    * Suggest substituting `'static` lifetime in impl/dyn `Trait + 'static` instead of `Trait + 'static + '_`
    * When `'static` is explicit, also suggest constraining argument with it
    * Reduce verbosity of suggestion message and mention lifetime in label
    * Tweak output for overlapping required/captured spans
    * Give these errors an error code
    
    Follow up to rust-lang#72543.
    
    r? @nikomatsakis
    Manishearth committed Jun 16, 2020
    Configuration menu
    Copy the full SHA
    a23b4f5 View commit details
    Browse the repository at this point in the history
  3. Rollup merge of rust-lang#72836 - poliorcetics:std-time-os-specificit…

    …ies, r=shepmaster
    
    Complete the std::time documentation to warn about the inconsistencies between OS
    
    Fix for rust-lang#48980.
    
    I put the new documentation in `src/libstd/time.rs` at the module-level because it affects all types, even the one that are not directly system dependents if they are used with affected types, but there may be a better place for it.
    Manishearth committed Jun 16, 2020
    Configuration menu
    Copy the full SHA
    11e9796 View commit details
    Browse the repository at this point in the history
  4. Rollup merge of rust-lang#73065 - Amanieu:tls-fix, r=oli-obk

    Fix link error with #[thread_local] introduced by rust-lang#71192
    
    r? @oli-obk
    Manishearth committed Jun 16, 2020
    Configuration menu
    Copy the full SHA
    37bc4b2 View commit details
    Browse the repository at this point in the history
  5. Rollup merge of rust-lang#73103 - ecstatic-morse:replace-body-with-lo…

    …op, r=pnkfelix
    
    Preserve `Expr`s that have `DefId`s in `ReplaceBodyWithLoop`
    
    This PR fixes rust-lang#71820 as well as the last part of rust-lang#71104 by preserving expressions that are assigned their own `DefId`s (closures and `async` blocks) when passing them to `rustdoc`. This avoids having a `DefId` without a corresponding `HirId`.
    
    The first commit in this PR makes `-Zunpretty=everybody_loops` actually work again, and the subsequent two are miscellaneous cleanup. They should probably get merged regardless of what we end up doing here.
    
    Sample input:
    ```rust
    fn foo() -> Box<i32> {
        let x = |a: i64| {
            const FOO: i64 = 1;
        };
    
        let a = 4;
        Box::new(a)
    }
    ```
    
    Sample output:
    ```rust
    fn foo() -> Box<i32> {
        || -> !
            {
                const FOO: i64 = 1;
                loop  { }
            };
        loop  { }
    }
    ```
    
    r? @ghost
    Manishearth committed Jun 16, 2020
    Configuration menu
    Copy the full SHA
    2692953 View commit details
    Browse the repository at this point in the history
  6. Rollup merge of rust-lang#73142 - ehuss:std-benches, r=dtolnay

    Ensure std benchmarks get tested.
    
    This ensures that the std benchmarks don't break in the future. Currently they aren't compiled or tested on CI, so they can easily bitrot.  Testing a benchmark runs it with one iteration. Adding these should only add a few seconds to CI.
    
    Closes rust-lang#54176
    Closes rust-lang#61913
    Manishearth committed Jun 16, 2020
    Configuration menu
    Copy the full SHA
    6f2c37a View commit details
    Browse the repository at this point in the history
  7. Rollup merge of rust-lang#73335 - Aaron1011:fix/rustdoc-overflow, r=e…

    …stebank
    
    Ignore overflow when finding auto-trait impls in Rustdoc
    
    In rust-lang#72936 (comment),
    it was determined that some unusual code could cause rustc to overflow
    when evaluating a predicate of the form `T: AutoTrait`. Even if this is
    a bug, it will still be possible to cause overflow through writing
    explicit impls of auto traits, just like any other type of impl.
    
    In rustdoc, this overflow can happen simply as a result of defining
    certain types, since we will automatically generate and evaluate
    auto-trait predicates when generating documentation.
    
    For now, we just ignore overflow during selection if it occurs in
    rustdoc. We should probably come up with a better way to handle this -
    e.g. rendering some kind of error in the generated documentation.
    However, this is a very unusual corner case, and this PR is sufficient
    to unblock landing a Chalk update in PR rust-lang#72936
    
    This adds additional hacks to `librustc_trait_selection`. The
    auto-trait-finding code should probably be completely rewritten, but I
    think this is good enough for the time being.
    Manishearth committed Jun 16, 2020
    Configuration menu
    Copy the full SHA
    a29bcb5 View commit details
    Browse the repository at this point in the history
  8. Rollup merge of rust-lang#73352 - ehuss:bootstrap-metadata, r=Mark-Si…

    …mulacrum
    
    Speed up bootstrap a little.
    
    The bootstrap script was calling `cargo metadata` 3 times (or 6 with `-v`). This is a very expensive operation, and this attempts to avoid the extra calls. On my system, a simple command like `./x.py test -h -v` goes from about 3 seconds to 0.4.
    
    An overview of the changes:
    
    - Call `cargo metadata` only once with `--no-deps`. Optional dependencies are filtered in `in_tree_crates` (handling `profiler_builtins` and `rustc_codegen_llvm` which are driven by the config).
    - Remove a duplicate call to `metadata::build` when using `-v`. I'm not sure why it was there, it looks like a mistake or vestigial from previous behavior.
    - Remove check for `_shim`, I believe all the `_shim` crates are now gone.
    - Remove check for `rustc_` and `*san` for `test::Crate::should_run`, these are no longer dependencies in the `test` tree.
    - Use relative paths in `./x.py test -h -v` output.
    - Some code cleanup (remove unnecessary `find_compiler_crates`, etc.).
    - Show suite paths (`src/test/ui/...`) in `./x.py test -h -v` output.
    - Some doc comments.
    Manishearth committed Jun 16, 2020
    Configuration menu
    Copy the full SHA
    1aa70c5 View commit details
    Browse the repository at this point in the history
  9. Rollup merge of rust-lang#73357 - petrochenkov:tmap, r=davidtwco

    Use `LocalDefId` for import IDs in trait map
    
    cc rust-lang#73291 (comment)
    Manishearth committed Jun 16, 2020
    Configuration menu
    Copy the full SHA
    788c41a View commit details
    Browse the repository at this point in the history
  10. Rollup merge of rust-lang#73361 - estebank:non-primitive-cast, r=davi…

    …dtwco
    
    Tweak "non-primitive cast" error
    
    - Suggest borrowing expression if it would allow cast to work.
    - Suggest using `<Type>::from(<expr>)` when appropriate.
    - Minor tweak to `;` typo suggestion.
    
    Partily address rust-lang#47136.
    Manishearth committed Jun 16, 2020
    Configuration menu
    Copy the full SHA
    f233e26 View commit details
    Browse the repository at this point in the history
  11. Rollup merge of rust-lang#73372 - GuillaumeGomez:re-order-sidebar-sec…

    …tions, r=kinnison
    
    Re-order correctly the sections in the sidebar
    
    Before that, "trait implementations" and "implementors" titles in the sidebar were before "methods" for example. Which wasn't logical considering that the two sections come after in the "content".
    
    r? @kinnison
    Manishearth committed Jun 16, 2020
    Configuration menu
    Copy the full SHA
    8b28a7b View commit details
    Browse the repository at this point in the history
  12. Rollup merge of rust-lang#73373 - lzutao:bug-trackcaller, r=Amanieu

    Use track caller for bug! macro
    Manishearth committed Jun 16, 2020
    Configuration menu
    Copy the full SHA
    7f2e169 View commit details
    Browse the repository at this point in the history
  13. Rollup merge of rust-lang#73380 - pnkfelix:make-bootstrap-help-print-…

    …num-cpus, r=Mark-Simulacrum
    
    Add more info to `x.py build --help` on default value for `-j JOBS`.
    Manishearth committed Jun 16, 2020
    Configuration menu
    Copy the full SHA
    fdde082 View commit details
    Browse the repository at this point in the history
  14. Rollup merge of rust-lang#73381 - ratijas:fix-typo-std-mem, r=jonas-s…

    …chievink
    
    Fix typo in docs of std::mem
    Manishearth committed Jun 16, 2020
    Configuration menu
    Copy the full SHA
    01f32ee View commit details
    Browse the repository at this point in the history