Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rollup of 10 pull requests #87540

Merged
merged 32 commits into from
Jul 28, 2021
Merged

Rollup of 10 pull requests #87540

merged 32 commits into from
Jul 28, 2021

Commits on Jul 20, 2021

  1. Configuration menu
    Copy the full SHA
    9b75213 View commit details
    Browse the repository at this point in the history
  2. Ignore example in automation

    ricobbe committed Jul 20, 2021
    Configuration menu
    Copy the full SHA
    3061b9b View commit details
    Browse the repository at this point in the history
  3. Fix ignore annotation

    ricobbe committed Jul 20, 2021
    Configuration menu
    Copy the full SHA
    8e84e4d View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    e7fe2df View commit details
    Browse the repository at this point in the history

Commits on Jul 25, 2021

  1. Don't treat git repos as non-existent when ignore_git is set

    The new submodule handling depends on `is_git()` to be accurate to
    decide whether it should handle submodules at all or not. Unfortunately,
    `is_git()` treated "this directory does not have a git repository" and
    "this repository should not be used for SHA/version/commit date info"
    the same. This changes it to distinguish the two.
    
    To clarify: ignore_get is set by default whenever channel == "dev", which it is by default whenever you're compiling locally. So basically everyone would hit this, not just people who had explicitly configured ignore_git.
    
    Here's an example of an error this fixes:
    
    ```
    $ x build
    Updating only changed submodules
    Submodules updated in 0.01 seconds
        Finished dev [unoptimized + debuginfo] target(s) in 0.17s
    warning: x.py has made several changes recently you may want to look at
    help: consider looking at the changes in `src/bootstrap/CHANGELOG.md`
    note: to silence this warning, add `changelog-seen = 2` at the top of `config.toml`
    Building stage0 std artifacts (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu)
        Finished release [optimized] target(s) in 0.16s
    Copying stage0 std from stage0 (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu / x86_64-unknown-linux-gnu)
    Building LLVM for x86_64-unknown-linux-gnu
    detected home dir change, cleaning out entire build directory
    running: "cmake" "/home/joshua/rustc3/src/llvm-project/llvm" "-G" "Ninja" "-DLLVM_ENABLE_ASSERTIONS=OFF" "-DLLVM_TARGETS_TO_BUILD=AArch64;ARM;BPF;Hexagon;MSP430;Mips;NVPTX;PowerPC;RISCV;Sparc;SystemZ;WebAssembly;X86" "-DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD=AVR" "-DLLVM_INCLUDE_EXAMPLES=OFF" "-DLLVM_INCLUDE_DOCS=OFF" "-DLLVM_INCLUDE_BENCHMARKS=OFF" "-DLLVM_ENABLE_TERMINFO=OFF" "-DLLVM_ENABLE_LIBEDIT=OFF" "-DLLVM_ENABLE_BINDINGS=OFF" "-DLLVM_ENABLE_Z3_SOLVER=OFF" "-DLLVM_PARALLEL_COMPILE_JOBS=48" "-DLLVM_TARGET_ARCH=x86_64" "-DLLVM_DEFAULT_TARGET_TRIPLE=x86_64-unknown-linux-gnu" "-DLLVM_ENABLE_ZLIB=ON" "-DLLVM_ENABLE_LIBXML2=OFF" "-DLLVM_VERSION_SUFFIX=-rust-dev" "-DCMAKE_INSTALL_MESSAGE=LAZY" "-DCMAKE_C_COMPILER=gcc" "-DCMAKE_CXX_COMPILER=g++" "-DCMAKE_ASM_COMPILER=gcc" "-DCMAKE_C_FLAGS=-ffunction-sections -fdata-sections -fPIC -m64" "-DCMAKE_CXX_FLAGS=-ffunction-sections -fdata-sections -fPIC -m64" "-DCMAKE_INSTALL_PREFIX=/home/joshua/rustc3/build/x86_64-unknown-linux-gnu/llvm" "-DCMAKE_ASM_FLAGS= -ffunction-sections -fdata-sections -fPIC -m64" "-DCMAKE_BUILD_TYPE=Release"
    CMake Error: The source directory "/home/joshua/rustc3/src/llvm-project/llvm" does not exist.
    Specify --help for usage, or press the help button on the CMake GUI.
    thread 'main' panicked at '
    command did not execute successfully, got: exit status: 1
    
    build script failed, must exit now', /home/joshua/.local/lib/cargo/registry/src/github.com-1ecc6299db9ec823/cmake-0.1.44/src/lib.rs:885:5
    note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
    	finished in 0.783 seconds
    Build completed unsuccessfully in 0:00:01
    ```
    jyn514 committed Jul 25, 2021
    Configuration menu
    Copy the full SHA
    7cab739 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    e8238a7 View commit details
    Browse the repository at this point in the history
  3. tidy

    ibraheemdev committed Jul 25, 2021
    Configuration menu
    Copy the full SHA
    30df151 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    880e691 View commit details
    Browse the repository at this point in the history

