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 15 pull requests #64160

Merged
merged 51 commits into from
Sep 5, 2019
Merged

Rollup of 15 pull requests #64160

merged 51 commits into from
Sep 5, 2019

Commits on Aug 28, 2019

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

Commits on Aug 29, 2019

  1. Add Place::is_indirect

    This returns whether a `Place` references the same region of memory
    as its base, or equivalently whether it contains a `Deref` projection.
    
    This is helpful for analyses that must track state for locals, since an
    assignment to `x` or `x.field` is fundamentally different than one to
    `*x`, which may mutate any memory region.
    ecstatic-morse committed Aug 29, 2019
    Configuration menu
    Copy the full SHA
    8648732 View commit details
    Browse the repository at this point in the history

Commits on Aug 30, 2019

  1. Rev::rposition counts from the wrong end

    Because of a compiler bug that adding `Self: ExactSizeIterator` makes
    the compiler forget `Self::Item` is `<I as Iterator>::Item`, we remove
    this specialization for now.
    sfanxiang committed Aug 30, 2019
    Configuration menu
    Copy the full SHA
    0e597d4 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    96ac02b View commit details
    Browse the repository at this point in the history

Commits on Aug 31, 2019

  1. Configuration menu
    Copy the full SHA
    5187a3e View commit details
    Browse the repository at this point in the history
  2. Slightly clean up the error for recursive async fn

    * Make it clear that type erasure is required, not just pointer
      indirection.
    * Don't make the message specific to direct recursion.
    matthewjasper committed Aug 31, 2019
    Configuration menu
    Copy the full SHA
    7bb2d8b View commit details
    Browse the repository at this point in the history
  3. Check impl trait substs when checking for recursive types

    This prevents mutual `async fn` recursion
    matthewjasper committed Aug 31, 2019
    Configuration menu
    Copy the full SHA
    877faf3 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    754a875 View commit details
    Browse the repository at this point in the history

Commits on Sep 2, 2019

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

Commits on Sep 3, 2019

  1. Configuration menu
    Copy the full SHA
    3ea932a View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    c1e5e5c View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    bb99fc3 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    efe8594 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    05dcd0e View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    a8975a0 View commit details
    Browse the repository at this point in the history
  7. Move path parsing earlier.

    It's a hot enough path that moving it slightly earlier gives a tiny but
    easy speedup.
    nnethercote committed Sep 3, 2019
    Configuration menu
    Copy the full SHA
    8c74eb7 View commit details
    Browse the repository at this point in the history
  8. Added warning around code with reference to uninit bytes

    Daniel Henry-Mantilla committed Sep 3, 2019
    Configuration menu
    Copy the full SHA
    23c76ff View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    e85b181 View commit details
    Browse the repository at this point in the history
  10. Changed comment to better reflect std's exceptional situation

    Daniel Henry-Mantilla committed Sep 3, 2019
    Configuration menu
    Copy the full SHA
    b03d3dc View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    28b5184 View commit details
    Browse the repository at this point in the history
  12. review comments

    estebank committed Sep 3, 2019
    Configuration menu
    Copy the full SHA
    4a79633 View commit details
    Browse the repository at this point in the history
  13. fix error code test

    estebank committed Sep 3, 2019
    Configuration menu
    Copy the full SHA
    e16ce80 View commit details
    Browse the repository at this point in the history

