Skip to content
This repository has been archived by the owner on Jan 7, 2022. It is now read-only.

Sync upstream 20201109 #142

Merged
merged 3,681 commits into from
Nov 10, 2020
Merged

Sync upstream 20201109 #142

merged 3,681 commits into from
Nov 10, 2020
This pull request is big! We’re only showing the most recent 250 commits.

Commits on Nov 3, 2020

  1. Auto merge of #6101 - pitiK3U:from_iter_instead_of_collect, r=flip1995

    Add lint: from_iter_instead_of_collect
    
    Fixes #5679
    
    This implements lint for `::from_iter()` from #5679 not the general issue (`std::ops::Add::add`, etc.).
    This lint checks if expression is function call with `from_iter` name and if it's implementation of the `std::iter::FromIterator` trait.
    
    changelog: Introduce  from_iter_instead_of_collect lint
    bors committed Nov 3, 2020
    Configuration menu
    Copy the full SHA
    a2bf404 View commit details
    Browse the repository at this point in the history
  2. Print a summary of which test suite failed

    Especially on CI, where cross-compiling is common and single builder may end up
    with multiple hosts and multiple targets, it can be annoying to scroll back to
    the nearest start of test marker. This prints out a summary of the test suite
    being run directly in compiletest.
    Mark-Simulacrum committed Nov 3, 2020
    Configuration menu
    Copy the full SHA
    f289a87 View commit details
    Browse the repository at this point in the history
  3. Auto merge of #6165 - dvermd:ref_option_ref, r=flip1995

    Add lint 'ref_option_ref' #1377
    
    This lint checks for usage of `&Option<&T>` which can be simplified as `Option<&T>` as suggested in #1377.
    
    This WIP PR is here to get feedback on the lint as there's more cases to be handled:
    * statics/consts,
    * associated types,
    * type alias,
    * function/method parameter/return,
    * ADT definitions (struct/tuple struct fields, enum variants)
    
    changelog: Add 'ref_option_ref' lint
    bors committed Nov 3, 2020
    Configuration menu
    Copy the full SHA
    2fe87a8 View commit details
    Browse the repository at this point in the history
  4. Auto merge of #76931 - oli-obk:const_prop_inline_lint_madness, r=wesl…

    …eywiser
    
    Properly handle lint spans after MIR inlining
    
    The first commit shows what happens when we apply mir inlining and then cause lints on the inlined MIR.
    The second commit fixes that.
    
    r? `@wesleywiser`
    bors committed Nov 3, 2020
    Configuration menu
    Copy the full SHA
    5cdf5b8 View commit details
    Browse the repository at this point in the history
  5. Auto merge of #6233 - montrivo:manual_ok_or, r=flip1995

    add manual_ok_or lint
    
    Implements partially #5923
    
    changelog: add lint manual_ok_or
    bors committed Nov 3, 2020
    Configuration menu
    Copy the full SHA
    225ce5f View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    2172adb View commit details
    Browse the repository at this point in the history
  7. Rollup merge of #77950 - arlosi:sha256, r=eddyb

    Add support for SHA256 source file hashing
    
    Adds support for `-Z src-hash-algorithm sha256`, which became available in LLVM 11.
    
    Using an older version of LLVM will cause an error `invalid checksum kind` if the hash algorithm is set to sha256.
    
    r? `@eddyb`
    cc #70401 `@est31`
    m-ou-se committed Nov 3, 2020
    Configuration menu
    Copy the full SHA
    52405f7 View commit details
    Browse the repository at this point in the history
  8. Rollup merge of #78624 - bjorn3:update_cg_clif-2020-11-01, r=jyn514

    Sync rustc_codegen_cranelift
    
    This fixes bootstrapping of rustc using cg_clif again. It regressed a while before #77975 got merged.
    
    Fixes https://github.com/bjorn3/rustc_codegen_cranelift/issues/743
    m-ou-se committed Nov 3, 2020
    Configuration menu
    Copy the full SHA
    39f5563 View commit details
    Browse the repository at this point in the history
  9. Rollup merge of #78626 - fusion-engineering-forks:deprecated-trait-im…

    …pl, r=estebank
    
    Improve errors about #[deprecated] attribute
    
    This change:
    
    1. Turns `#[deprecated]` on a trait impl block into an error, which fixes #78625;
    2. Changes these and other errors about `#[deprecated]` to use the span of the attribute instead of the item; and
    3. Turns this error into a lint, to make sure it can be capped with `--cap-lints` and doesn't break any existing dependencies.
    
    Can be reviewed per commit.
    
    ---
    Example:
    ```rust
    struct X;
    
    #[deprecated = "a"]
    impl Default for X {
        #[deprecated = "b"]
        fn default() -> Self {
            X
        }
    }
    ```
    
    Before:
    ```
    error: This deprecation annotation is useless
     --> src/main.rs:6:5
      |
    6 | /     fn default() -> Self {
    7 | |         X
    8 | |     }
      | |_____^
    ```
    
    After:
    ```
    error: this `#[deprecated]' annotation has no effect
     --> src/main.rs:3:1
      |
    3 | #[deprecated = "a"]
      | ^^^^^^^^^^^^^^^^^^^ help: try removing the deprecation attribute
      |
      = note: `#[deny(useless_deprecated)]` on by default
    
    error: this `#[deprecated]' annotation has no effect
     --> src/main.rs:5:5
      |
    5 |     #[deprecated = "b"]
      |     ^^^^^^^^^^^^^^^^^^^ help: try removing the deprecation attribute
    ```
    m-ou-se committed Nov 3, 2020
    Configuration menu
    Copy the full SHA
    f011292 View commit details
    Browse the repository at this point in the history
  10. Rollup merge of #78659 - ayrtonm:fn-ref-lint-fix, r=oli-obk

    Corrected suggestion for generic parameters in `function_item_references` lint
    
    This commit handles functions with generic type parameters like you pointed out as well as const generics. Also this is probably a minor thing, but the type alias you used in the example doesn't show up so the suggestion right now would be `size_of::<[u8; 16]> as fn() ->`. This is because the lint checker works with MIR instead of HIR. I don't think we can get the alias at that point, but let me know if I'm wrong and there's a way to fix this. Also I put you as the reviewer, but I'm not sure if you want to review it or if it makes more sense to ask one of the original reviewers of this lint.
    closes #78571
    m-ou-se committed Nov 3, 2020
    Configuration menu
    Copy the full SHA
    f347dab View commit details
    Browse the repository at this point in the history
  11. Rollup merge of #78687 - jyn514:bootstrap-help, r=Mark-Simulacrum

    Suggest library/std when running all stage 0 tests
    
    r? ``@Mark-Simulacrum``
    cc ``@ijackson``
    
    For context, this came out of a discord conversation where ``@ijackson`` was running `test --stage 1` when they were only adding doc-tests to the standard library.
    m-ou-se committed Nov 3, 2020
    Configuration menu
    Copy the full SHA
    8a1f9e0 View commit details
    Browse the repository at this point in the history
  12. Rollup merge of #78699 - pietroalbini:lldb-error, r=jyn514

    Show more error information in lldb_batchmode
    
    Even more information to try and debug #78665.
    m-ou-se committed Nov 3, 2020
    Configuration menu
    Copy the full SHA
    f9dd8d3 View commit details
    Browse the repository at this point in the history
  13. Rollup merge of #78709 - ehuss:fix-in_tree_crates-non-member, r=Mark-…

    …Simulacrum
    
    Fix panic in bootstrap for non-workspace path dependencies.
    
    If you add a `path` dependency to a `Cargo.toml` that is located outside of the workspace, then the `in_tree_crates` function can panic because it finds a path dependency that is not defined (since it uses `cargo metadata --no-deps`).  This fixes it by skipping over those entries, which are usually not things you select on the command-line.
    
    Fixes #78617
    m-ou-se committed Nov 3, 2020
    Configuration menu
    Copy the full SHA
    a65507b View commit details
    Browse the repository at this point in the history
  14. Auto merge of #78711 - m-ou-se:rollup-pxqnny7, r=m-ou-se

    Rollup of 7 pull requests
    
    Successful merges:
    
     - #77950 (Add support for SHA256 source file hashing)
     - #78624 (Sync rustc_codegen_cranelift)
     - #78626 (Improve errors about #[deprecated] attribute)
     - #78659 (Corrected suggestion for generic parameters in `function_item_references` lint)
     - #78687 (Suggest library/std when running all stage 0 tests)
     - #78699 (Show more error information in lldb_batchmode)
     - #78709 (Fix panic in bootstrap for non-workspace path dependencies.)
    
    Failed merges:
    
    r? `@ghost`
    `@rustbot` modify labels: rollup
    bors committed Nov 3, 2020
    Configuration menu
    Copy the full SHA
    5629309 View commit details
    Browse the repository at this point in the history
  15. Configuration menu
    Copy the full SHA
    cf2043d View commit details
    Browse the repository at this point in the history