Commits on Jul 27, 2021

  1. Configuration menu
    Copy the full SHA
    7abbc6e View commit details
    Browse the repository at this point in the history
  2. Revert "SGX mutex is movable"

    This reverts commit 30b82e0.
    Jethro Beekman committed Jul 27, 2021
    Configuration menu
    Copy the full SHA
    eb6f2d4 View commit details
    Browse the repository at this point in the history
  3. Add warning to SGX mutex implementation

    Jethro Beekman committed Jul 27, 2021
    Configuration menu
    Copy the full SHA
    b518dc7 View commit details
    Browse the repository at this point in the history
  4. bootstrap.py: remove unused git log option

    When determining which LLVM artifacts to download, bootstrap.py
    calls: `git log --author=bors --format=%H -n1 -m --first-parent --
    src/llvm-project src/bootstrap/download-ci-llvm-stamp src/version`.
    However, the `-m` option has no effect, per the `git log` help:
    
    > -m
    > This option makes diff output for merge commits to be shown in the
    > default format. -m will produce the output only if -p is given as
    > well. The default format could be changed using log.diffMerges
    > configuration parameter, which default value is separate.
    
    Accordingly, this commit removes use of the -m option in favor of
    `--no-patch`, to make clear that this command should never output
    diff information, as the SHA-1 hash is the only desired output.
    Tested using git 2.32, this does not change the
    output of the command.
    
    The motivation for this change is that some patched versions of git
    change the behavior of the `-m` flag to imply `-p`, rather than to do
    nothing unless `-p` is passed. These patched versions of git lead to
    this script not working. Google's corp-provided git is one such example.
    hudson-ayers committed Jul 27, 2021
    Configuration menu
    Copy the full SHA
    1259742 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    5bff842 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    38bdd0e View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    66dbeb5 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    9629d79 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    df5e516 View commit details
    Browse the repository at this point in the history
  10. Update range.rs

    Stop creating a reference then immediately dereferencing it.
    frogtd authored Jul 27, 2021
    Configuration menu
    Copy the full SHA
    47414aa View commit details
    Browse the repository at this point in the history
  11. remove unneeded stringify

    syvb committed Jul 27, 2021
    Configuration menu
    Copy the full SHA
    0e01749 View commit details
    Browse the repository at this point in the history
  12. Bless nll tests

    spastorino committed Jul 27, 2021
    Configuration menu
    Copy the full SHA
    d395fe8 View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    f16ae7e View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    dbd0fd2 View commit details
    Browse the repository at this point in the history

