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 13 pull requests #64200

Closed

Commits on Aug 19, 2019

  1. use wasi crate

    newpavlov committed Aug 19, 2019
    Configuration menu
    Copy the full SHA
    6896ed3 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    23cc850 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    cb52065 View commit details
    Browse the repository at this point in the history
  4. remove to_string

    newpavlov committed Aug 19, 2019
    Configuration menu
    Copy the full SHA
    75a553f View commit details
    Browse the repository at this point in the history
  5. use wasi::get_args

    newpavlov committed Aug 19, 2019
    Configuration menu
    Copy the full SHA
    7a4f0ae View commit details
    Browse the repository at this point in the history
  6. use wasi::get_environ

    newpavlov committed Aug 19, 2019
    Configuration menu
    Copy the full SHA
    52d2871 View commit details
    Browse the repository at this point in the history
  7. remove libc import

    newpavlov committed Aug 19, 2019
    Configuration menu
    Copy the full SHA
    8394dbb View commit details
    Browse the repository at this point in the history
  8. use non-zero clock id

    newpavlov committed Aug 19, 2019
    Configuration menu
    Copy the full SHA
    338fc7d View commit details
    Browse the repository at this point in the history
  9. typo fix

    newpavlov committed Aug 19, 2019
    Configuration menu
    Copy the full SHA
    7658a13 View commit details
    Browse the repository at this point in the history
  10. use const

    newpavlov committed Aug 19, 2019
    Configuration menu
    Copy the full SHA
    e5ba80a View commit details
    Browse the repository at this point in the history
  11. fix

    newpavlov committed Aug 19, 2019
    Configuration menu
    Copy the full SHA
    c052376 View commit details
    Browse the repository at this point in the history

Commits on Aug 20, 2019

  1. fix C incompatibilities

    newpavlov committed Aug 20, 2019
    Configuration menu
    Copy the full SHA
    744442d View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    7daf890 View commit details
    Browse the repository at this point in the history
  3. use new get_args

    newpavlov committed Aug 20, 2019
    Configuration menu
    Copy the full SHA
    4dee102 View commit details
    Browse the repository at this point in the history

Commits on Aug 21, 2019

  1. update args

    newpavlov committed Aug 21, 2019
    Configuration menu
    Copy the full SHA
    88fd945 View commit details
    Browse the repository at this point in the history
  2. fixes

    newpavlov committed Aug 21, 2019
    Configuration menu
    Copy the full SHA
    a47e3c0 View commit details
    Browse the repository at this point in the history
  3. move cvt

    newpavlov committed Aug 21, 2019
    Configuration menu
    Copy the full SHA
    926f364 View commit details
    Browse the repository at this point in the history

Commits on Aug 24, 2019

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

Commits on Aug 29, 2019

  1. update to wasi v0.7

    newpavlov committed Aug 29, 2019
    Configuration menu
    Copy the full SHA
    6374b84 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    06acfb2 View commit details
    Browse the repository at this point in the history
  3. whitelist wasi crate

    newpavlov authored Aug 29, 2019
    Configuration menu
    Copy the full SHA
    127311b View commit details
    Browse the repository at this point in the history

Commits on Aug 30, 2019

  1. Update libc to 0.2.62

    mati865 committed Aug 30, 2019
    Configuration menu
    Copy the full SHA
    0a757df View commit details
    Browse the repository at this point in the history
  2. simplify code

    newpavlov committed Aug 30, 2019
    Configuration menu
    Copy the full SHA
    9fd203a View commit details
    Browse the repository at this point in the history

Commits on Sep 1, 2019

  1. Rename test locals to work around LLDB bug

    LLDB's expression parser can't unambiguously resolve local variables in
    some cases, as described in rust-lang#47938. Work around this by using names that
    don't shadow direct submodules of `core`.
    ranweiler committed Sep 1, 2019
    Configuration menu
    Copy the full SHA
    6ed50f4 View commit details
    Browse the repository at this point in the history

Commits on Sep 2, 2019

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

Commits on Sep 3, 2019

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

Commits on Sep 4, 2019

  1. Configuration menu
    Copy the full SHA
    cb84aa4 View commit details
    Browse the repository at this point in the history
  2. Assume non-git LLVM is fresh if the stamp file exists

    Rustbuild usually writes the LLVM submodule commit in a stamp file, so
    we can avoid rebuilding it unnecessarily. However, for builds from a
    source tarball (non-git), we were assuming a rebuild is always needed.
    This can cause a lot of extra work if any environment like `CFLAGS`
    changed between steps like build and install, which are often separate
    in distro builds.
    
    Now we also write an empty stamp file if the git commit is unknown, and
    its presence is trusted to indicate that no rebuild is needed. An info
    message reports that this is happening, along with the stamp file path
    that can be deleted to force a rebuild anyway.
    cuviper committed Sep 4, 2019
    Configuration menu
    Copy the full SHA
    53fe764 View commit details
    Browse the repository at this point in the history