Commits on Sep 4, 2019

  1. Remove LocalInternedString uses from librustc/ty/.

    This is not a compelling change in isolation, but it is a necessary
    step.
    nnethercote committed Sep 4, 2019
    Configuration menu
    Copy the full SHA
    0ad111f View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    b50db34 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    d78b33a View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    bf536dd View commit details
    Browse the repository at this point in the history
  5. Remove LocalInternedString::as_interned_str().

    It's unused.
    nnethercote committed Sep 4, 2019
    Configuration menu
    Copy the full SHA
    69ae8d9 View commit details
    Browse the repository at this point in the history
  6. Remove LocalInternedString::get.

    It has a single use, which is easily changed to something better.
    nnethercote committed Sep 4, 2019
    Configuration menu
    Copy the full SHA
    224daa6 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    6025fc8 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    a1cd79f View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    7a1bc79 View commit details
    Browse the repository at this point in the history
  10. Add Symbol::{with,with2}.

    And remove the `unsafe` blocks, they're not necessary.
    
    Also rewrite `InternedString::{with,with2}` to use the new functions.
    
    Finally, add some comments about the speed of the
    `as_str()`/`as_interned_str()` functions.
    nnethercote committed Sep 4, 2019
    Configuration menu
    Copy the full SHA
    cc17b1b View commit details
    Browse the repository at this point in the history
  11. Fix doc links in std::cmp module

    These links are rendered in `core::cmp` but not in `std::cmp`.
    tesuji committed Sep 4, 2019
    Configuration menu
    Copy the full SHA
    b6f9523 View commit details
    Browse the repository at this point in the history
  12. fix a few typos in comments

    Guanqun Lu committed Sep 4, 2019
    Configuration menu
    Copy the full SHA
    8e06724 View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    843fba3 View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    5545582 View commit details
    Browse the repository at this point in the history