Commits on Jul 28, 2021

  1. Rollup merge of rust-lang#87315 - ricobbe:raw-dylib-unstable-book, r=…

    …wesleywiser
    
    Add docs for raw-dylib to unstable book
    JohnTitor authored Jul 28, 2021
    Configuration menu
    Copy the full SHA
    911e22b View commit details
    Browse the repository at this point in the history
  2. Rollup merge of rust-lang#87330 - inquisitivecrystal:extend-reserve, …

    …r=JohnTitor
    
    Use hashbrown's `extend_reserve()` in `HashMap`
    
    When we added `extend_reserve()` to our implementation of `Extend` for `HashMap`, hashbrown didn't have a version we could use. Now that hashbrown has added it, we should use its version instead of implementing it ourself.
    JohnTitor authored Jul 28, 2021
    Configuration menu
    Copy the full SHA
    98f7a00 View commit details
    Browse the repository at this point in the history
  3. Rollup merge of rust-lang#87443 - jyn514:submodules-take-n, r=jyn514

    Don't treat git repos as non-existent when `ignore_git` is set
    
    The new submodule handling depends on `is_git()` to be accurate to
    decide whether it should handle submodules at all or not. Unfortunately,
    `is_git()` treated "this directory does not have a git repository" and
    "this repository should not be used for SHA/version/commit date info"
    the same. This changes it to distinguish the two.
    
    To clarify: ignore_get is set by default whenever channel == "dev", which it is by default whenever you're compiling locally. So basically everyone would hit this, not just people who had explicitly configured ignore_git.
    
    Here's an example of an error this fixes:
    
    ```
    $ x build
    Updating only changed submodules
    Submodules updated in 0.01 seconds
        Finished dev [unoptimized + debuginfo] target(s) in 0.17s
    warning: x.py has made several changes recently you may want to look at
    help: consider looking at the changes in `src/bootstrap/CHANGELOG.md`
    note: to silence this warning, add `changelog-seen = 2` at the top of `config.toml`
    Building stage0 std artifacts (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu)
        Finished release [optimized] target(s) in 0.16s
    Copying stage0 std from stage0 (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu / x86_64-unknown-linux-gnu)
    Building LLVM for x86_64-unknown-linux-gnu
    detected home dir change, cleaning out entire build directory
    running: "cmake" "/home/joshua/rustc3/src/llvm-project/llvm" "-G" "Ninja" "-DLLVM_ENABLE_ASSERTIONS=OFF" "-DLLVM_TARGETS_TO_BUILD=AArch64;ARM;BPF;Hexagon;MSP430;Mips;NVPTX;PowerPC;RISCV;Sparc;SystemZ;WebAssembly;X86" "-DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD=AVR" "-DLLVM_INCLUDE_EXAMPLES=OFF" "-DLLVM_INCLUDE_DOCS=OFF" "-DLLVM_INCLUDE_BENCHMARKS=OFF" "-DLLVM_ENABLE_TERMINFO=OFF" "-DLLVM_ENABLE_LIBEDIT=OFF" "-DLLVM_ENABLE_BINDINGS=OFF" "-DLLVM_ENABLE_Z3_SOLVER=OFF" "-DLLVM_PARALLEL_COMPILE_JOBS=48" "-DLLVM_TARGET_ARCH=x86_64" "-DLLVM_DEFAULT_TARGET_TRIPLE=x86_64-unknown-linux-gnu" "-DLLVM_ENABLE_ZLIB=ON" "-DLLVM_ENABLE_LIBXML2=OFF" "-DLLVM_VERSION_SUFFIX=-rust-dev" "-DCMAKE_INSTALL_MESSAGE=LAZY" "-DCMAKE_C_COMPILER=gcc" "-DCMAKE_CXX_COMPILER=g++" "-DCMAKE_ASM_COMPILER=gcc" "-DCMAKE_C_FLAGS=-ffunction-sections -fdata-sections -fPIC -m64" "-DCMAKE_CXX_FLAGS=-ffunction-sections -fdata-sections -fPIC -m64" "-DCMAKE_INSTALL_PREFIX=/home/joshua/rustc3/build/x86_64-unknown-linux-gnu/llvm" "-DCMAKE_ASM_FLAGS= -ffunction-sections -fdata-sections -fPIC -m64" "-DCMAKE_BUILD_TYPE=Release"
    CMake Error: The source directory "/home/joshua/rustc3/src/llvm-project/llvm" does not exist.
    Specify --help for usage, or press the help button on the CMake GUI.
    thread 'main' panicked at '
    command did not execute successfully, got: exit status: 1
    
    build script failed, must exit now', /home/joshua/.local/lib/cargo/registry/src/github.com-1ecc6299db9ec823/cmake-0.1.44/src/lib.rs:885:5
    note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
    	finished in 0.783 seconds
    Build completed unsuccessfully in 0:00:01
    ```
    
    I *believe* this regression was only introduced in rust-lang#87380, not rust-lang#82653. ``@petrochenkov`` can you check that this fixes the issue you encountered in rust-lang#82653 (comment) ?
    
    r? ``@Mark-Simulacrum``
    JohnTitor authored Jul 28, 2021
    Configuration menu
    Copy the full SHA
    287a252 View commit details
    Browse the repository at this point in the history
  4. Rollup merge of rust-lang#87453 - ibraheemdev:i-68697, r=wesleywiser

    Suggest removing unnecessary &mut as help message
    
    Closes rust-lang#68697
    JohnTitor authored Jul 28, 2021
    Configuration menu
    Copy the full SHA
    954137e View commit details
    Browse the repository at this point in the history
  5. Rollup merge of rust-lang#87500 - Smittyvb:min-max-docs, r=kennytm

    Document math behind MIN/MAX consts on integers
    
    Currently the documentation for `[integer]::{MIN, MAX}` doesn't explain where the constants come from. This documents how the values of those constants are related to powers of 2.
    JohnTitor authored Jul 28, 2021
    Configuration menu
    Copy the full SHA
    35dddd3 View commit details
    Browse the repository at this point in the history
  6. Rollup merge of rust-lang#87501 - spastorino:remove-min-tait, r=oli-obk

    Remove min_type_alias_impl_trait in favor of type_alias_impl_trait
    
    r? ``@oli-obk``
    JohnTitor authored Jul 28, 2021
    Configuration menu
    Copy the full SHA
    23479f7 View commit details
    Browse the repository at this point in the history
  7. Rollup merge of rust-lang#87507 - jethrogb:jb/sgx-unmoveable-mutex, r…

    …=dtolnay
    
    SGX mutex is *not* moveable
    
    Reverts the erroneous change in rust-lang#85029.
    JohnTitor authored Jul 28, 2021
    Configuration menu
    Copy the full SHA
    8bc7ec1 View commit details
    Browse the repository at this point in the history
  8. Rollup merge of rust-lang#87513 - hudson-ayers:bootstrap-py-fix, r=jy…

    …n514
    
    bootstrap.py: change `git log` option to indicate desired behavior
    
    When determining which LLVM artifacts to download, bootstrap.py calls: `git log --author=bors --format=%H -n1 -m --first-parent --
    src/llvm-project src/bootstrap/download-ci-llvm-stamp src/version`. However, the `-m` option has no effect, per the `git log` help:
    
    > -m
    > This option makes diff output for merge commits to be shown in the
    > default format. -m will produce the output only if -p is given as
    > well. The default format could be changed using log.diffMerges
    > configuration parameter, which default value is separate.
    
    Accordingly, this commit removes use of the -m option in favor of ~~`--diff-merges=off`~~ `--no-patch`, since no diff information is needed, and in fact the presence of a diff breaks the command. Tested using git 2.32, this does not change the output of the command.
    
    The motivation for this change is that some patched versions of git change the behavior of the `-m` flag to imply `-p`, rather than to do nothing unless `-p` is passed. These patched versions of git lead to this script not working. Google's corp-provided git is one such example.
    JohnTitor authored Jul 28, 2021
    Configuration menu
    Copy the full SHA
    1682382 View commit details
    Browse the repository at this point in the history
  9. Rollup merge of rust-lang#87523 - frogtd:patch-2, r=dtolnay

    Stop creating a reference then immediately dereferencing it.
    
    Stop creating a reference then immediately dereferencing it.
    JohnTitor authored Jul 28, 2021
    Configuration menu
    Copy the full SHA
    4ae5296 View commit details
    Browse the repository at this point in the history
  10. Rollup merge of rust-lang#87524 - FabianWolff:issue-87495, r=Aaron1011

    Fix ICE in `diagnostic_hir_wf_check`
    
    Fixes rust-lang#87495. The [documentation for `ObligationCauseCode::WellFormed`](https://doc.rust-lang.org/nightly/nightly-rustc/rustc_infer/traits/enum.ObligationCauseCode.html#variant.WellFormed) says that
    
    > it is always correct [...] to specify `WellFormed(None)`
    
    instead of `WellFormed(Some(...))`, which seems to have caused the issue here, as `diagnostic_hir_wf_check` does not expect to be called with an associated constant and will ICE:
    
    https://github.com/rust-lang/rust/blob/fd853c00e255559255885aadff9e93a1760c8728/compiler/rustc_typeck/src/hir_wf_check.rs#L131-L134
    
    Therefore, I have changed `check_associated_item()` to pass a `WellFormed(None)` for associated constants.
    
    r? ``@Aaron1011``
    JohnTitor authored Jul 28, 2021
    Configuration menu
    Copy the full SHA
    7985e4c View commit details
    Browse the repository at this point in the history