Commits on Sep 5, 2019

  1. Configuration menu
    Copy the full SHA
    af06bfb View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    f8835ee View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    6d537d4 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    219ddde View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    f343e84 View commit details
    Browse the repository at this point in the history
  6. resolve: move fresh_binding.

    Centril committed Sep 5, 2019
    Configuration menu
    Copy the full SHA
    fd3b441 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    dc91e22 View commit details
    Browse the repository at this point in the history
  8. resolve: already-bound-check: account for or-patterns.

    Also document `ast::Pat::walk`.
    Centril committed Sep 5, 2019
    Configuration menu
    Copy the full SHA
    70cae78 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    166a558 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    498ec59 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    896a1c7 View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    33317c7 View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    aa7a02b View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    dbe6873 View commit details
    Browse the repository at this point in the history
  15. Configuration menu
    Copy the full SHA
    ca968a1 View commit details
    Browse the repository at this point in the history
  16. Configuration menu
    Copy the full SHA
    998060b View commit details
    Browse the repository at this point in the history
  17. or-patterns: syntax: adjust parser removing a hack.

    Fuse `parse_top_pat` and `parse_top_pat_unpack` into just `parse_top_pat`.
    Centril committed Sep 5, 2019
    Configuration menu
    Copy the full SHA
    ad3db72 View commit details
    Browse the repository at this point in the history
  18. Configuration menu
    Copy the full SHA
    424492a View commit details
    Browse the repository at this point in the history
  19. Configuration menu
    Copy the full SHA
    76625eb View commit details
    Browse the repository at this point in the history
  20. Configuration menu
    Copy the full SHA
    3fccbac View commit details
    Browse the repository at this point in the history
  21. or-patterns: adjust lowering of ast::Arm & ast::ExprKind::Let.

    Introduces a temporary hack to keep `Vec<P<Pat>>` in
    `hir::Arm.pats` so that we keep the changes more incremental.
    Centril committed Sep 5, 2019
    Configuration menu
    Copy the full SHA
    d8ef907 View commit details
    Browse the repository at this point in the history
  22. Configuration menu
    Copy the full SHA
    a867c5f View commit details
    Browse the repository at this point in the history
  23. Configuration menu
    Copy the full SHA
    be95dee View commit details
    Browse the repository at this point in the history
  24. Configuration menu
    Copy the full SHA
    d70b0c5 View commit details
    Browse the repository at this point in the history
  25. Configuration menu
    Copy the full SHA
    a7db1a4 View commit details
    Browse the repository at this point in the history
  26. Configuration menu
    Copy the full SHA
    0341b78 View commit details
    Browse the repository at this point in the history
  27. Better way of conditioning the sanitizer builds

    Previously the build would take the presence of the LLVM_CONFIG envvar to
    mean that the sanitizers should be built, but this is a common envvar that
    could be set for reasons unrelated to the rustc sanitizers.
    
    This commit adds a new envvar RUSTC_BUILD_SANITIZERS and uses it instead.
    infinity0 committed Sep 5, 2019
    Configuration menu
    Copy the full SHA
    485697b View commit details
    Browse the repository at this point in the history
  28. Configuration menu
    Copy the full SHA
    16ba502 View commit details
    Browse the repository at this point in the history
  29. Update Clippy

    tesuji committed Sep 5, 2019
    Configuration menu
    Copy the full SHA
    bafff2d View commit details
    Browse the repository at this point in the history
  30. Configuration menu
    Copy the full SHA
    d4d5aa4 View commit details
    Browse the repository at this point in the history
  31. std: Improve downstream codegen in Command::env

    This commit rejiggers the generics used in the implementation of
    `Command::env` with the purpose of reducing the amount of codegen that
    needs to happen in consumer crates, instead preferring to generate code
    into libstd.
    
    This was found when profiling the compile times of the `cc` crate where
    the binary rlib produced had a lot of `BTreeMap` code compiled into it
    but the crate doesn't actually use `BTreeMap`. It turns out that
    `Command::env` is generic enough to codegen the entire implementation in
    calling crates, but in this case there's no performance concern so it's
    fine to compile the code into the standard library.
    
    This change is done by removing the generic on the `CommandEnv` map
    which is intended to handle case-insensitive variables on Windows.
    Instead now a generic isn't used but rather a `use` statement defined
    per-platform is used.
    
    With this commit a debug build of `Command::new("foo").env("a", "b")`
    drops from 21k lines of LLVM IR to 10k.
    alexcrichton committed Sep 5, 2019
    Configuration menu
    Copy the full SHA
    0b7ba6e View commit details
    Browse the repository at this point in the history
  32. fill metadata in rustc_lexer's Cargo.toml

    We publish this to crates.io, so having non-empty meta is useful
    matklad committed Sep 5, 2019
    Configuration menu
    Copy the full SHA
    060fe88 View commit details
    Browse the repository at this point in the history
  33. Add Fuchsia to actually_monotonic

    Fuchsia provides a fully monotonic clock.
    cramertj committed Sep 5, 2019
    Configuration menu
    Copy the full SHA
    bb1e425 View commit details
    Browse the repository at this point in the history