Commits on Sep 5, 2019

  1. Rollup merge of rust-lang#62860 - vi:stabilize_checked_duration_since…

    …, r=Mark-Simulacrum
    
    Stabilize checked_duration_since for 1.38.0
    
    Looks like it has already found some use in projects.
    
    Resolves rust-lang#58402.
    Centril committed Sep 5, 2019
    Configuration menu
    Copy the full SHA
    ee437eb View commit details
    Browse the repository at this point in the history
  2. Rollup merge of rust-lang#63549 - sfanxiang:rev-rposition, r=scottmcm

    Rev::rposition counts from the wrong end
    
    Introduced in rust-lang#43074.
    
    cc @SimonSapin
    Centril committed Sep 5, 2019
    Configuration menu
    Copy the full SHA
    38ce687 View commit details
    Browse the repository at this point in the history
  3. Rollup merge of rust-lang#63985 - ghedo:stabilize_pin_into_inner, r=a…

    …lexcrichton
    
    Stabilize pin_into_inner in 1.39.0
    
    FCP: rust-lang#60245 (comment)
    
    Closes rust-lang#60245
    Centril committed Sep 5, 2019
    Configuration menu
    Copy the full SHA
    d1d511d View commit details
    Browse the repository at this point in the history
  4. Rollup merge of rust-lang#64005 - ecstatic-morse:is-indirect, r=oli-obk

    Add a `Place::is_indirect` method to determine whether a `Place` contains a `Deref` projection
    
    Working on rust-lang#63860 requires tracking some property about each local. This requires differentiating `Place`s like `x` and `x.field[index]` from ones like `*x` and `*x.field`, since the first two will always access the same region of memory as `x` while the latter two may access any region of memory. This functionality is duplicated in various places across the compiler. This PR adds a helper method to `Place` which determines whether that `Place` has a `Deref` projection at any point and changes some existing code to use the new method.
    
    I've not converted `qualify_consts.rs` to use the new method, since it's not a trivial conversion and it will get replaced anyway by rust-lang#63860. There may be other potential uses besides the two I change in this PR.
    
    r? @oli-obk
    Centril committed Sep 5, 2019
    Configuration menu
    Copy the full SHA
    9718f7a View commit details
    Browse the repository at this point in the history
  5. Rollup merge of rust-lang#64031 - Centril:param-attrs-no-macros-test,…

    … r=nikomatsakis
    
    Harden `param_attrs` test wrt. usage of a proc macro `#[attr]`
    
    The `param-attrs-builtin-attrs.rs` test file uses the `#[test]` attribute which should cover this but `#[test]` isn't a proc macro attribute so we add another test to be on the safe side. This intends to address rust-lang#64010 (comment).
    
    r? @nikomatsakis
    
    cc @c410-f3r @petrochenkov
    cc rust-lang#60406
    Centril committed Sep 5, 2019
    Configuration menu
    Copy the full SHA
    07a2833 View commit details
    Browse the repository at this point in the history
  6. Rollup merge of rust-lang#64038 - matthewjasper:deny-mutual-impl-trai…

    …t-recursion, r=varkor
    
    Check impl trait substs when checking for recursive types
    
    closes rust-lang#64004
    Centril committed Sep 5, 2019
    Configuration menu
    Copy the full SHA
    9024032 View commit details
    Browse the repository at this point in the history
  7. Rollup merge of rust-lang#64043 - matthewjasper:underscore-import-tes…

    …ts, r=alexcrichton
    
    Add some more tests for underscore imports
    Centril committed Sep 5, 2019
    Configuration menu
    Copy the full SHA
    fe1c1f8 View commit details
    Browse the repository at this point in the history
  8. Rollup merge of rust-lang#64092 - michaelwoerister:update-xlto-table-…

    …rustc-book-1.37, r=alexcrichton
    
    Update xLTO compatibility table in rustc book.
    
    This is a combination known to work reliable when building Firefox on all the major platforms.
    
    r? @alexcrichton
    Centril committed Sep 5, 2019
    Configuration menu
    Copy the full SHA
    68660d2 View commit details
    Browse the repository at this point in the history
  9. Rollup merge of rust-lang#64110 - estebank:receiver-type, r=Centril

    Refer to "`self` type" instead of "receiver type"
    
    Fix rust-lang#42603.
    Centril committed Sep 5, 2019
    Configuration menu
    Copy the full SHA
    8ef11fc View commit details
    Browse the repository at this point in the history
  10. Rollup merge of rust-lang#64120 - nnethercote:move-path-parsing-earli…

    …er, r=petrochenkov
    
    Move path parsing earlier
    
    It's a hot enough path that moving it slightly earlier gives a tiny but easy speedup.
    
    r? @petrochenkov
    Centril committed Sep 5, 2019
    Configuration menu
    Copy the full SHA
    24f0778 View commit details
    Browse the repository at this point in the history
  11. Rollup merge of rust-lang#64123 - danielhenrymantilla:add_comment_abo…

    …ut_uninit_integers, r=Centril
    
    Added warning around code with reference to uninit bytes
    
    Officially, uninitialized integers, and therefore, Rust references to them are _invalid_ (note that this may evolve into official defined behavior (_c.f._, rust-lang/unsafe-code-guidelines#71)).
    
    However, `::std` uses references to uninitialized integers when working with the `Read::initializer` feature (rust-lang#42788), since it relies on this unstably having defined behavior with the current implementation of the compiler (IIUC).
    
    Hence the comment to disincentivize people from using this pattern outside the standard library.
    Centril committed Sep 5, 2019
    Configuration menu
    Copy the full SHA
    c195145 View commit details
    Browse the repository at this point in the history
  12. Rollup merge of rust-lang#64128 - Centril:unused-parens-pat, r=davidtwco

    unused_parens: account for or-patterns and `&(mut x)`
    
    Fixes rust-lang#55342.
    Fixes rust-lang#64106.
    
    cc rust-lang#54883
    cc rust-lang#64111
    
    r? @oli-obk
    Centril committed Sep 5, 2019
    Configuration menu
    Copy the full SHA
    57ffc83 View commit details
    Browse the repository at this point in the history
  13. Rollup merge of rust-lang#64141 - nnethercote:minimize-LocalInternedS…

    …tring, r=petrochenkov
    
    Minimize uses of `LocalInternedString`
    
    `LocalInternedString` is described as "An alternative to `Symbol` and `InternedString`, useful when the chars within the symbol need to be accessed. It is best used for temporary values."
    
    This PR makes the code match that comment, by removing all non-local uses of `LocalInternedString`. This allows the removal of a number of operations on `LocalInternedString` and a couple of uses of `unsafe`.
    Centril committed Sep 5, 2019
    Configuration menu
    Copy the full SHA
    4dfbaba View commit details
    Browse the repository at this point in the history
  14. Rollup merge of rust-lang#64142 - lzutao:fix-doc-cmp, r=jonas-schievink

    Fix doc links in `std::cmp` module
    
    r? @jonas-schievink
    Centril committed Sep 5, 2019
    Configuration menu
    Copy the full SHA
    a0f0a96 View commit details
    Browse the repository at this point in the history
  15. Rollup merge of rust-lang#64148 - guanqun:typo-fix, r=zackmdavis

    fix a few typos in comments
    Centril committed Sep 5, 2019
    Configuration menu
    Copy the full SHA
    51ae5d0 View commit details
    Browse the repository at this point in the history