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 #57755

Merged
merged 20 commits into from
Jan 19, 2019
Merged

Rollup of 7 pull requests #57755

merged 20 commits into from
Jan 19, 2019

Commits on Jan 10, 2019

  1. introduce trait_def_id method

    Co-Authored-By: Alexander Regueiro <alexreg@me.com>
    nikomatsakis and alexreg committed Jan 10, 2019
    Configuration menu
    Copy the full SHA
    430553b View commit details
    Browse the repository at this point in the history
  2. integrate trait aliases into def-paths / metadata

    Co-authored-by: Alexander Regueiro <alexreg@me.com>
    nikomatsakis and alexreg committed Jan 10, 2019
    Configuration menu
    Copy the full SHA
    1336b8e View commit details
    Browse the repository at this point in the history
  3. new trait alias tests

    Co-authored-by: Alexander Regueiro <alexreg@me.com>
    nikomatsakis and alexreg committed Jan 10, 2019
    Configuration menu
    Copy the full SHA
    b411994 View commit details
    Browse the repository at this point in the history

Commits on Jan 13, 2019

  1. Remove TokenStream::Tree variant.

    `TokenStream::Stream` can represent a token stream containing any number
    of token trees. `TokenStream::Tree` is the special case representing a
    single token tree. The latter doesn't occur all that often dynamically,
    so this commit removes it, which simplifies the code quite a bit.
    
    This change has mixed performance effects.
    
    - The size of `TokenStream` drops from 32 bytes to 8 bytes, and there
      is one less case for all the match statements.
    
    - The conversion of a `TokenTree` to a `TokenStream` now requires two
      allocations, for the creation of a single element Lrc<Vec<_>>. (But a
      subsequent commit in this PR will reduce the main source of such
      conversions.)
    nnethercote committed Jan 13, 2019
    Configuration menu
    Copy the full SHA
    28966e1 View commit details
    Browse the repository at this point in the history
  2. Remove ThinTokenStream.

    `TokenStream` is now almost identical to `ThinTokenStream`. This commit
    removes the latter, replacing it with the former.
    nnethercote committed Jan 13, 2019
    Configuration menu
    Copy the full SHA
    ce0d994 View commit details
    Browse the repository at this point in the history
  3. Avoid some TokenTree-to-TokenStream conversions.

    This avoids some allocations.
    nnethercote committed Jan 13, 2019
    Configuration menu
    Copy the full SHA
    ba31d83 View commit details
    Browse the repository at this point in the history

Commits on Jan 14, 2019

  1. Make TokenStream use Option.

    Because that's the more typical way of representing an all-or-nothing
    type.
    nnethercote committed Jan 14, 2019
    Configuration menu
    Copy the full SHA
    7285724 View commit details
    Browse the repository at this point in the history

Commits on Jan 15, 2019

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

Commits on Jan 16, 2019

  1. Fix release manifest generation

    Jethro Beekman committed Jan 16, 2019
    Configuration menu
    Copy the full SHA
    0772dbb View commit details
    Browse the repository at this point in the history

Commits on Jan 17, 2019

  1. Configuration menu
    Copy the full SHA
    02843d9 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    d34b3e9 View commit details
    Browse the repository at this point in the history

Commits on Jan 18, 2019

  1. Configuration menu
    Copy the full SHA
    5576833 View commit details
    Browse the repository at this point in the history
  2. Inline expand_node.

    This requires restructuring things a little so that there is only one
    callsite, ensuring that inlinining doesn't cause unnecessary code bloat.
    
    This reduces instruction counts for the `unicode_normalization`
    benchmark by up to 4%.
    nnethercote committed Jan 18, 2019
    Configuration menu
    Copy the full SHA
    92fd6f9 View commit details
    Browse the repository at this point in the history

Commits on Jan 19, 2019

  1. Rollup merge of rust-lang#57486 - nnethercote:simplify-TokenStream-mo…

    …re, r=petrochenkov
    
    Simplify `TokenStream` some more
    
    These commits simplify `TokenStream`, remove `ThinTokenStream`, and avoid some clones. The end result is simpler code and a slight perf win on some benchmarks.
    
    r? @petrochenkov
    Centril committed Jan 19, 2019
    Configuration menu
    Copy the full SHA
    349c9ee View commit details
    Browse the repository at this point in the history
  2. Rollup merge of rust-lang#57502 - nikomatsakis:fix-trait-alias-1b, r=…

    …nikomatsakis
    
    make trait-aliases work across crates
    
    This is rebase of a small part of @alexreg's PR rust-lang#55994. It focuses just on the changes that integrate trait aliases properly into crate metadata, excluding the stylistic edits and the trait objects.
    
    The stylistic edits I also rebased and can open a separate PR.
    
    The trait object stuff I found challenging and decided it basically needed to be reimplemented. For now I've excluded it.
    
    Since this is really @alexreg's work (I really just rebased) I am going to make it r=me once it is working.
    
    Fixes rust-lang#56488.
    Fixes rust-lang#57023.
    Centril committed Jan 19, 2019
    Configuration menu
    Copy the full SHA
    5272be5 View commit details
    Browse the repository at this point in the history
  3. Rollup merge of rust-lang#57598 - h-michael:unpretty-help, r=oli-obk

    Add missing unpretty option help message
    
    There are some missing help messages that is printed `ructc -Zunpretty help` and receiving invalid option.
    
    related with rust-lang#16419, rust-lang#45721, rust-lang#21085, rust-lang#31916
    Centril committed Jan 19, 2019
    Configuration menu
    Copy the full SHA
    bce5688 View commit details
    Browse the repository at this point in the history
  4. Rollup merge of rust-lang#57649 - petrochenkov:privexist, r=arielb1

    privacy: Account for associated existential types
    
    Turns out they *can* be associated (but only in impls, not traits).
    Fixes rust-lang#53546 (comment)
    
    r? @arielb1
    Centril committed Jan 19, 2019
    Configuration menu
    Copy the full SHA
    4eeb095 View commit details
    Browse the repository at this point in the history
  5. Rollup merge of rust-lang#57659 - jethrogb:jb/release-manifest, r=ale…

    …xcrichton
    
    Fix release manifest generation
    
    r? @alexcrichton
    Centril committed Jan 19, 2019
    Configuration menu
    Copy the full SHA
    c8c03af View commit details
    Browse the repository at this point in the history
  6. Rollup merge of rust-lang#57699 - euclio:applicability-ify, r=petroch…

    …enkov
    
    add applicability to remaining suggestions
    
    Fixes rust-lang#50723.
    
    I noticed that the suggestion methods on `DiagnosticBuilder` weren't actually deprecated due to rust-lang#57679. This PR deprecates them properly and fixes the remaining usages.
    
    There's also a PR for clippy at rust-lang/rust-clippy#3667.
    Centril committed Jan 19, 2019
    Configuration menu
    Copy the full SHA
    e78bde4 View commit details
    Browse the repository at this point in the history
  7. Rollup merge of rust-lang#57719 - nnethercote:expand_node-FIDDLING, r…

    …=nikomatsakis
    
    Tweak `expand_node`
    
    These commits speed up the `unicode_normalization` benchmark a little.
    Centril committed Jan 19, 2019
    Configuration menu
    Copy the full SHA
    92fecfb View commit details
    Browse the repository at this point in the history