Commits on Sep 6, 2019

  1. Configuration menu
    Copy the full SHA
    b457caa View commit details
    Browse the repository at this point in the history
  2. Rollup merge of rust-lang#64019 - mati865:libc, r=alexcrichton

    Update libc to 0.2.62
    
    Hopefully this will mitigate rust-lang/libc#1489 and rust-lang#64006
    Mark-Simulacrum authored Sep 6, 2019
    Configuration menu
    Copy the full SHA
    3691051 View commit details
    Browse the repository at this point in the history
  3. Rollup merge of rust-lang#64052 - ranweiler:debuginfo-boxed-struct-64…

    …050, r=alexcrichton
    
    Rename test locals to work around LLDB bug
    
    LLDB's expression parser can't unambiguously resolve local variables in
    some cases, as described in rust-lang#47938. Work around this by using names that
    don't shadow direct submodules of `core`.
    
    Closes rust-lang#64050.
    Mark-Simulacrum authored Sep 6, 2019
    Configuration menu
    Copy the full SHA
    206596c View commit details
    Browse the repository at this point in the history
  4. Rollup merge of rust-lang#64094 - kawa-yoiko:rustdoc-search, r=Guilla…

    …umeGomez
    
    Improve searching in rustdoc and add tests
    
    👋 I have made searching in rustdoc more intuitive, added a couple more tests and made a little shell script to aid testing. Closes rust-lang#63005.
    
    It took me quite a while to figure out how to run the tests for rustdoc (instead of running tests for other crates with rustdoc); the only pointer I found was [hidden in the rustc book](https://rust-lang.github.io/rustc-guide/rustdoc.html#cheat-sheet). Maybe this could be better documented? I shall be delighted to help if it is desirable.
    Mark-Simulacrum authored Sep 6, 2019
    Configuration menu
    Copy the full SHA
    8dab014 View commit details
    Browse the repository at this point in the history
  5. Rollup merge of rust-lang#64096 - GuillaumeGomez:theme-regex-fix, r=M…

    …ark-Simulacrum
    
    Fix regex replacement in theme detection
    
    Fixes rust-lang#64061.
    
    This is sadly a lot of bad luck: after making the changes and re-build the docs, I just forgot to force reload the page. Hence having the old (working) version with two replacements instead of the failing regex. Sorry again about that...
    
    cc @fenhl
    r? @Mark-Simulacrum
    Mark-Simulacrum authored Sep 6, 2019
    Configuration menu
    Copy the full SHA
    5f1acb7 View commit details
    Browse the repository at this point in the history
  6. Rollup merge of rust-lang#64111 - Centril:ast-only-patkind-or, r=petr…

    …ochenkov
    
    or-patterns: Uniformly use `PatKind::Or` in AST & Fix/Cleanup resolve
    
    Following up on work in rust-lang#63693 and rust-lang#61708, in this PR we:
    
    - Uniformly use `PatKind::Or(...)` in AST:
    
       - Change `ast::Arm.pats: Vec<P<Pat>>` => `ast::Arm.pat: P<Pat>`
    
       - Change `ast::ExprKind::Let.0: Vec<P<Pat>>` => `ast::ExprKind::Let.0: P<Pat>`
    
    - Adjust `librustc_resolve/late.rs` to correctly handle or-patterns at any level of nesting as a result.
    
      In particular, the already-bound check which rejects e.g. `let (a, a);` now accounts for or-patterns. The consistency checking (ensures no missing bindings and binding mode consistency) also now accounts for or-patterns. In the process, a bug was found in the current compiler which allowed:
    
       ```rust
       enum E<T> { A(T, T), B(T) }
       use E::*;
       fn foo() {
           match A(0, 1) {
               B(mut a) | A(mut a, mut a) => {}
           }
       }
       ```
    
       The new algorithms took a few iterations to get right. I tried several clever schemes but ultimately a version based on a stack of hashsets and recording product/sum contexts was chosen since it is more clearly correct.
    
    - Clean up `librustc_resolve/late.rs` by, among other things, using a new `with_rib` function to better ensure stack dicipline.
    
    - Do not push the change in AST to HIR for now to avoid doing too much in this PR. To cope with  this, we introduce a temporary hack in `rustc::hir::lowering` (clearly marked in the diff).
    
    cc rust-lang#54883
    cc @dlrobertson @matthewjasper
    r? @petrochenkov
    Mark-Simulacrum authored Sep 6, 2019
    Configuration menu
    Copy the full SHA
    a24934b View commit details
    Browse the repository at this point in the history
  7. Rollup merge of rust-lang#64156 - cuviper:gitless-llvm, r=alexcrichton

    Assume non-git LLVM is fresh if the stamp file exists
    
    Rustbuild usually writes the LLVM submodule commit in a stamp file, so
    we can avoid rebuilding it unnecessarily. However, for builds from a
    source tarball (non-git), we were assuming a rebuild is always needed.
    This can cause a lot of extra work if any environment like `CFLAGS`
    changed between steps like build and install, which are often separate
    in distro builds.
    
    Now we also write an empty stamp file if the git commit is unknown, and
    its presence is trusted to indicate that no rebuild is needed. An info
    message reports that this is happening, along with the stamp file path
    that can be deleted to force a rebuild anyway.
    
    Fixes rust-lang#61206.
    Mark-Simulacrum authored Sep 6, 2019
    Configuration menu
    Copy the full SHA
    9dda232 View commit details
    Browse the repository at this point in the history
  8. Rollup merge of rust-lang#64166 - infinity0:master, r=alexcrichton

    Better way of conditioning the sanitizer builds
    
    Previously the build would take the presence of the LLVM_CONFIG envvar to
    mean that the sanitizers should be built, but this is a common envvar that
    could be set for reasons unrelated to the rustc sanitizers.
    
    This commit adds a new envvar RUSTC_BUILD_SANITIZERS and uses it instead.
    
    This PR or similar will be necessary in order to work correctly with rust-lang/compiler-builtins#296
    Mark-Simulacrum authored Sep 6, 2019
    Configuration menu
    Copy the full SHA
    a313f6c View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    da1a049 View commit details
    Browse the repository at this point in the history
  10. Rollup merge of rust-lang#64175 - GuillaumeGomez:replace-span-when-it…

    …-should-be-div, r=Mark-Simulacrum
    
    Fix invalid span generation when it should be div
    
    Fixes rust-lang#64146.
    
    It changes basically nothing in the display... Can be checked with:
    
    ```rust
    pub enum X {
        /// Some doc?
        ///
        /// with lines!
        Foo {
            /// a
            ///
            /// b
            x: u32,
            /// Doc!
            ///
            /// ```
            /// yolo
            /// ```
            y: String,
        },
        /// Doc!
        ///
        /// ```
        /// yolo
        /// ```
        Bar(String),
    }
    ```
    
    r? @Mark-Simulacrum
    Mark-Simulacrum authored Sep 6, 2019
    Configuration menu
    Copy the full SHA
    9e477bf View commit details
    Browse the repository at this point in the history
  11. Rollup merge of rust-lang#64186 - alexcrichton:improve-env-codegen, r…

    …=sfackler
    
    std: Improve downstream codegen in `Command::env`
    
    This commit rejiggers the generics used in the implementation of
    `Command::env` with the purpose of reducing the amount of codegen that
    needs to happen in consumer crates, instead preferring to generate code
    into libstd.
    
    This was found when profiling the compile times of the `cc` crate where
    the binary rlib produced had a lot of `BTreeMap` code compiled into it
    but the crate doesn't actually use `BTreeMap`. It turns out that
    `Command::env` is generic enough to codegen the entire implementation in
    calling crates, but in this case there's no performance concern so it's
    fine to compile the code into the standard library.
    
    This change is done by removing the generic on the `CommandEnv` map
    which is intended to handle case-insensitive variables on Windows.
    Instead now a generic isn't used but rather a `use` statement defined
    per-platform is used.
    
    With this commit a debug build of `Command::new("foo").env("a", "b")`
    drops from 21k lines of LLVM IR to 10k.
    Mark-Simulacrum authored Sep 6, 2019
    Configuration menu
    Copy the full SHA
    775c9e5 View commit details
    Browse the repository at this point in the history
  12. Rollup merge of rust-lang#64190 - matklad:meta, r=cramertj

    fill metadata in rustc_lexer's Cargo.toml
    
    We publish this to crates.io, so having non-empty meta is useful
    Mark-Simulacrum authored Sep 6, 2019
    Configuration menu
    Copy the full SHA
    d909170 View commit details
    Browse the repository at this point in the history
  13. Rollup merge of rust-lang#64198 - cramertj:fuchsia-monotonic, r=alexc…

    …richton
    
    Add Fuchsia to actually_monotonic
    
    Fuchsia provides a fully monotonic clock.
    
    Fix rust-lang#64196
    
    cc @joshlf @tmandry
    
    r? @alexcrichton
    Mark-Simulacrum authored Sep 6, 2019
    Configuration menu
    Copy the full SHA
    16ee07e View commit details
    Browse the repository at this point in the history