Commits on Nov 4, 2020

  1. Configuration menu
    Copy the full SHA
    5801109 View commit details
    Browse the repository at this point in the history
  2. Add a tool to run x.py from any subdirectory

    This adds a binary called `x` in `src/tools/x`. All it does is check the
    current directory and its ancestors for a file called `x.py`, and if it
    finds one, runs it.
    
    By installing x, you can easily `x.py` from any subdirectory.
    
    It can be installed globally with `cargo install --path src/tools/x`
    casey committed Nov 4, 2020
    Configuration menu
    Copy the full SHA
    5fc22f1 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    c9d9359 View commit details
    Browse the repository at this point in the history
  4. Auto merge of #6270 - ClashTheBunny:clarify_allow_deny_enable_disable…

    …, r=flip1995
    
    Clarify allow/warn/deny documentation.  Remove enable/disable.
    
    Disable and enable when not specifically explained were not clear to me
    as an English language speaker, but I was able to figure it out fairly
    easily due to the examples having A/W, which I assumed meant `allow` and
    `warn`.  I removed both words to be sure it was clear as well as
    extending the note on what deny means.  It now includes a statement on
    exactly what each word means.
    
    Documentation only update.
    
    *Please keep the line below*
    changelog: none
    bors committed Nov 4, 2020
    Configuration menu
    Copy the full SHA
    3a34bc0 View commit details
    Browse the repository at this point in the history
  5. Auto merge of #6284 - camsteffen:rustc-sym, r=flip1995

    Use const sym where possible
    
    I ran a regex search and replace to use const `sym` values where possible. This should give some performance boost by avoiding string interning at runtime.
    
    Con: It is not as consistent as always using `sym!`.
    
    I also changed an internal lint to suggest using `sym::{}`, making an assumption that this will always work for diagnostic items.
    
    changelog: none
    bors committed Nov 4, 2020
    Configuration menu
    Copy the full SHA
    c2cf40c View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    362123d View commit details
    Browse the repository at this point in the history
  7. Encode ScalarInt::bytes as u128 instead of [u8; 16] to see if t…

    …hat caused the performance regression
    oli-obk committed Nov 4, 2020
    Configuration menu
    Copy the full SHA
    eac3099 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    ed7a4ad View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    6fdbde5 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    8db2bf2 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    02131f4 View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    c478574 View commit details
    Browse the repository at this point in the history
  13. Fix cranelift build

    oli-obk committed Nov 4, 2020
    Configuration menu
    Copy the full SHA
    3a79708 View commit details
    Browse the repository at this point in the history
  14. s/Scalar::Raw/Scalar::Int

    oli-obk committed Nov 4, 2020
    Configuration menu
    Copy the full SHA
    df4d717 View commit details
    Browse the repository at this point in the history
  15. s/Scalar::Raw/Scalar::Int

    oli-obk committed Nov 4, 2020
    Configuration menu
    Copy the full SHA
    83edb2f View commit details
    Browse the repository at this point in the history
  16. Remove outdated FIXME

    oli-obk committed Nov 4, 2020
    Configuration menu
    Copy the full SHA
    e5258e6 View commit details
    Browse the repository at this point in the history
  17. Configuration menu
    Copy the full SHA
    1eb300e View commit details
    Browse the repository at this point in the history
  18. Update comment

    oli-obk committed Nov 4, 2020
    Configuration menu
    Copy the full SHA
    3ef9dfd View commit details
    Browse the repository at this point in the history
  19. Configuration menu
    Copy the full SHA
    b8751c1 View commit details
    Browse the repository at this point in the history
  20. Configuration menu
    Copy the full SHA
    8282d52 View commit details
    Browse the repository at this point in the history
  21. Configuration menu
    Copy the full SHA
    d1074ed View commit details
    Browse the repository at this point in the history
  22. Configuration menu
    Copy the full SHA
    0347ca7 View commit details
    Browse the repository at this point in the history
  23. Add is_null helper

    This is cheaper than creating a null-`ScalarInt` and comparing
    and then just throwing it away.
    oli-obk committed Nov 4, 2020
    Configuration menu
    Copy the full SHA
    f03b18b View commit details
    Browse the repository at this point in the history
  24. Configuration menu
    Copy the full SHA
    500af76 View commit details
    Browse the repository at this point in the history
  25. Configuration menu
    Copy the full SHA
    dad0036 View commit details
    Browse the repository at this point in the history
  26. Simplify assert_bits impl

    oli-obk committed Nov 4, 2020
    Configuration menu
    Copy the full SHA
    98b70c9 View commit details
    Browse the repository at this point in the history
  27. Update compiler/rustc_middle/src/ty/consts/int.rs

    Co-authored-by: Ralf Jung <post@ralfj.de>
    oli-obk and RalfJung committed Nov 4, 2020
    Configuration menu
    Copy the full SHA
    cb1cf6a View commit details
    Browse the repository at this point in the history
  28. Configuration menu
    Copy the full SHA
    e67c768 View commit details
    Browse the repository at this point in the history
  29. Constantify UnsafeCell::into_inner and related

    Also includes:
    - Cell::into_inner
    - RefCell::into_inner
    - Atomic*::into_inner
    a1phyr committed Nov 4, 2020
    Configuration menu
    Copy the full SHA
    9a12d72 View commit details
    Browse the repository at this point in the history
  30. Add tracking issue

    a1phyr committed Nov 4, 2020
    Configuration menu
    Copy the full SHA
    795bbfe View commit details
    Browse the repository at this point in the history
  31. Configuration menu
    Copy the full SHA
    340c94a View commit details
    Browse the repository at this point in the history
  32. Fix outdated comment next to array_impl_default

    The comment has become outdated as the array_impl macro
    has been removed.
    est31 committed Nov 4, 2020
    Configuration menu
    Copy the full SHA
    93fa023 View commit details
    Browse the repository at this point in the history
  33. Auto merge of #78677 - Aaron1011:fix/capture-inner-attrs, r=petrochenkov

    Use reparsed `TokenStream` if we captured any inner attributes
    
    Fixes #78675
    
    We now bail out of `prepend_attrs` if we ended up capturing any inner
    attributes (which can happen in several places, due to token capturing
    for `macro_rules!` arguments.
    bors committed Nov 4, 2020
    Configuration menu
    Copy the full SHA
    601c13c View commit details
    Browse the repository at this point in the history
  34. fix a couple of clippy warnings:

    filter_next
    manual_strip
    redundant_static_lifetimes
    single_char_pattern
    unnecessary_cast
    unused_unit
    op_ref
    redundant_closure
    useless_conversion
    matthiaskrgr committed Nov 4, 2020
    Configuration menu
    Copy the full SHA
    bcd2f2d View commit details
    Browse the repository at this point in the history
  35. Configuration menu
    Copy the full SHA
    abacaf2 View commit details
    Browse the repository at this point in the history
  36. Document an unwrap

    oli-obk committed Nov 4, 2020
    Configuration menu
    Copy the full SHA
    2e53625 View commit details
    Browse the repository at this point in the history
  37. Configuration menu
    Copy the full SHA
    69e5729 View commit details
    Browse the repository at this point in the history
  38. Configuration menu
    Copy the full SHA
    97bfff1 View commit details
    Browse the repository at this point in the history
  39. u64::try_from will now fail if ScalarInt isn't exactly 64 bits, t…

    …hus we use `to_bits` with the correct size
    oli-obk committed Nov 4, 2020
    Configuration menu
    Copy the full SHA
    6e6c8a8 View commit details
    Browse the repository at this point in the history
  40. Update compiler/rustc_target/src/abi/mod.rs

    Co-authored-by: Ralf Jung <post@ralfj.de>
    oli-obk and RalfJung committed Nov 4, 2020
    Configuration menu
    Copy the full SHA
    5f087f0 View commit details
    Browse the repository at this point in the history
  41. Update compiler/rustc_target/src/abi/mod.rs

    Co-authored-by: Ralf Jung <post@ralfj.de>
    oli-obk and RalfJung committed Nov 4, 2020
    Configuration menu
    Copy the full SHA
    332750f View commit details
    Browse the repository at this point in the history
  42. Auto merge of #77227 - oli-obk:const_val_🌳_prelude, r=RalfJung

    Refactorings in preparation for const value trees
    
    cc #72396
    
    This PR changes the `Scalar::Bits { data: u128, size: u8 }` variant to `Scalar::Bits(ScalarInt)` where `ScalarInt` contains the same information, but is `repr(packed)`. The reason for using a packed struct is to allow enum variant packing to keep the original size of `Scalar` instead of adding another word to its size due to padding.
    Other than that the PR just gets rid of all the inspection of the internal fields of `Scalar::Bits` which were frankly scary. These fields have invariants that we need to uphold and we can't do that without making the fields private.
    
    r? `@ghost`
    bors committed Nov 4, 2020
    Configuration menu
    Copy the full SHA
    75f1db1 View commit details
    Browse the repository at this point in the history
  43. Configuration menu
    Copy the full SHA
    232b9ba View commit details
    Browse the repository at this point in the history
  44. Fix issue 78654.

    hameerabbasi committed Nov 4, 2020
    Configuration menu
    Copy the full SHA
    a70e0c2 View commit details
    Browse the repository at this point in the history
  45. Auto merge of #78280 - bugadani:span, r=lcnr

    Codegen: Query span as late as possible
    bors committed Nov 4, 2020
    Configuration menu
    Copy the full SHA
    8963166 View commit details
    Browse the repository at this point in the history
  46. Configuration menu
    Copy the full SHA
    bd7229d View commit details
    Browse the repository at this point in the history
  47. Auto merge of #78740 - pietroalbini:no-more-legacy, r=Mark-Simulacrum

    Remove legacy promote-release support from build-manifestg
    
    Now that we're not running the [legacy `promote-release`](https://github.com/rust-lang/rust-central-station/tree/master/promote-release) anymore, this PR removes support from it from `bootstrap` and `build-manifest`.
    
    r? `@Mark-Simulacrum`
    bors committed Nov 4, 2020
    Configuration menu
    Copy the full SHA
    f2bbdd0 View commit details
    Browse the repository at this point in the history
  48. Configuration menu
    Copy the full SHA
    834ad5c View commit details
    Browse the repository at this point in the history
  49. Run cargo dev fmt

    ebroto committed Nov 4, 2020
    Configuration menu
    Copy the full SHA
    f5166e8 View commit details
    Browse the repository at this point in the history
  50. Auto merge of #6292 - ebroto:rustup, r=ebroto

    Rustup
    
    changelog: none
    
    r? `@ghost`
    bors committed Nov 4, 2020
    Configuration menu
    Copy the full SHA
    62c0d29 View commit details
    Browse the repository at this point in the history
  51. Auto merge of #5911 - hegza:issue-568, r=ebroto

    Add lint for 'field_reassign_with_default` #568
    
    changelog: Add lint for field_reassign_with_default that checks if mutable object + field modification is used to edit a binding initialized with Default::default() instead of struct constructor.
    
    Fixes #568
    
    Notes:
    - Checks for reassignment of one or more fields of a binding initialized with Default::default().
    - Implemented using EarlyLintPass, might be future proofed better with LateLintPass.
    - Does not trigger if Default::default() is used via another type implementing Default.
    - This is a re-open of [PR#4761](rust-lang/rust-clippy#4761), but I couldn't figure out how to re-open that one so here's a new one with the requested changes :S
    bors committed Nov 4, 2020
    Configuration menu
    Copy the full SHA
    5b52474 View commit details
    Browse the repository at this point in the history
  52. Auto merge of #6247 - giraffate:fix_suggestion_to_add_space_in_unused…

    …_unit, r=ebroto
    
    Fix suggestion to add unneeded space in `unused_unit`
    
    Fix rust-lang/rust-clippy#6230
    
    changelog: Fix suggestion to add unneeded space in `unused_unit`
    bors committed Nov 4, 2020
    Configuration menu
    Copy the full SHA
    0d2f1ae View commit details
    Browse the repository at this point in the history
  53. Auto merge of #78662 - sexxi-goose:add_expr_id_to_delegate, r=nikomat…

    …sakis
    
    Provide diagnostic suggestion in ExprUseVisitor Delegate
    
    The [Delegate trait](https://github.com/rust-lang/rust/blob/981346fc07dd5ef414c5b1b21999f7604cece006/compiler/rustc_typeck/src/expr_use_visitor.rs#L28-L38) currently use `PlaceWithHirId` which is composed of Hir `Place` and the
    corresponding expression id.
    
    Even though this is an accurate way of expressing how a Place is used,
    it can cause confusion during diagnostics.
    
    Eg:
    
    ```
    let arr : [String; 5];
    
    let [a, ...]     =   arr;
     ^^^ E1 ^^^      =  ^^E2^^
     ```
    
     Here `arr` is moved because of the binding created E1. However, when we
     point to E1 in diagnostics with the message `arr` was moved, it can be
     confusing.  Rather we would like to report E2 to the user.
    
     Closes: rust-lang/project-rfc-2229#20
    
    r? `@ghost`
    bors committed Nov 4, 2020
    Configuration menu
    Copy the full SHA
    0fb0025 View commit details
    Browse the repository at this point in the history
  54. Auto merge of #78662 - sexxi-goose:add_expr_id_to_delegate, r=nikomat…

    …sakis
    
    Provide diagnostic suggestion in ExprUseVisitor Delegate
    
    The [Delegate trait](https://github.com/rust-lang/rust/blob/981346fc07dd5ef414c5b1b21999f7604cece006/compiler/rustc_typeck/src/expr_use_visitor.rs#L28-L38) currently use `PlaceWithHirId` which is composed of Hir `Place` and the
    corresponding expression id.
    
    Even though this is an accurate way of expressing how a Place is used,
    it can cause confusion during diagnostics.
    
    Eg:
    
    ```
    let arr : [String; 5];
    
    let [a, ...]     =   arr;
     ^^^ E1 ^^^      =  ^^E2^^
     ```
    
     Here `arr` is moved because of the binding created E1. However, when we
     point to E1 in diagnostics with the message `arr` was moved, it can be
     confusing.  Rather we would like to report E2 to the user.
    
     Closes: rust-lang/project-rfc-2229#20
    
    r? `@ghost`
    bors committed Nov 4, 2020
    Configuration menu
    Copy the full SHA
    0c1531a View commit details
    Browse the repository at this point in the history
  55. ci: bump actions/checkout to version 2

    This was recommended by GitHub Support to try reducing the things that
    could've caused #78743. I checked the changelog and there should be no
    practical impact for us (we already set an explicit fetch-depth).
    pietroalbini committed Nov 4, 2020
    Configuration menu
    Copy the full SHA
    308dbdd View commit details
    Browse the repository at this point in the history
  56. Move f64::NAN ui tests into library

    chansuke committed Nov 4, 2020
    Configuration menu
    Copy the full SHA
    5855fb7 View commit details
    Browse the repository at this point in the history
  57. Fix format

    chansuke committed Nov 4, 2020
    Configuration menu
    Copy the full SHA
    97d5a1b View commit details
    Browse the repository at this point in the history

Commits on Nov 5, 2020

  1. inliner: Copy unevaluated constants only after successful inlining

    Inliner copies the unevaluated constants from the callee body to the
    caller at the point where decision to inline is yet to be made. The
    constants will be unnecessary if inlining were to fail.
    
    Organize the code moving items from callee to the caller together in one
    place to avoid the issue.
    tmiasko committed Nov 5, 2020
    Configuration menu
    Copy the full SHA
    6ca43ac View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    d8afe98 View commit details
    Browse the repository at this point in the history
  3. Update cargo

    ehuss committed Nov 5, 2020
    Configuration menu
    Copy the full SHA
    bdbcaf0 View commit details
    Browse the repository at this point in the history
  4. Added Rustdoc book sections for linting and embedding more examples

    Co-authored-by: Joshua Nelson <joshua@yottadb.com>
    AndyGauge and Joshua Nelson committed Nov 5, 2020
    Configuration menu
    Copy the full SHA
    881820a View commit details
    Browse the repository at this point in the history
  5. Don't use crate in link text

    `crate::` -> `core::`
    
    It looks weird to have `crate::` in the link text and we use the actual
    crate name everywhere else.
    
    If anyone is curious, I used this Vim command to update all the links:
    
        %s/\(\s\)\[`crate::\(.*\)`\]/\1[`core::\2`](crate::\2)/g
    camelid committed Nov 5, 2020
    Configuration menu
    Copy the full SHA
    3084a55 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    bbdb1f0 View commit details
    Browse the repository at this point in the history
  7. Add missing comma

    'Note however,' -> 'Note, however,'
    camelid committed Nov 5, 2020
    Configuration menu
    Copy the full SHA
    677b2ac View commit details
    Browse the repository at this point in the history
  8. Fixed typo in comment

    paramter -> parameter
    eltociear committed Nov 5, 2020
    Configuration menu
    Copy the full SHA
    873ebcb View commit details
    Browse the repository at this point in the history
  9. Add mod nan for test

    chansuke committed Nov 5, 2020
    Configuration menu
    Copy the full SHA
    f9b139f View commit details
    Browse the repository at this point in the history
  10. Auto merge of #78754 - pietroalbini:checkout-v2, r=Mark-Simulacrum

    Bump actions/checkout to version 2
    
    This was recommended by GitHub Support to try reducing the things that could've caused #78743. I checked the changelog and there should be no practical impact for us (we already set an explicit fetch-depth).
    
    r? `@Mark-Simulacrum`
    bors committed Nov 5, 2020
    Configuration menu
    Copy the full SHA
    8c20701 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    a15ee4d View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    2980367 View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    a54f043 View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    6bc8965 View commit details
    Browse the repository at this point in the history
  15. Configuration menu
    Copy the full SHA
    f467b8d View commit details
    Browse the repository at this point in the history
  16. Configuration menu
    Copy the full SHA
    7f839b2 View commit details
    Browse the repository at this point in the history
  17. Configuration menu
    Copy the full SHA
    55b4d21 View commit details
    Browse the repository at this point in the history
  18. Configuration menu
    Copy the full SHA
    60caf51 View commit details
    Browse the repository at this point in the history
  19. Configuration menu
    Copy the full SHA
    fce2be0 View commit details
    Browse the repository at this point in the history
  20. Configuration menu
    Copy the full SHA
    1fb404b View commit details
    Browse the repository at this point in the history
  21. Configuration menu
    Copy the full SHA
    6be97e2 View commit details
    Browse the repository at this point in the history
  22. Configuration menu
    Copy the full SHA
    9d11450 View commit details
    Browse the repository at this point in the history
  23. Fix more URLs

    GuillaumeGomez committed Nov 5, 2020
    Configuration menu
    Copy the full SHA
    16ed850 View commit details
    Browse the repository at this point in the history
  24. Rollup merge of #76718 - poliorcetics:vec-ui-to-unit-test, r=jyn514

    Move Vec UI tests to unit tests when possible
    
    Helps with #76268.
    
    I'm moving the tests using `Vec` or `VecDeque`.
    
    ````@rustbot```` modify labels: A-testsuite C-cleanup T-libs
    m-ou-se committed Nov 5, 2020
    Configuration menu
    Copy the full SHA
    55f4b80 View commit details
    Browse the repository at this point in the history
  25. Rollup merge of #78093 - camelid:as-cleanup, r=jyn514

    Clean up docs for 'as' keyword
    m-ou-se committed Nov 5, 2020
    Configuration menu
    Copy the full SHA
    10d2843 View commit details
    Browse the repository at this point in the history
  26. Rollup merge of #78425 - chansuke:move_nan, r=jyn514

    Move f64::NAN ui tests into `library`
    
    This is a partial fix of #76268.
    
    r? ```@matklad```
    m-ou-se committed Nov 5, 2020
    Configuration menu
    Copy the full SHA
    9922933 View commit details
    Browse the repository at this point in the history
  27. Rollup merge of #78465 - est31:proc_macro_to_string, r=jyn514

    Change as_str → to_string in proc_macro::Ident::span() docs
    
    There is no `as_str` function on Ident any more.
    
    Also change it to an intra doc link while we're at it.
    m-ou-se committed Nov 5, 2020
    Configuration menu
    Copy the full SHA
    6d7098f View commit details
    Browse the repository at this point in the history
  28. Rollup merge of #78584 - notriddle:master, r=GuillaumeGomez

    Add keyboard handling to the theme picker menu
    
    This PR is mostly designed to bring the theme picker closer to feature parity with the menu bar from docs.rs. Though the rustdoc theme picker is technically already usable from the keyboard, it's really weird that arrow keys work on some of the menus, but not all of them, in the exact same page.
    m-ou-se committed Nov 5, 2020
    Configuration menu
    Copy the full SHA
    cbf74bc View commit details
    Browse the repository at this point in the history
  29. Rollup merge of #78716 - est31:array_traits, r=Dylan-DPC

    Array trait impl comment/doc fixes
    
    Two small doc/comment fixes regarding trait implementations on arrays.
    m-ou-se committed Nov 5, 2020
    Configuration menu
    Copy the full SHA
    43e1b58 View commit details
    Browse the repository at this point in the history
  30. Rollup merge of #78727 - liketechnik:issue-55201, r=GuillaumeGomez

    (rustdoc) fix test for trait impl display
    
    The test checks that parameters and return values with `impl Trait` types are correctly generated in rustdoc's output.
    
    In essence, the previous version of the test checked the absence of values that would never be generated by rustdoc, so it could basically never fail. These values were adjusted to the expected output and are now required to exist in rustdoc's output. See rust-lang/rust#55201 (comment) for a detailed explanation of the reasoning behind the changes.
    
    Note that the output of rustdoc for `impl Trait`s in parameters and return values did not change since the inital test creation, so this PR only modifies the test.
    
    Closes #55201
    m-ou-se committed Nov 5, 2020
    Configuration menu
    Copy the full SHA
    9bbb052 View commit details
    Browse the repository at this point in the history
  31. Rollup merge of #78733 - matthiaskrgr:cl11ppy, r=jyn514

    fix a couple of clippy warnings:
    
    filter_next
    manual_strip
    redundant_static_lifetimes
    single_char_pattern
    unnecessary_cast
    unused_unit
    op_ref
    redundant_closure
    useless_conversion
    m-ou-se committed Nov 5, 2020
    Configuration menu
    Copy the full SHA
    8640360 View commit details
    Browse the repository at this point in the history
  32. Rollup merge of #78735 - danielhenrymantilla:simplify-unsafecell-getm…

    …ut, r=RalfJung
    
    Simplify the implementation of `get_mut` (no unsafe)
    
    Quick PR to reduce one use of `unsafe` pointed out in the previous PR
    
    r? ````@RalfJung````
    m-ou-se committed Nov 5, 2020
    Configuration menu
    Copy the full SHA
    29fad21 View commit details
    Browse the repository at this point in the history
  33. Rollup merge of #78738 - sasurau4:test/move-range-test-to-library-cor…

    …e, r=jyn514
    
    Move range in ui test to ops test in library/core
    
    Helps with #76268
    
    r? ````@matklad````
    m-ou-se committed Nov 5, 2020
    Configuration menu
    Copy the full SHA
    86e6afa View commit details
    Browse the repository at this point in the history
  34. Rollup merge of #78739 - hameerabbasi:issue-78654, r=nikomatsakis

    Fix ICE on type error in async function
    
    Fixes #78654
    m-ou-se committed Nov 5, 2020
    Configuration menu
    Copy the full SHA
    171d29c View commit details
    Browse the repository at this point in the history
  35. Rollup merge of #78742 - vn-ki:fix-issue-78655, r=oli-obk

    make intern_const_alloc_recursive return error
    
    fix #78655
    
    r? ``@oli-obk``
    m-ou-se committed Nov 5, 2020
    Configuration menu
    Copy the full SHA
    5ffccc4 View commit details
    Browse the repository at this point in the history
  36. Rollup merge of #78756 - ehuss:update-cargo, r=ehuss

    Update cargo
    
    7 commits in becb4c282b8f37469efb8f5beda45a5501f9d367..d5556aeb8405b1fe696adb6e297ad7a1f2989b62
    2020-10-28 16:41:55 +0000 to 2020-11-04 22:20:36 +0000
    - Implement weak dependency features. (rust-lang/cargo#8818)
    - Avoid some extra downloads with new feature resolver. (rust-lang/cargo#8823)
    - fix: remove install command `$`, for copying friendly (rust-lang/cargo#8828)
    - Bump `anyhow` dependency to `1.0.34` in `crates-io` crate (rust-lang/cargo#8826)
    - Normalize SourceID in `cargo metadata`. (rust-lang/cargo#8824)
    - vendor: correct the path to cargo config (rust-lang/cargo#8822)
    - Make host_root return host.root(), not host.dest() (rust-lang/cargo#8819)
    m-ou-se committed Nov 5, 2020
    Configuration menu
    Copy the full SHA
    679c4c7 View commit details
    Browse the repository at this point in the history
  37. Rollup merge of #78757 - camelid:crate-link-text, r=jyn514

    Improve and clean up some intra-doc links
    m-ou-se committed Nov 5, 2020
    Configuration menu
    Copy the full SHA
    f383e4f View commit details
    Browse the repository at this point in the history
  38. Rollup merge of #78758 - eltociear:patch-1, r=jyn514

    Fixed typo in comment
    
    paramter -> parameter
    m-ou-se committed Nov 5, 2020
    Configuration menu
    Copy the full SHA
    8416e13 View commit details
    Browse the repository at this point in the history
  39. Auto merge of #78767 - m-ou-se:rollup-eu5wgxl, r=m-ou-se

    Rollup of 15 pull requests
    
    Successful merges:
    
     - #76718 (Move Vec UI tests to unit tests when possible)
     - #78093 (Clean up docs for 'as' keyword)
     - #78425 (Move f64::NAN ui tests into `library`)
     - #78465 (Change as_str → to_string in proc_macro::Ident::span() docs)
     - #78584 (Add keyboard handling to the theme picker menu)
     - #78716 (Array trait impl comment/doc fixes)
     - #78727 ((rustdoc) fix test for trait impl display)
     - #78733 (fix a couple of clippy warnings:)
     - #78735 (Simplify the implementation of `get_mut` (no unsafe))
     - #78738 (Move range in ui test to ops test in library/core)
     - #78739 (Fix ICE on type error in async function)
     - #78742 (make intern_const_alloc_recursive return error)
     - #78756 (Update cargo)
     - #78757 (Improve and clean up some intra-doc links)
     - #78758 (Fixed typo in comment)
    
    Failed merges:
    
    r? `@ghost`
    `@rustbot` modify labels: rollup
    bors committed Nov 5, 2020
    Configuration menu
    Copy the full SHA
    f7801d6 View commit details
    Browse the repository at this point in the history
  40. Configuration menu
    Copy the full SHA
    54a0a98 View commit details
    Browse the repository at this point in the history
  41. doc/rustc: promote aarch64-unknown-linux-gnu to tier 1

    This also adds a note about missing stack probes support, per the
    discussion on RFC 2959.
    pietroalbini committed Nov 5, 2020
    Configuration menu
    Copy the full SHA
    1274fae View commit details
    Browse the repository at this point in the history
  42. Configuration menu
    Copy the full SHA
    874cbb8 View commit details
    Browse the repository at this point in the history
  43. Auto merge of #6296 - flip1995:rustup, r=flip1995

    Rustup
    
    r? `@ghost`
    
    changelog: none
    bors committed Nov 5, 2020
    Configuration menu
    Copy the full SHA
    b20d4c1 View commit details
    Browse the repository at this point in the history
  44. Auto merge of #78638 - vn-ki:bindigs-after-at-issue-69971, r=oli-obk

    reverse binding order in matches to allow the subbinding of copyable fields in bindings after @
    
    Fixes #69971
    
    ### TODO
    
    - [x] Regression tests
    
    r? `@oli-obk`
    bors committed Nov 5, 2020
    Configuration menu
    Copy the full SHA
    b1d9f31 View commit details
    Browse the repository at this point in the history
  45. Configuration menu
    Copy the full SHA
    46c714f View commit details
    Browse the repository at this point in the history
  46. Configuration menu
    Copy the full SHA
    9d9292c View commit details
    Browse the repository at this point in the history
  47. Recognize private_intra_doc_links as a lint

    Previously, trying to allow this would give another error!
    
    ```
    warning: unknown lint: `private_intra_doc_links`
     --> private.rs:1:10
      |
    1 | #![allow(private_intra_doc_links)]
      |          ^^^^^^^^^^^^^^^^^^^^^^^ help: did you mean: `broken_intra_doc_links`
      |
      = note: `#[warn(unknown_lints)]` on by default
    
    warning: public documentation for `DocMe` links to private item `DontDocMe`
     --> private.rs:2:11
      |
    2 | /// docs [DontDocMe]
      |           ^^^^^^^^^ this item is private
      |
      = note: `#[warn(private_intra_doc_links)]` on by default
      = note: this link will resolve properly if you pass `--document-private-items`
    ```
    jyn514 committed Nov 5, 2020
    Configuration menu
    Copy the full SHA
    eed0ceb View commit details
    Browse the repository at this point in the history
  48. Auto merge of #78774 - flip1995:clippyup, r=Manishearth

    Update Clippy
    
    Biweekly Clippy update
    
    r? `@Manishearth`
    bors committed Nov 5, 2020
    Configuration menu
    Copy the full SHA
    9d78d1d View commit details
    Browse the repository at this point in the history
  49. Add PRIVATE_INTRA_DOC_LINKS to rustdoc special-casing

    This is really starting to get out of hand. Rustdoc should instead allow
    all lints in the rustdoc lint group.
    jyn514 committed Nov 5, 2020
    Configuration menu
    Copy the full SHA
    47b21b8 View commit details
    Browse the repository at this point in the history
  50. Fix even more URLs

    GuillaumeGomez committed Nov 5, 2020
    Configuration menu
    Copy the full SHA
    99200f7 View commit details
    Browse the repository at this point in the history
  51. Configuration menu
    Copy the full SHA
    1e15606 View commit details
    Browse the repository at this point in the history
  52. Configuration menu
    Copy the full SHA
    8078474 View commit details
    Browse the repository at this point in the history
  53. Configuration menu
    Copy the full SHA
    63343f6 View commit details
    Browse the repository at this point in the history
  54. Configuration menu
    Copy the full SHA
    8def2fc View commit details
    Browse the repository at this point in the history
  55. Add test

    Nadrieril committed Nov 5, 2020
    Configuration menu
    Copy the full SHA
    03f0ca0 View commit details
    Browse the repository at this point in the history
  56. Configuration menu
    Copy the full SHA
    25e272e View commit details
    Browse the repository at this point in the history
  57. Configuration menu
    Copy the full SHA
    107a29a View commit details
    Browse the repository at this point in the history
  58. Get --fix working for everything except rustdoc

    Here's the error for rustdoc:
    
    ```
    Checking rustdoc artifacts (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu)
    error: no library targets found in package `rustdoc-tool`
    ```
    jyn514 committed Nov 5, 2020
    Configuration menu
    Copy the full SHA
    8d2fa72 View commit details
    Browse the repository at this point in the history

Commits on Nov 6, 2020

  1. inliner: Use substs_for_mir_body

    Changes from 68965 extended the kind of instances that are being
    inlined. For some of those, the `instance_mir` returns a MIR body that
    is already expressed in terms of the types found in substitution array,
    and doesn't need further substitution.
    
    Use `substs_for_mir_body` to take that into account.
    tmiasko committed Nov 6, 2020
    Configuration menu
    Copy the full SHA
    8a8ee1a View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    fe6dfcd View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    de2940f View commit details
    Browse the repository at this point in the history
  4. The renumber pass is long gone

    Originally, there has been a dedicated pass for renumbering
    AST NodeIds to have actual values. This pass had been added by
    commit a5ad4c3.
    
    Then, later, this step was moved to where it resides now,
    macro expansion. See commit c86c8d4
    or PR #36438.
    
    The comment snippet, added by the original commit, has
    survived the times without any change, becoming outdated
    at removal of the dedicated pass.
    
    Nowadays, grepping for the next_node_id function will show up
    multiple places in the compiler that call it, but the main
    rewriting that the comment talks about is still done in the
    expansion step, inside an innocious looking visit_id function
    that's called during macro invocation collection.
    est31 committed Nov 6, 2020
    Configuration menu
    Copy the full SHA
    dfa5e46 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    c7747cc View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    c7ae4c2 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    b502064 View commit details
    Browse the repository at this point in the history
  8. Adds coverage graphviz

    richkadel committed Nov 6, 2020
    Configuration menu
    Copy the full SHA
    3291d28 View commit details
    Browse the repository at this point in the history
  9. Injecting expressions in place of counters where helpful

    Implementing the Graph traits for the BasicCoverageBlock
    graph.
    
    optimized replacement of counters with expressions plus new BCB graphviz
    
    * Avoid adding coverage to unreachable blocks.
    * Special case for Goto at the end of the body. Make it non-reportable.
    
    Improved debugging and formatting options (from env)
    
    Don't automatically add counters to BCBs without CoverageSpans. They may
    still get counters but only if there are dependencies from
    other BCBs that have spans, I think.
    
    Make CodeRegions optional for Counters too. It is
    possible to inject counters (`llvm.instrprof.increment` intrinsic calls
    without corresponding code regions in the coverage map. An expression
    can still uses these counter values.
    
    Refactored instrument_coverage.rs -> instrument_coverage/mod.rs, and
    then broke up the mod into multiple files.
    
    Compiling with coverage, with the expression optimization, works on
    the json5format crate and its dependencies.
    
    Refactored debug features from mod.rs to debug.rs
    richkadel committed Nov 6, 2020
    Configuration menu
    Copy the full SHA
    198ba3b View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    5545c56 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    1973f84 View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    a7d9565 View commit details
    Browse the repository at this point in the history
  13. fix cross-platform test bugs

    More portable way to make python 2/3 portable.
    
    Strip Args line (with hardcoded paths) from debug counters output.
    
    Ignore diff failures from llvm-cov debug output files ("counters"
    files), since generic function instantiations will appear in those files
    with mangled names. (Sadly, the demangler is apparently not applied to
    the debug output.)
    richkadel committed Nov 6, 2020
    Configuration menu
    Copy the full SHA
    cdbce10 View commit details
    Browse the repository at this point in the history
  14. rename some tests to avoid exceeding windows path limits

    And restored missing error message from llvm-cov show
    
    And since some CI builds disable LLVM assertions (which disables the
    --debug option in llvm-cov show), I check to see if LLVM assertions are
    disabled, and if so, I don't add --debug and don't check the counter
    file diffs.
    richkadel committed Nov 6, 2020
    Configuration menu
    Copy the full SHA
    8fc697f View commit details
    Browse the repository at this point in the history
  15. Fix sed command for Mac

    add -e between -i and quoted script
    
    I had tested on my mac but forgot I had aliased sed=gsed. My bad.
    richkadel committed Nov 6, 2020
    Configuration menu
    Copy the full SHA
    430dcb6 View commit details
    Browse the repository at this point in the history
  16. document HACKs

    pitaj committed Nov 6, 2020
    Configuration menu
    Copy the full SHA
    8d48e3b View commit details
    Browse the repository at this point in the history
  17. Fixing Spelling Typos

    ankushduacodes committed Nov 6, 2020
    Configuration menu
    Copy the full SHA
    0af959d View commit details
    Browse the repository at this point in the history
  18. Auto merge of #77856 - GuillaumeGomez:automatic-links-lint, r=jyn514,…

    …ollie27
    
    Add non_autolinks lint
    
    Part of #77501.
    
    r? `@jyn514`
    bors committed Nov 6, 2020
    Configuration menu
    Copy the full SHA
    f92b931 View commit details
    Browse the repository at this point in the history
  19. Disable the spanview tests on MacOS for now

    And even though CI should now pass for MacOS, the llvm-cov show --debug
    flag does not work when developing outside of CI, so I'm disabling it
    for MacOS by default.
    richkadel committed Nov 6, 2020
    Configuration menu
    Copy the full SHA
    68014e6 View commit details
    Browse the repository at this point in the history
  20. Auto merge of #78267 - richkadel:llvm-coverage-counters-2.0.3r1, r=tm…

    …andry
    
    Working expression optimization, and some improvements to branch-level source coverage
    
    This replaces PR #78040 after reorganizing the original commits (by request) into a more logical sequence of major changes.
    
    Most of the work is in the MIR `transform/coverage/` directory (originally, `transform/instrument_coverage.rs`).
    
    Note this PR includes some significant additional debugging capabilities, to help myself and any future developer working on coverage improvements or issues.
    
    In particular, there's a new Graphviz (.dot file) output for the coverage graph (the `BasicCoverageBlock` control flow graph) that provides ways to get some very good insight into the relationships between the MIR, the coverage graph BCBs, coverage spans, and counters. (There are also some cool debugging options, available via environment variable, to alter how some data in the graph appears.)
    
    And the code for this Graphviz view is actually generic... it can be used by any implementation of the Rust `Graph` traits.
    
    Finally (for now), I also now output information from `llvm-cov` that shows the actual counters and spans it found in the coverage map, and their counts (from the `--debug` flag). I found this to be enormously helpful in debugging some coverage issues, so I kept it in the test results as well for additional context.
    
    `@tmandry` `@wesleywiser`
    
    r? `@tmandry`
    
    Here's an example of the new coverage graph:
    
    * Within each `BasicCoverageBlock` (BCB), you can see each `CoverageSpan` and its contributing statements (MIR `Statement`s and/or `Terminator`s)
    * Each `CoverageSpan` has a `Counter` or and `Expression`, and `Expression`s show their Add/Subtract operation with nested operations. (This can be changed to show the Counter and Expression IDs instead, or in addition to, the BCB.)
    * The terminators of all MIR `BasicBlock`s in the BCB, including one final `Terminator`
    * If an "edge counter" is required (because we need to count an edge between blocks, in some cases) the edge's Counter or Expression is shown next to its label. (Not shown in the example below.) (FYI, Edge Counters are converted into a new MIR `BasicBlock` with `Goto`)
    
    <img width="1116" alt="Screen Shot 2020-10-17 at 12 23 29 AM" src="https://user-images.githubusercontent.com/3827298/96331095-616cb480-100f-11eb-8212-60f2d433e2d8.png">
    
    r? `@tmandry`
    FYI: `@wesleywiser`
    bors committed Nov 6, 2020
    Configuration menu
    Copy the full SHA
    8532e74 View commit details
    Browse the repository at this point in the history
  21. Auto merge of #77351 - jyn514:clippy-sysroot, r=Mark-Simulacrum

    Fix `x.py clippy`
    
    I don't think this ever worked.
    
    Fixes rust-lang/rust#77309. `--fix` support is a work in progress, but works for a very small subset of `libtest`.
    
    This works by using the host `cargo-clippy` driver; it does not use `stage0.txt` at all. To mitigate confusion from this, it gives an error if you don't have `rustc +nightly` as the default rustc in `$PATH`. Additionally, it means that bootstrap can't set `RUSTC`; this makes it no longer possible for clippy to detect the sysroot itself. Instead, bootstrap passes the sysroot to cargo.
    
    r? `@ghost`
    bors committed Nov 6, 2020
    Configuration menu
    Copy the full SHA
    dc06a36 View commit details
    Browse the repository at this point in the history
  22. Configuration menu
    Copy the full SHA
    f197da6 View commit details
    Browse the repository at this point in the history
  23. Configuration menu
    Copy the full SHA
    ce4c124 View commit details
    Browse the repository at this point in the history
  24. Configuration menu
    Copy the full SHA
    a1af001 View commit details
    Browse the repository at this point in the history
  25. Configuration menu
    Copy the full SHA
    5ea028e View commit details
    Browse the repository at this point in the history
  26. Configuration menu
    Copy the full SHA
    3bee37c View commit details
    Browse the repository at this point in the history
  27. Stabilize hint::spin_loop

    Partially fix #55002, deprecate in another release
    
    Co-authored-by: Ashley Mannix <kodraus@hey.com>
    
    Update stable version for stabilize_spin_loop
    
    Co-authored-by: Joshua Nelson <joshua@yottadb.com>
    
    Use better example for spinlock
    
    As suggested by KodrAus
    
    Remove renamed_spin_loop already available in master
    
    Fix spin loop example
    pickfire committed Nov 6, 2020
    Configuration menu
    Copy the full SHA
    e8b5be5 View commit details
    Browse the repository at this point in the history
  28. Rollup merge of #74979 - maekawatoshiki:fix, r=Mark-Simulacrum

    `#![deny(unsafe_op_in_unsafe_fn)]` in sys/hermit
    
    Partial fix of #73904.
    
    This encloses ``unsafe`` operations in ``unsafe fn`` in ``sys/hermit``.
    Some unsafe blocks are not well documented because some system-based functions lack documents.
    JohnTitor committed Nov 6, 2020
    Configuration menu
    Copy the full SHA
    4136ed2 View commit details
    Browse the repository at this point in the history
  29. Rollup merge of #78006 - pitaj:master, r=jyn514

    Use Intra-doc links for std::io::buffered
    
    Helps with #75080. I used the implicit link style for intrinsics, as that was what `minnumf32` and others already had.
    
    ``@rustbot`` modify labels: T-doc, A-intra-doc-links
    
    r? ``@jyn514``
    JohnTitor committed Nov 6, 2020
    Configuration menu
    Copy the full SHA
    0e71fc7 View commit details
    Browse the repository at this point in the history
  30. Rollup merge of #78167 - Nadrieril:fix-76836_, r=varkor

    Fix unreachable sub-branch detection in or-patterns
    
    The previous implementation was too eager to avoid unnecessary "unreachable pattern" warnings. I feel more confident about this implementation than I felt about the previous one.
    Fixes rust-lang/rust#76836.
    
    ``@rustbot`` modify labels: +A-exhaustiveness-checking
    JohnTitor committed Nov 6, 2020
    Configuration menu
    Copy the full SHA
    91153d5 View commit details
    Browse the repository at this point in the history
  31. Rollup merge of #78514 - jyn514:setup-number, r=Mark-Simulacrum

    Allow using 1/2/3/4 for `x.py setup` options
    
    This undocumented feature allows you to typo 'a' as '1'.
    
    r? ```@Mark-Simulacrum```
    cc ```@Lokathor```
    JohnTitor committed Nov 6, 2020
    Configuration menu
    Copy the full SHA
    8ca7531 View commit details
    Browse the repository at this point in the history
  32. Rollup merge of #78538 - ssomers:btree_testing_rng, r=Mark-Simulacrum

    BTreeMap: document a curious assumption in test cases
    
    r? ```@Mark-Simulacrum```
    JohnTitor committed Nov 6, 2020
    Configuration menu
    Copy the full SHA
    162f400 View commit details
    Browse the repository at this point in the history
  33. Rollup merge of #78559 - glandium:release-notes, r=Mark-Simulacrum

    Add LLVM upgrades from 7 to 10 to RELEASES.md
    
    Fixes #78464
    JohnTitor committed Nov 6, 2020
    Configuration menu
    Copy the full SHA
    c990a38 View commit details
    Browse the repository at this point in the history
  34. Rollup merge of #78666 - sasurau4:fix/shellcheck-error, r=jyn514

    Fix shellcheck error
    
    ## Overview
    
    Helps with #77290
    
    This pr fix only errors of shellcheck, the result of `git ls-files '*.sh' | xargs shellcheck --severity=error`.
    
    Fixing error are following.
    
    - https://github.com/koalaman/shellcheck/wiki/SC2148
    - https://github.com/koalaman/shellcheck/wiki/SC1008
    
    Disable error following.
    - https://github.com/koalaman/shellcheck/wiki/SC2068
    JohnTitor committed Nov 6, 2020
    Configuration menu
    Copy the full SHA
    7931b24 View commit details
    Browse the repository at this point in the history
  35. Rollup merge of #78705 - Mark-Simulacrum:nicer-failure-compiletest, r…

    …=jyn514
    
    Print a summary of which test suite failed
    
    Especially on CI, where cross-compiling is common and single builder may end up
    with multiple hosts and multiple targets, it can be annoying to scroll back to
    the nearest start of test marker. This prints out a summary of the test suite
    being run directly in compiletest.
    
    For example, on a mir-opt failure, this would show something like this:
    
    ```
    failures:
        [mir-opt] mir-opt/while-storage.rs
    
    test result: FAILED. 140 passed; 1 failed; 2 ignored; 0 measured; 0 filtered out
    
    Some tests failed in compiletest suite=mir-opt mode=mir-opt host=x86_64-unknown-linux-gnu target=x86_64-unknown-linux-gnu
    ```
    
    Fixes #78517
    JohnTitor committed Nov 6, 2020
    Configuration menu
    Copy the full SHA
    3f5723c View commit details
    Browse the repository at this point in the history
  36. Rollup merge of #78726 - GuillaumeGomez:back-link-to-main-website, r=…

    …steveklabnik
    
    Add link to rust website
    
    Fixes #30838
    
    This doesn't fix the issue as suggested but it at least adds a link to allow to go back to the rust website.
    
    r? `@steveklabnik`
    JohnTitor committed Nov 6, 2020
    Configuration menu
    Copy the full SHA
    707988a View commit details
    Browse the repository at this point in the history
  37. Rollup merge of #78730 - kornelski:not-inverse, r=Dylan-DPC

    Expand explanation of reverse_bits
    
    Original documentation only rephrased the function name
    JohnTitor committed Nov 6, 2020
    Configuration menu
    Copy the full SHA
    8f70cad View commit details
    Browse the repository at this point in the history
  38. Rollup merge of #78760 - jyn514:deny-invalid-codeblocks, r=GuillaumeG…

    …omez
    
    `deny(invalid_codeblock_attributes)` for rustc_error_codes
    
    Closes rust-lang/rust#71478.
    
    r? ``@GuillaumeGomez``
    JohnTitor committed Nov 6, 2020
    Configuration menu
    Copy the full SHA
    55bf791 View commit details
    Browse the repository at this point in the history
  39. Rollup merge of #78771 - tmiasko:inline-consts, r=oli-obk

    inliner: Copy unevaluated constants only after successful inlining
    
    Inliner copies the unevaluated constants from the callee body to the
    caller at the point where decision to inline is yet to be made. The
    constants will be unnecessary if inlining were to fail.
    
    Organize the code moving items from callee to the caller together in one
    place to avoid the issue.
    JohnTitor committed Nov 6, 2020
    Configuration menu
    Copy the full SHA
    0a89d7b View commit details
    Browse the repository at this point in the history
  40. Rollup merge of #78794 - est31:collect_bang, r=oli-obk

    rustc_expand: use collect_bang helper instead of manual reimplementation
    JohnTitor committed Nov 6, 2020
    Configuration menu
    Copy the full SHA
    09a40af View commit details
    Browse the repository at this point in the history
  41. Rollup merge of #78795 - est31:node_id_assignment_doc_fix, r=oli-obk

    The renumber pass is long gone
    
    Originally, there has been a dedicated pass for renumbering
    AST NodeIds to have actual values. This pass had been added by
    commit a5ad4c3.
    
    Then, later, this step was moved to where it resides now,
    macro expansion. See commit c86c8d4
    or PR #36438.
    
    The comment snippet, added by the original commit, has
    survived the times without any change, becoming outdated
    at removal of the dedicated pass.
    
    Nowadays, grepping for the next_node_id function will show up
    multiple places in the compiler that call it, but the main
    rewriting that the comment talks about is still done in the
    expansion step, inside an innocious looking visit_id function
    that's called during macro invocation collection.
    JohnTitor committed Nov 6, 2020
    Configuration menu
    Copy the full SHA
    5b16a66 View commit details
    Browse the repository at this point in the history
  42. Rollup merge of #78798 - ankushduacodes:fixing-typo, r=jonas-schievink

    Fixing Spelling Typos
    
    Fixing #78787
    JohnTitor committed Nov 6, 2020
    Configuration menu
    Copy the full SHA
    af50c79 View commit details
    Browse the repository at this point in the history
  43. Auto merge of #78810 - JohnTitor:rollup-8fhtvxu, r=JohnTitor

    Rollup of 15 pull requests
    
    Successful merges:
    
     - #74979 (`#![deny(unsafe_op_in_unsafe_fn)]` in sys/hermit)
     - #78006 (Use Intra-doc links for std::io::buffered)
     - #78167 (Fix unreachable sub-branch detection in or-patterns)
     - #78514 (Allow using 1/2/3/4 for `x.py setup` options)
     - #78538 (BTreeMap: document a curious assumption in test cases)
     - #78559 (Add LLVM upgrades from 7 to 10 to RELEASES.md)
     - #78666 (Fix shellcheck error)
     - #78705 (Print a summary of which test suite failed)
     - #78726 (Add link to rust website)
     - #78730 (Expand explanation of reverse_bits)
     - #78760 (`deny(invalid_codeblock_attributes)` for rustc_error_codes)
     - #78771 (inliner: Copy unevaluated constants only after successful inlining)
     - #78794 (rustc_expand: use collect_bang helper instead of manual reimplementation)
     - #78795 (The renumber pass is long gone)
     - #78798 (Fixing Spelling Typos)
    
    Failed merges:
    
    r? `@ghost`
    `@rustbot` modify labels: rollup
    bors committed Nov 6, 2020
    Configuration menu
    Copy the full SHA
    7e9a36f View commit details
    Browse the repository at this point in the history
  44. Revert "Revert "resolve: Avoid "self-confirming" import resolutions i…

    …n one more case""
    
    This reverts commit b20bce8.
    
    It retains the test added in that commit as a check-pass test, intended to
    prevent future (unintentional) regressions.
    Mark-Simulacrum committed Nov 6, 2020
    Configuration menu
    Copy the full SHA
    ae4f80b View commit details
    Browse the repository at this point in the history
  45. Make some std::io functions const

    Includes:
    - io::Cursor::new
    - io::Cursor::get_ref
    - io::Cursor::position
    - io::empty
    - io::repeat
    - io::sink
    a1phyr committed Nov 6, 2020
    Configuration menu
    Copy the full SHA
    ae059b5 View commit details
    Browse the repository at this point in the history
  46. Add tracking issue

    a1phyr committed Nov 6, 2020
    Configuration menu
    Copy the full SHA
    001dd7e View commit details
    Browse the repository at this point in the history
  47. Bump Rustfmt and RLS

    Should hopefully fix #78341 and #78340.
    ghedo committed Nov 6, 2020
    Configuration menu
    Copy the full SHA
    bff2e46 View commit details
    Browse the repository at this point in the history
  48. Auto merge of #75778 - AndyGauge:75521-rustdoc-book-improvements, r=j…

    …yn514
    
    75521 rustdoc book improvements
    
    Added some guidelines about documenting with rustdoc
    Fixes #75521
    bors committed Nov 6, 2020
    Configuration menu
    Copy the full SHA
    a601302 View commit details
    Browse the repository at this point in the history
  49. Re-enable debug and LLVM assertions

    Historically we've disabled these assertions on a number of platforms with the
    goal of speeding up CI. Now, though, having migrated to GitHub actions, CI is
    already pretty fast, and these debug assertions do bring us some value.
    
    This does leave in some debug assertions that are performance-related: macOS
    currently hovers at just under 2 hours.
    
    There are also some other builders which have debug and LLVM assertions
    disabled:
    
    llvm-8, PR builder:
    
    In one view, this builder tests our support for older LLVMs. But in reality, a
    lot of our tests already disable themselves on older LLVMs, and I think our
    general stance is that we really only support the in-tree LLVM. Plus, we really
    want CI times on this builder to be really low, as it's run on *every* PR --
    that's a lot of CI time.
    
    test-various:
    
    This disables debug asserts still -- as noted in the Dockerfile, we test code
    size, and we need debug asserts off for that to work well.
    Mark-Simulacrum committed Nov 6, 2020
    Configuration menu
    Copy the full SHA
    51331e4 View commit details
    Browse the repository at this point in the history
  50. Add debug asserts to PR builder

    This is helpful to catch slightly more bugs before things hit main CI, and
    doesn't cost too much extra CI time.
    Mark-Simulacrum committed Nov 6, 2020
    Configuration menu
    Copy the full SHA
    3ca8829 View commit details
    Browse the repository at this point in the history
  51. update Miri

    RalfJung committed Nov 6, 2020
    Configuration menu
    Copy the full SHA
    e261ded View commit details
    Browse the repository at this point in the history
  52. improve fixme

    lcnr committed Nov 6, 2020
    Configuration menu
    Copy the full SHA
    e06785b View commit details
    Browse the repository at this point in the history
  53. Compile tools and internal libraries with the initial-exec TLS model

    This should produce more efficient code, with fewer calls to
    __tls_get_addr. The tradeoff is that libraries using it won't work with
    dlopen, but that shouldn't be a problem for tools or for our own
    internal libraries.
    
    Co-authored-by: Mark Rousskov <mark.simulacrum@gmail.com>
    joshtriplett and Mark-Simulacrum committed Nov 6, 2020
    Configuration menu
    Copy the full SHA
    0328e69 View commit details
    Browse the repository at this point in the history

Commits on Nov 7, 2020

  1. Configuration menu
    Copy the full SHA
    020ed65 View commit details
    Browse the repository at this point in the history
  2. Auto merge of #78817 - RalfJung:miri, r=RalfJung

    update Miri
    
    Fixes rust-lang/rust#78741
    Cc `@rust-lang/miri` r? `@ghost`
    bors committed Nov 7, 2020
    Configuration menu
    Copy the full SHA
    0256d06 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    ffe65f8 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    91533cf View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    74ffb9b View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    d5fd311 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    b294cc7 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    d41fe05 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    c0c0597 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    5c8d25f View commit details
    Browse the repository at this point in the history
  11. Implement destructuring assignment for tuples

    Co-authored-by: varkor <github@varkor.com>
    fanzier and varkor committed Nov 7, 2020
    Configuration menu
    Copy the full SHA
    3a7a997 View commit details
    Browse the repository at this point in the history
  12. Fix handling of item names for HIR

    - Handle variants, fields, macros in `Node::ident()`
    - Handle the crate root in `opt_item_name`
    - Factor out `item_name_from_def_id` to reduce duplication
    - Look at HIR before the DefId for `opt_item_name`
    
      This gives accurate spans, which are not available from serialized
      metadata.
    
    - Don't panic on the crate root in `opt_item_name`
    - Add comments
    jyn514 committed Nov 7, 2020
    Configuration menu
    Copy the full SHA
    67d0db6 View commit details
    Browse the repository at this point in the history
  13. Remove unused from_hir call

    jyn514 committed Nov 7, 2020
    Configuration menu
    Copy the full SHA
    f60fd49 View commit details
    Browse the repository at this point in the history
  14. Auto merge of #75199 - Mark-Simulacrum:debug-asserts, r=pietroalbini

    Re-enable debug and LLVM assertions
    
    Historically we've disabled these assertions on a number of platforms with the
    goal of speeding up CI. Now, though, having migrated to GitHub actions, CI is
    already pretty fast, and these debug assertions do bring us some value.
    
    This does leave in some debug assertions that are performance-related: macOS
    currently hovers at just under 2 hours.
    
    There are also some other builders which have debug and LLVM assertions
    disabled:
    
    llvm-8, PR builder:
    
    In one view, this builder tests our support for older LLVMs. But in reality, a
    lot of our tests already disable themselves on older LLVMs, and I think our
    general stance is that we really only support the in-tree LLVM. Plus, we really
    want CI times on this builder to be really low, as it's run on *every* PR --
    that's a lot of CI time.
    
    test-various:
    
    This disables debug asserts still -- as noted in the Dockerfile, we test code
    size, and we need debug asserts off for that to work well.
    
    Helps with #59637 -- but doesn't close it, macOS still has asserts off.
    
    r? `@pietroalbini`
    bors committed Nov 7, 2020
    Configuration menu
    Copy the full SHA
    b2d115f View commit details
    Browse the repository at this point in the history
  15. Configuration menu
    Copy the full SHA
    087a934 View commit details
    Browse the repository at this point in the history
  16. Honor the rustfmt setting in config.toml

    Prior to this, setting the rustfmt configuration was ignored:
    
    ```
    % mkdir example
    
    % cd example
    
    % ../configure --set build.rustfmt=/usr/bin/true
    
    % ../x.py fmt
    ./x.py fmt is not supported on this channel
    failed to run: /Users/shep/Projects/rust/example/build/bootstrap/debug/bootstrap fmt
    Build completed unsuccessfully in 0:00:01
    ```
    
    And after:
    
    ```
    % ../x.py fmt
    Build completed successfully in 0:00:11
    ```
    shepmaster committed Nov 7, 2020
    Configuration menu
    Copy the full SHA
    8cae2f1 View commit details
    Browse the repository at this point in the history
  17. Less verbose debug logging from inlining integrator

    The inlining integrator produces relatively verbose and uninteresting
    logs.  Move them from a debug log level to a trace level, so that they
    can be easily isolated from others.
    tmiasko committed Nov 7, 2020
    Configuration menu
    Copy the full SHA
    425675d View commit details
    Browse the repository at this point in the history
  18. Configuration menu
    Copy the full SHA
    8258cf2 View commit details
    Browse the repository at this point in the history
  19. Auto merge of #78784 - Mark-Simulacrum:revert-77421, r=petrochenkov

    Revert "Revert "resolve: Avoid "self-confirming" import resolutions in one more case""
    
    Specifically, this reverts commit b20bce8 from #77421 to fix #77586.
    
    The lang team has decided that for the time being we want to avoid the breakage here (perhaps for a future edition; though almost certainly not the upcoming one), though a future PR may want to add a lint around this case (and perhaps others) which are unlikely to be readable code.
    
    r? `@petrochenkov` to confirm this is the right way to fix #77586.
    bors committed Nov 7, 2020
    Configuration menu
    Copy the full SHA
    771cc7f View commit details
    Browse the repository at this point in the history
  20. Configuration menu
    Copy the full SHA
    907b87f View commit details
    Browse the repository at this point in the history
  21. typo and formatting

    fixed a typo and modified some line formatting justification while I'm here :)
    o752d committed Nov 7, 2020
    Configuration menu
    Copy the full SHA
    2550e88 View commit details
    Browse the repository at this point in the history

Commits on Nov 8, 2020

  1. Don't fire CONST_ITEM_MUTATION lint when borrowing a deref

    Fixes #78819
    
    This extends the check for dereferences added in PR #77324
    to cover mutable borrows, as well as direct writes. If we're operating
    on a dereference of a `const` item, we shouldn't be firing the lint.
    Aaron1011 committed Nov 8, 2020
    Configuration menu
    Copy the full SHA
    e4e9bb4 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    bd3f3fa View commit details
    Browse the repository at this point in the history
  3. Fix tab focus on restyled switches

    Setting a checkbox to `display:none` makes it impossible to tab onto it,
    which makes the rustdoc settings page completely keyboard inaccessible.
    notriddle committed Nov 8, 2020
    Configuration menu
    Copy the full SHA
    9dc5dfb View commit details
    Browse the repository at this point in the history
  4. Auto merge of #77729 - petrochenkov:mergetarg, r=Mark-Simulacrum

    rustc_target: Move some target options from `Target` to `TargetOptions`
    
    The only reason for `Target` to `TargetOptions` to be separate structures is that options in `TargetOptions` have reasonable defaults and options in `Target` don't.
    (Otherwise all the options logically belong to a single `Target` struct.)
    
    This PR moves a number of options with reasonable defaults from `Target` to `TargetOptions`, so they no longer needs to be specified explicitly for majority of the targets.
    The move also allows to inherit the options from `rustc_target/src/spec/*_base.rs` files in a nicer way.
    I didn't change any specific option values here.
    
    The moved options are `target_c_int_width` (defaults to `"32"`), `target_endian` (defaults to `"little"`), `target_os` (defaults to `"none"`), `target_env` (defaults to `""`), `target_vendor` (defaults to `"unknown"`) and `linker_flavor` (defaults to `LinkerFlavor::Gcc`).
    
    Next steps (in later PRs):
    - Find a way to merge `TargetOptions` into `Target`
    - If not, always access `TargetOptions` fields through `Deref` making it a part of `Target` at least logically (`session.target.target.options.foo` -> `session.target.target.foo`)
    - ~Eliminate `session::config::Config` and use `Target` instead (`session.target.target.foo` -> `session.target.foo`)~ Done in rust-lang/rust#77943.
    - Avoid tautologies in option names (`target.target_os` -> `target.os`)
    - Resolve _ rust-lang/rust#77730 (rustc_target: The differences between `target_os = "none"` and `target_os = "unknown"`, and `target_vendor = "unknown"` and `target_vendor = ""` are unclear) noticed during implementation of this PR.
    bors committed Nov 8, 2020
    Configuration menu
    Copy the full SHA
    f2ea2f6 View commit details
    Browse the repository at this point in the history
  5. Auto merge of #78410 - lcnr:revert75443, r=nikomatsakis

    revert #75443, update mir validator
    
    This PR reverts rust-lang#75443 to fix rust-lang#75992 and instead uses rust-lang#75419 to fix rust-lang#75313.
    
    Adapts rust-lang#75419 to correctly deal with unevaluated constants as otherwise some `feature(const_evaluatable_checked)` tests would ICE.
    
    Note that rust-lang#72793 was also fixed by rust-lang#75443, but as that issue only concerns `feature(type_alias_impl_trait)` I deleted that test case for now and would reopen that issue.
    
    rust-lang#75443 may have also allowed some other code to now successfully compile which would make this revert a breaking change after 2 stable versions, but I hope that this is a purely theoretical concern.
    
    See https://rust-lang.zulipchat.com/#narrow/stream/182449-t-compiler.2Fhelp/topic/generator.20upvars/near/214617274 for more reasoning about this.
    
    r? `@nikomatsakis` `@eddyb` `@RalfJung`
    bors committed Nov 8, 2020
    Configuration menu
    Copy the full SHA
    87a0997 View commit details
    Browse the repository at this point in the history
  6. Rollup merge of #76097 - pickfire:stabilize-spin-loop, r=KodrAus

    Stabilize hint::spin_loop
    
    Partially fix #55002, deprecate in another release
    
    r? ``````@KodrAus``````
    m-ou-se committed Nov 8, 2020
    Configuration menu
    Copy the full SHA
    1f034f7 View commit details
    Browse the repository at this point in the history
  7. Rollup merge of #76227 - CDirkx:const-poll, r=KodrAus

    Stabilize `Poll::is_ready` and `is_pending` as const
    
    Insta-stabilize the methods `is_ready` and `is_pending` of `std::task::Poll` as const, in the same way as [PR#76198](rust-lang/rust#76198).
    
    Possible because of the recent stabilization of const control flow.
    
    Part of #76225.
    m-ou-se committed Nov 8, 2020
    Configuration menu
    Copy the full SHA
    bdeace9 View commit details
    Browse the repository at this point in the history
  8. Rollup merge of #78065 - tshepang:nits, r=dtolnay

    make concurrency helper more pleasant to read
    m-ou-se committed Nov 8, 2020
    Configuration menu
    Copy the full SHA
    1c66688 View commit details
    Browse the repository at this point in the history
  9. Rollup merge of #78570 - sasurau4:test/check-pass-print-type-size, r=…

    …jyn514
    
    Remove FIXME comment in print_type_sizes ui test suite
    
    ## Overview
    Helps with #62277
    
    > The type sizes are likely only printed when the actual layout is computed. For generic types, this only happens during codegen.
    
    ref: https://rust-lang.zulipchat.com/#narrow/stream/182449-t-compiler.2Fhelp/topic/Codegen.20process.20question/near/215836807
    
    Some tests like `multiple_types.rs` are passed even if using `check-pass`. But tests should be agnostic to when the actual layout is computed. The `build-pass` is intentionally used for them. I remove FIXME comments.
    m-ou-se committed Nov 8, 2020
    Configuration menu
    Copy the full SHA
    834d761 View commit details
    Browse the repository at this point in the history
  10. Rollup merge of #78572 - de-vri-es:bsd-cloexec, r=m-ou-se

    Use SOCK_CLOEXEC and accept4() on more platforms.
    
    This PR enables the use of `SOCK_CLOEXEC` and `accept4` on more platforms.
    
    -----
    
    Android uses the linux kernel, so it should also support it.
    
    DragonflyBSD introduced them in 4.4 (December 2015):
    https://www.dragonflybsd.org/release44/
    
    FreeBSD introduced them in 10.0 (January 2014):
    https://wiki.freebsd.org/AtomicCloseOnExec
    
    Illumos introduced them in a commit in April 2013, not sure when it was released. It is quite possible that is has always been in Illumos:
    illumos/illumos-gate@5dbfd19
    https://illumos.org/man/3socket/socket
    https://illumos.org/man/3socket/accept4
    
    NetBSD introduced them in 6.0 (Oktober 2012) and 8.0 (July 2018):
    https://man.netbsd.org/NetBSD-6.0/socket.2
    https://man.netbsd.org/NetBSD-8.0/accept.2
    
    OpenBSD introduced them in 5.7 (May 2015):
    https://man.openbsd.org/socket https://man.openbsd.org/accept
    m-ou-se committed Nov 8, 2020
    Configuration menu
    Copy the full SHA
    eef9951 View commit details
    Browse the repository at this point in the history
  11. Rollup merge of #78658 - casey:x, r=Mark-Simulacrum

    Add a tool to run `x.py` from any subdirectory
    
    This adds a binary called `x` in `src/tools/x`. All it does is check the current directory and its ancestors for a file called `x.py`, and if it finds one, runs it.
    
    By installing x, you can easily run `x.py` from any subdirectory, and only need to type `x`.
    
    It can be installed with `cargo install --path src/tools/x`
    
    This is a copy of a [binary I've been using myself when working on rust](https://github.com/casey/bootstrap), currently published to crates.io as `bootstrap`.
    
    It could be changed to avoid indirecting through `x.py`, and instead call the bootstrap module directly. However, this seemed like the simplest thing possible, and won't break if the details of how the bootstrap module is invoked change.
    m-ou-se committed Nov 8, 2020
    Configuration menu
    Copy the full SHA
    7d9ad6d View commit details
    Browse the repository at this point in the history
  12. Rollup merge of #78706 - bjorn3:fix_run_make_without_llvm, r=Mark-Sim…

    …ulacrum
    
    Fix run-make tests running when LLVM is disabled
    
    The `--cc`, `--cxx`, `--cflags` and `--ar` flags were only passed to compiletest when `builder.config.llvm_enabled()` returned true. This is preventing me from running the tests on cg_clif.
    m-ou-se committed Nov 8, 2020
    Configuration menu
    Copy the full SHA
    a619e25 View commit details
    Browse the repository at this point in the history
  13. Rollup merge of #78728 - a1phyr:const_cell_into_inner, r=dtolnay

    Constantify `UnsafeCell::into_inner` and related
    
    Tracking issue: #78729
    
    This PR constantifies:
    - `UnsafeCell::into_inner`
    - `Cell::into_inner`
    - `RefCell::into_inner`
    - `Atomic*::into_inner`
    
    r? `````@dtolnay`````
    m-ou-se committed Nov 8, 2020
    Configuration menu
    Copy the full SHA
    2967e58 View commit details
    Browse the repository at this point in the history
  14. Rollup merge of #78775 - ghedo:bump-rustfmt-rls, r=Mark-Simulacrum

    Bump Rustfmt and RLS
    
    Should hopefully fix #78341 and fix #78340.
    m-ou-se committed Nov 8, 2020
    Configuration menu
    Copy the full SHA
    04859e5 View commit details
    Browse the repository at this point in the history
  15. Rollup merge of #78788 - jhpratt:isize-impl-fix, r=m-ou-se

    Correct unsigned equivalent of isize to be usize
    
    See [#74913 (comment)](rust-lang/rust#74913 (comment)) for why this matters. Apparently it hasn't been used anywhere else, though CI will tell for sure.
    m-ou-se committed Nov 8, 2020
    Configuration menu
    Copy the full SHA
    3541280 View commit details
    Browse the repository at this point in the history
  16. Rollup merge of #78811 - a1phyr:const_io_structs, r=dtolnay

    Make some std::io functions `const`
    
    Tracking issue: #78812
    
    Make the following functions `const`:
    - `io::Cursor::new`
    - `io::Cursor::get_ref`
    - `io::Cursor::position`
    - `io::empty`
    - `io::repeat`
    - `io::sink`
    
    r? `````@dtolnay`````
    m-ou-se committed Nov 8, 2020
    Configuration menu
    Copy the full SHA
    77f333b View commit details
    Browse the repository at this point in the history
  17. Rollup merge of #78828 - matthiaskrgr:sing_chr, r=lcnr

    use single char patterns for split() (clippy::single_char_pattern)
    m-ou-se committed Nov 8, 2020
    Configuration menu
    Copy the full SHA
    5cffa8f View commit details
    Browse the repository at this point in the history
  18. Rollup merge of #78841 - LeSeulArtichaut:foldable-derive, r=lcnr

    Small cleanup in `TypeFoldable` derive macro
    
    r? ```@lcnr```
    m-ou-se committed Nov 8, 2020
    Configuration menu
    Copy the full SHA
    2489ff7 View commit details
    Browse the repository at this point in the history
  19. Rollup merge of #78842 - shepmaster:bootstrap-rustfmt, r=Mark-Simulacrum

    Honor the rustfmt setting in config.toml
    
    Prior to this, setting the rustfmt configuration was ignored:
    
    ```
    % mkdir example
    
    % cd example
    
    % ../configure --set build.rustfmt=/usr/bin/true
    
    % ../x.py fmt
    ./x.py fmt is not supported on this channel
    failed to run: /Users/shep/Projects/rust/example/build/bootstrap/debug/bootstrap fmt
    Build completed unsuccessfully in 0:00:01
    ```
    
    And after:
    
    ```
    % ../x.py fmt
    Build completed successfully in 0:00:11
    ```
    
    r? `@Mark-Simulacrum`
    m-ou-se committed Nov 8, 2020
    Configuration menu
    Copy the full SHA
    cb90042 View commit details
    Browse the repository at this point in the history
  20. Rollup merge of #78843 - tmiasko:inline-trace, r=wesleywiser

    Less verbose debug logging from inlining integrator
    
    The inlining integrator produces relatively verbose and uninteresting
    logs.  Move them from a debug log level to a trace level, so that they
    can be easily isolated from others.
    m-ou-se committed Nov 8, 2020
    Configuration menu
    Copy the full SHA
    e5230fd View commit details
    Browse the repository at this point in the history
  21. Rollup merge of #78852 - camelid:intra-doc-bonanza, r=jyn514

    Convert a bunch of intra-doc links
    
    An intra-doc link bonanza!
    
    This was accomplished using a bunch of trial-and-error with sed.
    m-ou-se committed Nov 8, 2020
    Configuration menu
    Copy the full SHA
    96975e5 View commit details
    Browse the repository at this point in the history
  22. Rollup merge of #78860 - petrochenkov:resolvefmt, r=Mark-Simulacrum

    rustc_resolve: Use `#![feature(format_args_capture)]`
    
    This is the best new sugar for quite some time.
    
    (I only changed places that already used named arguments.)
    m-ou-se committed Nov 8, 2020
    Configuration menu
    Copy the full SHA
    829e880 View commit details
    Browse the repository at this point in the history
  23. Rollup merge of #78861 - o752d:patch-1, r=jonas-schievink

    typo and formatting
    
    fixed a typo and modified some line formatting justification while I'm here :)
    m-ou-se committed Nov 8, 2020
    Configuration menu
    Copy the full SHA
    c4e262e View commit details
    Browse the repository at this point in the history
  24. Rollup merge of #78865 - Aaron1011:fix/const-item-mut-reborrow, r=varkor

    Don't fire `CONST_ITEM_MUTATION` lint when borrowing a deref
    
    Fixes #78819
    
    This extends the check for dereferences added in PR #77324
    to cover mutable borrows, as well as direct writes. If we're operating
    on a dereference of a `const` item, we shouldn't be firing the lint.
    m-ou-se committed Nov 8, 2020
    Configuration menu
    Copy the full SHA
    91759b2 View commit details
    Browse the repository at this point in the history
  25. Auto merge of #78874 - m-ou-se:rollup-3jp1ijj, r=m-ou-se

    Rollup of 19 pull requests
    
    Successful merges:
    
     - #76097 (Stabilize hint::spin_loop)
     - #76227 (Stabilize `Poll::is_ready` and `is_pending` as const)
     - #78065 (make concurrency helper more pleasant to read)
     - #78570 (Remove FIXME comment in print_type_sizes ui test suite)
     - #78572 (Use SOCK_CLOEXEC and accept4() on more platforms.)
     - #78658 (Add a tool to run `x.py` from any subdirectory)
     - #78706 (Fix run-make tests running when LLVM is disabled)
     - #78728 (Constantify `UnsafeCell::into_inner` and related)
     - #78775 (Bump Rustfmt and RLS)
     - #78788 (Correct unsigned equivalent of isize to be usize)
     - #78811 (Make some std::io functions `const`)
     - #78828 (use single char patterns for split() (clippy::single_char_pattern))
     - #78841 (Small cleanup in `TypeFoldable` derive macro)
     - #78842 (Honor the rustfmt setting in config.toml)
     - #78843 (Less verbose debug logging from inlining integrator)
     - #78852 (Convert a bunch of intra-doc links)
     - #78860 (rustc_resolve: Use `#![feature(format_args_capture)]`)
     - #78861 (typo and formatting)
     - #78865 (Don't fire `CONST_ITEM_MUTATION` lint when borrowing a deref)
    
    Failed merges:
    
    r? `@ghost`
    `@rustbot` modify labels: rollup
    bors committed Nov 8, 2020
    Configuration menu
    Copy the full SHA
    b1277d0 View commit details
    Browse the repository at this point in the history
  26. Configuration menu
    Copy the full SHA
    b13817a View commit details
    Browse the repository at this point in the history
  27. Nicer hunk headers for rust files

    I found this trick at
    <https://tekin.co.uk/2020/10/better-git-diff-output-for-ruby-python-elixir-and-more>
    
    Before the hunk headers for changes in methods would refer to the impl:
    
    ```diff
    diff --git a/compiler/rustc_middle/src/ty/context.rs b/compiler/rustc_middle/src/ty/context.rs
    index 1c6937e685c..fa4264d729b 100644
    --- a/compiler/rustc_middle/src/ty/context.rs
    +++ b/compiler/rustc_middle/src/ty/context.rs
    @@ -678,7 +678,7 @@ impl<'a, 'tcx> HashStable<StableHashingContext<'a>> for TypeckResults<'tcx> {
                 ref closure_captures,
                 ref generator_interior_types,
             } = *self;
    -
    +        // foo
             hcx.with_node_id_hashing_mode(NodeIdHashingMode::HashDefPath, |hcx| {
                 type_dependent_defs.hash_stable(hcx, hasher);
                 field_indices.hash_stable(hcx, hasher);
    ```
    
    After the hunk headers refer to the actual function signature:
    
    ```diff
    diff --git a/compiler/rustc_middle/src/ty/context.rs b/compiler/rustc_middle/src/ty/context.rs
    index 1c6937e685c..fa4264d729b 100644
    --- a/compiler/rustc_middle/src/ty/context.rs
    +++ b/compiler/rustc_middle/src/ty/context.rs
    @@ -678,7 +678,7 @@ fn hash_stable(&self, hcx: &mut StableHashingContext<'a>, hasher: &mut StableHas
                 ref closure_captures,
                 ref generator_interior_types,
             } = *self;
    -
    +        // foo
             hcx.with_node_id_hashing_mode(NodeIdHashingMode::HashDefPath, |hcx| {
                 type_dependent_defs.hash_stable(hcx, hasher);
                 field_indices.hash_stable(hcx, hasher);
    ```
    
    When the function signature is visible, it will use the function
    signature of the previous method as hunk header:
    
    ```diff
    diff --git a/compiler/rustc_middle/src/ty/context.rs b/compiler/rustc_middle/src/ty/context.rs
    index 1c6937e685c..63058dfc837 100644
    --- a/compiler/rustc_middle/src/ty/context.rs
    +++ b/compiler/rustc_middle/src/ty/context.rs
    @@ -992,6 +992,7 @@ pub fn typeck_opt_const_arg(
         }
    
         pub fn alloc_steal_mir(self, mir: Body<'tcx>) -> &'tcx Steal<Body<'tcx>> {
    +        // foo
             self.arena.alloc(Steal::new(mir))
         }
    ```
    bjorn3 committed Nov 8, 2020
    Configuration menu
    Copy the full SHA
    3904617 View commit details
    Browse the repository at this point in the history
  28. Auto merge of #78712 - petrochenkov:visitok, r=Aaron1011

    rustc_ast: Visit tokens stored in AST nodes in mutable visitor
    
    After #77271 token visiting is enabled only for one visitor in `rustc_expand\src\mbe\transcribe.rs` which applies hygiene marks to tokens produced by declarative macros (`macro_rules` or `macro`), so this change doesn't affect anything else.
    
    When a macro has some interpolated token from an outer macro in its output
    ```rust
    macro inner() {
        $interpolated
    }
    ```
    we can use the usual interpretation of interpolated tokens in token-based model - a None-delimited group - to write this macro in an equivalent form
    ```rust
    macro inner() {
        ⟪ a b c d ⟫
    }
    ```
    
    When we are expanding the macro `inner` we need to apply hygiene marks to all tokens produced by it, including the tokens inside the group.
    
    Before this PR we did this by visiting the AST piece inside the interpolated token and applying marks to all spans in it.
    I'm not sure this is 100% correct (ideally we should apply the marks to tokens and then re-parse the AST from tokens), but it's a very good approximation at least.
    We didn't however apply the marks to actual tokens stored in the nonterminal, so if we used the nonterminal as a token rather than as an AST piece (e.g. passed it to a proc macro), then we got hygiene bugs.
    This PR applies the marks to tokens in addition to the AST pieces thus fixing the issue.
    
    r? `@Aaron1011`
    bors committed Nov 8, 2020
    Configuration menu
    Copy the full SHA
    1773f60 View commit details
    Browse the repository at this point in the history

Commits on Nov 9, 2020

  1. Rollup merge of #77640 - ethanboxx:int_error_matching_attempt_2, r=Ko…

    …drAus
    
    Refactor IntErrorKind to avoid "underflow" terminology
    
    This PR is a continuation of #76455
    
    # Changes
    
    - `Overflow` renamed to `PosOverflow` and `Underflow` renamed to `NegOverflow` after discussion in #76455
    - Changed some of the parsing code to return `InvalidDigit` rather than `Empty` for strings "+" and "-". https://users.rust-lang.org/t/misleading-error-in-str-parse-for-int-types/49178
    - Carry the problem `char` with the `InvalidDigit` variant.
    - Necessary changes were made to the compiler as it depends on `int_error_matching`.
    - Redid tests to match on specific errors.
    
    r? ```@KodrAus```
    Dylan-DPC committed Nov 9, 2020
    Configuration menu
    Copy the full SHA
    d69ee57 View commit details
    Browse the repository at this point in the history
  2. Rollup merge of #78026 - sunfishcode:symlink-hard-link, r=dtolnay

    Define `fs::hard_link` to not follow symlinks.
    
    POSIX leaves it [implementation-defined] whether `link` follows symlinks.
    In practice, for example, on Linux it does not and on FreeBSD it does.
    So, switch to `linkat`, so that we can pick a behavior rather than
    depending on OS defaults.
    
    Pick the option to not follow symlinks. This is somewhat arbitrary, but
    seems the less surprising choice because hard linking is a very
    low-level feature which requires the source and destination to be on
    the same mounted filesystem, and following a symbolic link could end
    up in a different mounted filesystem.
    
    [implementation-defined]: https://pubs.opengroup.org/onlinepubs/9699919799/functions/link.html
    Dylan-DPC committed Nov 9, 2020
    Configuration menu
    Copy the full SHA
    41134be View commit details
    Browse the repository at this point in the history
  3. Rollup merge of #78114 - jyn514:private, r=oli-obk

    Recognize `private_intra_doc_links` as a lint
    
    Previously, trying to allow this would give another error!
    
    ```
    warning: unknown lint: `private_intra_doc_links`
     --> private.rs:1:10
      |
    1 | #![allow(private_intra_doc_links)]
      |          ^^^^^^^^^^^^^^^^^^^^^^^ help: did you mean: `broken_intra_doc_links`
      |
      = note: `#[warn(unknown_lints)]` on by default
    
    warning: public documentation for `DocMe` links to private item `DontDocMe`
     --> private.rs:2:11
      |
    2 | /// docs [DontDocMe]
      |           ^^^^^^^^^ this item is private
      |
      = note: `#[warn(private_intra_doc_links)]` on by default
      = note: this link will resolve properly if you pass `--document-private-items`
    ```
    
    Fixes the issue found in rust-lang/rust#77249 (comment).
    
    r? ````````@Manishearth````````
    
    Does anyone know why this additional step is necessary? It seems weird this has to be declared in 3 different places.
    Dylan-DPC committed Nov 9, 2020
    Configuration menu
    Copy the full SHA
    b9671ae View commit details
    Browse the repository at this point in the history
  4. Rollup merge of #78228 - pietroalbini:finally, r=Mark-Simulacrum

    Promote aarch64-unknown-linux-gnu to Tier 1
    
    This PR promotes the `aarch64-unknown-linux-gnu` target to Tier 1, as proposed by [RFC 2959]:
    
    * The `aarch64-gnu` CI job is moved from `auto-fallible` to `auto`.
    * The platform support documentation is updated, uplifting the target to Tiert 1 with a note about missing stack probes support.
    * Building the documentation is enabled for the target, as we produce the `rust-docs` component for all Tier 1 platforms.
    
    [RFC 2959]: rust-lang/rfcs#2959
    Dylan-DPC committed Nov 9, 2020
    Configuration menu
    Copy the full SHA
    50086af View commit details
    Browse the repository at this point in the history
  5. Rollup merge of #78345 - jyn514:proper-names, r=varkor

    Fix handling of item names for HIR
    
    - Handle variants, fields, macros in `Node::ident()`
    - Handle the crate root in `opt_item_name`
    - Rewrite `item_name` in terms of `opt_item_name`
    
    I need this for both rust-lang/rust#77820 and rust-lang/rust#78082, so splitting it out into a separate PR so it can land early.
    Dylan-DPC committed Nov 9, 2020
    Configuration menu
    Copy the full SHA
    12c5f78 View commit details
    Browse the repository at this point in the history
  6. Rollup merge of #78437 - ssomers:btree_no_ord_at_node_level, r=Mark-S…

    …imulacrum
    
    BTreeMap: stop mistaking node for an orderly place
    
    A second mistake in #77612 was to ignore the node module's rightful comment "this module doesn't care whether the entries are sorted". And there's a much simpler way to visit the keys in order, if you check this separately from a single pass checking everything.
    
    r? ````````@Mark-Simulacrum````````
    Dylan-DPC committed Nov 9, 2020
    Configuration menu
    Copy the full SHA
    4e5b7ad View commit details
    Browse the repository at this point in the history
  7. Rollup merge of #78476 - RalfJung:btree-alias, r=Mark-Simulacrum

    fix some incorrect aliasing in the BTree
    
    This line is wrong:
    ```
    ptr::copy(slice.as_ptr().add(idx), slice.as_mut_ptr().add(idx + 1), slice.len() - idx);
    ```
    When `slice.as_mut_ptr()` is called, that creates a mutable reference to the entire slice, which invalidates the raw pointer previously returned by `slice.as_ptr()`. (Miri currently misses this because raw pointers are not tracked properly.)
    
    Cc ````````@ssomers````````
    Dylan-DPC committed Nov 9, 2020
    Configuration menu
    Copy the full SHA
    5639d97 View commit details
    Browse the repository at this point in the history
  8. Rollup merge of #78674 - tmiasko:inline-substs-for-mir-body, r=oli-obk

    inliner: Use substs_for_mir_body
    
    Changes from 68965 extended the kind of instances that are being
    inlined. For some of those, the `instance_mir` returns a MIR body that
    is already expressed in terms of the types found in substitution array,
    and doesn't need further substitution.
    
    Use `substs_for_mir_body` to take that into account.
    
    Resolves #78529.
    Resolves #78560.
    Dylan-DPC committed Nov 9, 2020
    Configuration menu
    Copy the full SHA
    b4589a8 View commit details
    Browse the repository at this point in the history
  9. Rollup merge of #78748 - fanzier:tuple-assignment, r=petrochenkov

    Implement destructuring assignment for tuples
    
    This is the first step towards implementing destructuring assignment (RFC: rust-lang/rfcs#2909, tracking issue: #71126). This PR is the first part of #71156, which was split up to allow for easier review.
    
    Quick summary: This change allows destructuring the LHS of an assignment if it's a (possibly nested) tuple.
    It is implemented via a desugaring (AST -> HIR lowering) as follows:
    ```rust
    (a,b) = (1,2)
    ```
    ... becomes ...
    ```rust
    {
      let (lhs0,lhs1) = (1,2);
      a = lhs0;
      b = lhs1;
    }
    ```
    
    Thanks to `@varkor` who helped with the implementation, particularly around default binding modes.
    
    r? `@petrochenkov`
    Dylan-DPC committed Nov 9, 2020
    Configuration menu
    Copy the full SHA
    abaa78b View commit details
    Browse the repository at this point in the history
  10. Rollup merge of #78868 - notriddle:master, r=GuillaumeGomez

    Fix tab focus on restyled switches
    
    Setting a checkbox to `display:none` makes it impossible to tab onto it, which makes the rustdoc settings page completely keyboard inaccessible.
    Dylan-DPC committed Nov 9, 2020
    Configuration menu
    Copy the full SHA
    479817a View commit details
    Browse the repository at this point in the history
  11. Rollup merge of #78878 - shepmaster:intersecting-ignores, r=Mark-Simu…

    …lacrum
    
    Avoid overlapping cfg attributes when both macOS and aarch64
    
    r? ``@Mark-Simulacrum``
    Dylan-DPC committed Nov 9, 2020
    Configuration menu
    Copy the full SHA
    a8beaa3 View commit details
    Browse the repository at this point in the history
  12. Rollup merge of #78882 - bjorn3:nicer_hunk_headers, r=Mark-Simulacrum

    Nicer hunk headers for rust files
    
    I found this trick at <https://tekin.co.uk/2020/10/better-git-diff-output-for-ruby-python-elixir-and-more>
    
    Before the hunk headers for changes in methods would refer to the impl:
    
    ```diff
    diff --git a/compiler/rustc_middle/src/ty/context.rs b/compiler/rustc_middle/src/ty/context.rs
    index 1c6937e685c..fa4264d729b 100644
    --- a/compiler/rustc_middle/src/ty/context.rs
    +++ b/compiler/rustc_middle/src/ty/context.rs
    ``@@`` -678,7 +678,7 ``@@`` impl<'a, 'tcx> HashStable<StableHashingContext<'a>> for TypeckResults<'tcx> {
                 ref closure_captures,
                 ref generator_interior_types,
             } = *self;
    -
    +        // foo
             hcx.with_node_id_hashing_mode(NodeIdHashingMode::HashDefPath, |hcx| {
                 type_dependent_defs.hash_stable(hcx, hasher);
                 field_indices.hash_stable(hcx, hasher);
    ```
    
    After the hunk headers refer to the actual function signature:
    
    ```diff
    diff --git a/compiler/rustc_middle/src/ty/context.rs b/compiler/rustc_middle/src/ty/context.rs
    index 1c6937e685c..fa4264d729b 100644
    --- a/compiler/rustc_middle/src/ty/context.rs
    +++ b/compiler/rustc_middle/src/ty/context.rs
    ``@@`` -678,7 +678,7 ``@@`` fn hash_stable(&self, hcx: &mut StableHashingContext<'a>, hasher: &mut StableHas
                 ref closure_captures,
                 ref generator_interior_types,
             } = *self;
    -
    +        // foo
             hcx.with_node_id_hashing_mode(NodeIdHashingMode::HashDefPath, |hcx| {
                 type_dependent_defs.hash_stable(hcx, hasher);
                 field_indices.hash_stable(hcx, hasher);
    ```
    
    When the function signature is visible, it will use the function
    signature of the previous method as hunk header:
    
    ```diff
    diff --git a/compiler/rustc_middle/src/ty/context.rs b/compiler/rustc_middle/src/ty/context.rs
    index 1c6937e685c..63058dfc837 100644
    --- a/compiler/rustc_middle/src/ty/context.rs
    +++ b/compiler/rustc_middle/src/ty/context.rs
    ``@@`` -992,6 +992,7 ``@@`` pub fn typeck_opt_const_arg(
         }
    
         pub fn alloc_steal_mir(self, mir: Body<'tcx>) -> &'tcx Steal<Body<'tcx>> {
    +        // foo
             self.arena.alloc(Steal::new(mir))
         }
    ```
    Dylan-DPC committed Nov 9, 2020
    Configuration menu
    Copy the full SHA
    92adac9 View commit details
    Browse the repository at this point in the history
  13. Auto merge of #78889 - Dylan-DPC:rollup-6zjhahf, r=Dylan-DPC

    Rollup of 12 pull requests
    
    Successful merges:
    
     - #77640 (Refactor IntErrorKind to avoid "underflow" terminology)
     - #78026 (Define `fs::hard_link` to not follow symlinks.)
     - #78114 (Recognize `private_intra_doc_links` as a lint)
     - #78228 (Promote aarch64-unknown-linux-gnu to Tier 1)
     - #78345 (Fix handling of item names for HIR)
     - #78437 (BTreeMap: stop mistaking node for an orderly place)
     - #78476 (fix some incorrect aliasing in the BTree)
     - #78674 (inliner: Use substs_for_mir_body)
     - #78748 (Implement destructuring assignment for tuples)
     - #78868 (Fix tab focus on restyled switches)
     - #78878 (Avoid overlapping cfg attributes when both macOS and aarch64)
     - #78882 (Nicer hunk headers for rust files)
    
    Failed merges:
    
    r? `@ghost`
    `@rustbot` modify labels: rollup
    bors committed Nov 9, 2020
    Configuration menu
    Copy the full SHA
    fe8f026 View commit details
    Browse the repository at this point in the history
  14. Auto merge of #78201 - joshtriplett:rustc-tls-model, r=Mark-Simulacrum

    Compile rustc crates with the initial-exec TLS model
    
    This should produce more efficient code, with fewer calls to
    __tls_get_addr. The tradeoff is that libraries using it won't work with
    dlopen, but that shouldn't be a problem for rustc's internal libraries.
    bors committed Nov 9, 2020
    Configuration menu
    Copy the full SHA
    25f6938 View commit details
    Browse the repository at this point in the history
  15. Lower assertion terminators.

    vext01 committed Nov 9, 2020
    Configuration menu
    Copy the full SHA
    19cb523 View commit details
    Browse the repository at this point in the history
  16. Configuration menu
    Copy the full SHA
    c7afaec View commit details
    Browse the repository at this point in the history

Commits on Nov 10, 2020

  1. Configuration menu
    Copy the full SHA
    b5a20fb View commit details
    Browse the repository at this point in the history
  2. Merge branch 'master' of https://github.com/softdevteam/ykrustc into …

    …sync-upstream-20201109
    vext01 committed Nov 10, 2020
    Configuration menu
    Copy the full SHA
    16dfe83 View commit details
    Browse the repository at this point in the history