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 7 pull requests #72638

Closed
wants to merge 15 commits into from

Commits on May 23, 2020

  1. Configuration menu
    Copy the full SHA
    69a8a88 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    09cd547 View commit details
    Browse the repository at this point in the history

Commits on May 25, 2020

  1. Configuration menu
    Copy the full SHA
    4e4b1ed View commit details
    Browse the repository at this point in the history
  2. Fix UB in Arc

    Use raw pointers to avoid making any assertions about the data field.
    Diggsey committed May 25, 2020
    Configuration menu
    Copy the full SHA
    ee6e705 View commit details
    Browse the repository at this point in the history

Commits on May 26, 2020

  1. Configuration menu
    Copy the full SHA
    b9ba4b3 View commit details
    Browse the repository at this point in the history
  2. Don't bail out of trait selection when predicate references an error

    Fixes rust-lang#72590
    
    With PR rust-lang#70551, observing a `ty::Error` guarantees that compilation is
    going to fail. Therefore, there are no soundness impliciations to
    continuing on when we encounter a `ty::Error` - we can only affect
    whether or not additional error messags are emitted.
    
    By not bailing out, we avoid incorrectly determining that types are
    `!Sized` when a type error is present, which allows us to avoid emitting
    additional spurious error messages.
    
    The original comment mentioned this code being shared by coherence -
    howver, this change resulted in no diagnostic changes in any of the
    existing tests.
    Aaron1011 committed May 26, 2020
    Configuration menu
    Copy the full SHA
    1c30c9e View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    b60fe39 View commit details
    Browse the repository at this point in the history
  4. improve error message for unexpected comma token in multiline block

    confusing diagnostics, issue rust-lang#72253
    
    add test for confusing error message, issue-72253
    
    
    remove is_multiline check, refactor to self.expect(&token:Semi)
    
    
    update issue-72253 tests
    
    
    return Ok
    chrissimpkins committed May 26, 2020
    Configuration menu
    Copy the full SHA
    f384cdc View commit details
    Browse the repository at this point in the history

Commits on May 27, 2020

  1. Rollup merge of rust-lang#72348 - chrissimpkins:fix-72253, r=estebank

    Fix confusing error message for comma typo in multiline statement
    
    Fixes rust-lang#72253.  Expands on the issue with a colon typo check.
    
    r? @estebank
    
    cc @ehuss
    Dylan-DPC authored May 27, 2020
    Configuration menu
    Copy the full SHA
    a6111b1 View commit details
    Browse the repository at this point in the history
  2. Rollup merge of rust-lang#72508 - ecstatic-morse:poly-self-ty, r=niko…

    …matsakis
    
    Make `PolyTraitRef::self_ty` return `Binder<Ty>`
    
    This came up during review of rust-lang#71618. The current implementation is the same as a call to `skip_binder` but harder to audit. Make it preserve binding levels and add a call to `skip_binder` at all use sites so they can be audited as part of rust-lang#72507.
    Dylan-DPC authored May 27, 2020
    Configuration menu
    Copy the full SHA
    9a2ac67 View commit details
    Browse the repository at this point in the history
  3. Rollup merge of rust-lang#72533 - Diggsey:db-fix-arc-ub2, r=dtolnay

    Resolve UB in Arc/Weak interaction (2)
    
    Use raw pointers to avoid making any assertions about the data field.
    
    Follow up from rust-lang#72479, see that PR for more detail on the motivation.
    
    @RalfJung I was able to avoid a lot of the changes to `Weak`, by making a helper type (`WeakInner`) - because of auto-deref and because the fields have the same name, the rest of the code continues to compile.
    Dylan-DPC authored May 27, 2020
    Configuration menu
    Copy the full SHA
    e402a6f View commit details
    Browse the repository at this point in the history
  4. Rollup merge of rust-lang#72548 - rossmacarthur:add-mcve-for-50687, r…

    …=nikomatsakis
    
    Add test for old compiler ICE when using `Borrow`
    
    The original issue was caused by implementing `Borrow` on a local type and using the tokio-reactor crate which had this impl: https://github.com/tokio-rs/tokio/blob/tokio-0.1.4/tokio-reactor/src/poll_evented.rs#L547-L577
    
    This causes an ICE on Rust 1.27.0:
    
    ```console
    $ RUSTUP_TOOLCHAIN=1.27.0 rustc src/test/ui/issues/issue-50687-ice-on-borrow.rs
    error: internal compiler error: librustc/traits/structural_impls.rs:180: impossible case reached
    
    thread 'main' panicked at 'Box<Any>', librustc_errors/lib.rs:554:9
    note: Run with `RUST_BACKTRACE=1` for a backtrace.
    error: aborting due to previous error
    
    note: the compiler unexpectedly panicked. this is a bug.
    
    note: we would appreciate a bug report: https://github.com/rust-lang/rust/blob/master/CONTRIBUTING.md#bug-reports
    
    note: rustc 1.27.0 (3eda71b 2018-06-19) running on x86_64-apple-darwin
    ```
    
    Closes rust-lang#50687
    Dylan-DPC authored May 27, 2020
    Configuration menu
    Copy the full SHA
    30d23bb View commit details
    Browse the repository at this point in the history
  5. Rollup merge of rust-lang#72606 - GuillaumeGomez:cell-example-update,…

    … r=Dylan-DPC
    
    Small cell example update
    
    r? @Dylan-DPC
    Dylan-DPC authored May 27, 2020
    Configuration menu
    Copy the full SHA
    e4e07b0 View commit details
    Browse the repository at this point in the history
  6. Rollup merge of rust-lang#72621 - Aaron1011:fix/trait-select-error, r…

    …=nikomatsakis
    
    Don't bail out of trait selection when predicate references an error
    
    Fixes rust-lang#72590
    
    With PR rust-lang#70551, observing a `ty::Error` guarantees that compilation is
    going to fail. Therefore, there are no soundness impliciations to
    continuing on when we encounter a `ty::Error` - we can only affect
    whether or not additional error messags are emitted.
    
    By not bailing out, we avoid incorrectly determining that types are
    `!Sized` when a type error is present, which allows us to avoid emitting
    additional spurious error messages.
    
    The original comment mentioned this code being shared by coherence -
    howver, this change resulted in no diagnostic changes in any of the
    existing tests.
    Dylan-DPC authored May 27, 2020
    Configuration menu
    Copy the full SHA
    fc7afd1 View commit details
    Browse the repository at this point in the history
  7. Rollup merge of rust-lang#72626 - phimuemue:doubleendediter_doc, r=dt…

    …olnay
    
    Add remark regarding DoubleEndedIterator
    
    While reviewing rust-itertools/itertools@14293bd#diff-2c16d2ada06ad2fd1fc754679646d471, I realized that a `DoubleEndedIterator` may yield different elements depending on whether it is traversed forwards or backwards. (Not only the *order*, but possibly also the yielded values.)
    
    I found this remarkable, but could not find anything in the current docs, so I thought it may be worth mentioning this explicitly.
    
    Unfortunately, I could not test these changes locally (`rustdoc` complains about `unresolved import`). Sorry if this causes headache.
    
    If I should change something, please let me know. If it seems too trivial, feel free to just close this PR.
    Dylan-DPC authored May 27, 2020
    Configuration menu
    Copy the full SHA
    1ef8491 View commit details
    Browse the repository at this point in the history