Skip to content
Permalink
Tree: 73a3a90d25
Commits on May 17, 2019
  1. Auto merge of #60920 - Manishearth:rollup-p4xp4gk, r=Manishearth

    bors committed May 17, 2019
    Rollup of 4 pull requests
    
    Successful merges:
    
     - #60791 (Update books)
     - #60891 (Allow claiming issues with triagebot)
     - #60901 (Handle more string addition cases with appropriate suggestions)
     - #60902 (Prevent Error::type_id overrides)
    
    Failed merges:
    
    r? @ghost
  2. Rollup merge of #60902 - sfackler:fix-error-soudness, r=alexcrichton

    Manishearth committed May 17, 2019
    Prevent Error::type_id overrides
    
    type_id now takes an argument that can't be named outside of the
    std::error module, which prevents any implementations from overriding
    it. It's a pretty grody solution, and there's no way we can stabilize
    the method with this API, but it avoids the soudness issue!
    
    Closes #60784
    
    r? @alexcrichton
  3. Rollup merge of #60901 - estebank:str-str-str, r=Centril

    Manishearth committed May 17, 2019
    Handle more string addition cases with appropriate suggestions
  4. Rollup merge of #60891 - jonas-schievink:triagebot-claim, r=Mark-Simu…

    Manishearth committed May 17, 2019
    …lacrum
    
    Allow claiming issues with triagebot
    
    Not sure if this was intentionally left out, but it can probably be enabled now that rust-lang/triagebot#3 is fixed (assuming that the deployed commit is recent enough). People have tried to use it already (#60622 (comment)).
    
    r? @Mark-Simulacrum
  5. Rollup merge of #60791 - ehuss:update-books, r=Mark-Simulacrum

    Manishearth committed May 17, 2019
    Update books
    
    ## nomicon
    
    1 commits in fb29b147be4d9a1f8e24aba753a7e1de537abf61..c656171b749b7307f21371dd0d3278efee5573b8
    2019-04-22 19:10:29 -0400 to 2019-04-25 15:31:26 -0400
    - Lifetimes: Updates to incorporate NLL (rust-lang-nursery/nomicon#101)
    
    ## reference
    
    5 commits in 2a2de9ce095979978ad7b582daecf94e4070b916..862b669c395822bb0938781d74f860e5762ad4fb
    2019-04-22 10:25:52 -0700 to 2019-05-04 23:41:35 -0700
    - Typo (rust-lang-nursery/reference#606)
    - Added missing ? to Generics from InherentImpl and TraitImpl (rust-lang-nursery/reference#604)
    - Add missing ( to ExternalFunctionItem (rust-lang-nursery/reference#603)
    - Remove unneeded | from AssignmentExpression (rust-lang-nursery/reference#601)
    - Remove unneeded ( from TypePathSegment (rust-lang-nursery/reference#602)
    
    ## book
    
    6 commits in db919bc6bb9071566e9c4f05053672133eaac33e..29fe982990e43b9367be0ff47abc82fb2123fd03
    2019-04-15 20:11:03 -0400 to 2019-05-15 17:48:40 -0400
    - Ignore a non-compiling test listing and add code to fix a test listing
    - Remove nostarch snapshots I've checked in layout
    - Reword error messages to maybe not need to wrap lines in print
    - This example doesn't compile but wasn't marked as such
    - Update install instructions for VS 2019 (rust-lang/book#1923)
    - Switch IRC to Discord
    
    ## rust-by-example
    
    9 commits in 1ff0f8e018838a710ebc0cc1a7bf74ebe73ad9f1..811c697b232c611ed754d279ed20643a0c4096f6
    2019-04-15 08:15:32 -0300 to 2019-04-28 18:56:42 -0300
    - Fix typo in dsl.md (rust-lang/rust-by-example#1187)
    - File read lines (rust-lang/rust-by-example#1186)
    - For rust-lang/rust-by-example#1184 closes rust-lang/rust-by-example#1184 (rust-lang/rust-by-example#1185)
    - Link to Reference for macro_rules designators (rust-lang/rust-by-example#1182)
    - Improve section Meta/Docs (rust-lang/rust-by-example#1183)
    - Small improvements to various files (rust-lang/rust-by-example#1173)
    - 19.2 Vectors Error in Code Example (rust-lang/rust-by-example#1178)
    - For rust-lang/rust-by-example#1175 (rust-lang/rust-by-example#1176)
    - For rust-lang/rust-by-example#1179 (rust-lang/rust-by-example#1180)
    
    ## rustc-guide
    
    12 commits in 99e1b1d53656be08654df399fc200584aebb50e4..3cb727b62b953d59b4360d39aa68b6dc8f157655
    2019-04-20 09:57:54 -0500 to 2019-05-07 09:53:32 -0500
    - Fix typo, 'which' repeated twice
    - [canonicalization] fix result canonicalization example (rust-lang/rustc-guide#304)
    - Rename to RUSTC_LOG
    - Added mention of universal ctags
    - Fix link in walkthrough
    - Remove IRC from discussion chats
    - Bring the updating LLVM guide up to date
    - use nightly rust for ci
    - Fixed broken chalk links
    - Add documentation for two-phase borrows
    - Explain new powers of the `treat-err-as-bug` flag
    - Update lowering-module test case
    
    ## edition-guide
    
    3 commits in c413d42a207bd082f801ec0137c31b71e4bfed4c..581c6cccfaf995394ea9dcac362dc8e731c18558
    2019-04-22 01:14:56 +0200 to 2019-05-06 12:47:44 -0700
    - Fix typo in controlling-panics-with-std-panic.md (rust-lang-nursery/edition-guide#158)
    - Fix links for book editions. (rust-lang-nursery/edition-guide#149)
    - Update now that NLL is enabled in 2015. (rust-lang-nursery/edition-guide#157)
    
    ## embedded-book
    
    3 commits in de3d55f521e657863df45260ebbca1b10527f662..9858872bd1b7dbba5ec27dc30d34eba00acd7ef9
    2019-04-22 12:58:28 +0000 to 2019-05-02 18:56:54 +0000
    - Update linux.md  (rust-embedded/book#167)
    - Clarify list of available targets for installation  (rust-embedded/book#165)
    - minor grammar fix  (rust-embedded/book#188)
  6. Account for &String + String

    estebank committed May 17, 2019
  7. Auto merge of #60841 - alexcrichton:update-compiler-builtins, r=RalfJung

    bors committed May 17, 2019
    Update the compiler_builtins crate
    
    This updates to 0.1.13 for `compiler_builtins`, published to fix a few
    issues. The feature changes here are updated because `compiler_builtins`
    no longer enables the `c` feature by default but we want to do so
    through our build still.
    
    Closes #60747
    Closes #60782
  8. Update the compiler_builtins crate

    alexcrichton committed May 14, 2019
    This updates to 0.1.13 for `compiler_builtins`, published to fix a few
    issues. The feature changes here are updated because `compiler_builtins`
    no longer enables the `c` feature by default but we want to do so
    through our build still.
    
    Closes #60747
    Closes #60782
  9. Auto merge of #60171 - matthewjasper:full-nll-compare-mode, r=pnkfelix

    bors committed May 17, 2019
    Use -Zborrowck=mir for NLL compare mode
    
    closes #56993
    
    r? @pnkfelix
  10. Auto merge of #60892 - davidtwco:issue-60622, r=oli-obk

    bors committed May 17, 2019
    Checking generic args after late bound region err.
    
    Fixes #60622.
    
    This PR fixes an ICE that occurs when a late bound region error is
    emitted and that resulted in the rest of the generic arguments of a
    function not being checked.
    
    For example, you could specify a generic type parameter `T` in a function
    call `foo<'_, T>()` to a function that doesn't have a generic type
    parameter.
    
    Since an error wasn't emitted from the function, compilation
    continued to parts of typeck that didn't expect a generic type argument
    in a call for a function that didn't have any generic type arguments.
  11. Checking generic args after late bound region err.

    davidtwco committed May 16, 2019
    This commit fixes an ICE that occurs when a late bound region error is
    emitted and that resulted in the rest of the generic arguments of a
    function not being checked.
    
    For example, you could specify a generic type parameter `T` in a function
    call `foo<'_, T>()` to a function that doesn't have a generic type
    parameter.
    
    Since an error wasn't emitted from the function, compilation
    continued to parts of typeck that didn't expect a generic type argument
    in a call for a function that didn't have any generic type arguments.
  12. Auto merge of #60899 - cuviper:RawEntryMut-origin-story, r=Centril

    bors committed May 17, 2019
    doc: correct the origin of RawEntryMut
  13. review comments

    estebank committed May 17, 2019
  14. Auto merge of #60817 - ecstatic-morse:issue-60779, r=Centril

    bors committed May 17, 2019
    Add stubs to keyword docs
    
    Resolves #60779.
    
    This commit gives each stable keyword a short entry in the "Keywords" section in the docs for `std`. The newly added entries are only a single line each and contain the main purpose of the keyword. I changed some of the existing summary lines for consistency's sake. Each line is either an imperative ("name the type of a trait object" for `dyn`), or an object ("An abstract data type" for `enum`). I tried to avoid using the keyword itself or the word "keyword" in the summary.
    
    Later commits can flesh out each keyword with an example for each context in which it can appear as well as a link to the appropriate part of the rust book.
    
    **edit:**
    Here's the list of keywords and summaries (sans formatting) to ease reviewing. I'll try to keep this up to date as I make changes:
    
    keyword | summary
    -- | --
    Self | The implementing type within a `trait` or `impl` block, or the current type within a type definition.
    as | Cast between types, or rename an import.
    async | ExperimentalReturn a Future instead of blocking the current thread.
    await | ExperimentalSuspend execution until the result of a Future is ready.
    break | Exit early from a loop.
    const | Compile-time constants and deterministic functions.
    continue | Skip to the next iteration of a loop.
    crate | A Rust binary or library.
    dyn | Name the type of a trait object.
    else | What to do when an if condition does not hold.
    enum | A type that can be any one of several variants.
    extern | Link to or import external code.
    false | A value of type bool representing logical false.
    fn | A function or function pointer.
    for | Iteration with in, trait implementation with impl, or higher-ranked trait bounds (for<'a>).
    if | Evaluate a block if a condition holds.
    impl | Implement some functionality for a type.
    in | Iterate over a series of values with for.
    let | Bind a value to a variable.
    loop | Loop indefinitely.
    match | Control flow based on pattern matching.
    mod | Organize code into modules.
    move | Capture a closure's environment by value.
    mut | A mutable binding, reference, or pointer.
    pub | Make an item visible to others.
    ref | Bind by reference during pattern matching.
    return | Return a value from a function.
    self | The receiver of a method, or the current module.
    static | A place that is valid for the duration of a program.
    struct | A type that is composed of other types.
    super | The parent of the current module.
    trait | A common interface for a class of types.
    true | A value of type bool representing logical true.
    type | Define an alias for an existing type.
    union | The Rust equivalent of a C-style union.
    unsafe | Code or interfaces whose memory safety cannot be verified by the type system.
    use | Import or rename items from other crates or modules.
    where | Add constraints that must be upheld to use an item.
    while | Loop while a condition is upheld.
  15. Update src/libstd/error.rs

    sfackler and Centril committed May 17, 2019
    Co-Authored-By: Mazdak Farrokhzad <twingoow@gmail.com>
  16. Fix binop span

    estebank committed May 17, 2019
  17. Prevent Error::type_id overrides

    sfackler committed May 17, 2019
    type_id now takes an argument that can't be named outside of the
    std::error module, which prevents any implementations from overriding
    it. It's a pretty grody solution, and there's no way we can stabilize
    the method with this API, but it avoids the soudness issue!
    
    Closes #60784
  18. Handle more string addition cases with appropriate suggestions

    estebank committed May 17, 2019
  19. doc: correct the origin of RawEntryMut

    cuviper committed May 17, 2019
  20. Auto merge of #60898 - Centril:rollup-76o2g8a, r=Centril

    bors committed May 17, 2019
    Rollup of 6 pull requests
    
    Successful merges:
    
     - #60685 (Switch to SPDX 2.1 license expression)
     - #60687 (Fix .natvis visualizers.)
     - #60805 (remove compiletest's dependency on `filetime`)
     - #60862 (Get ty from local_decls instead of using Place)
     - #60873 (Parse alternative incorrect uses of await and recover)
     - #60894 (Add entry-like methods to HashSet)
    
    Failed merges:
    
    r? @ghost
  21. Rollup merge of #60894 - cuviper:hash_set_entry, r=cramertj,Centril

    Centril committed May 17, 2019
    Add entry-like methods to HashSet
    
    * `HashSet::get_or_insert`
    * `HashSet::get_or_insert_with`
    
    These provide a simplification of the `Entry` API for `HashSet`, with
    names chosen to match the similar methods on `Option`.
  22. Rollup merge of #60873 - estebank:bad-await, r=Centril

    Centril committed May 17, 2019
    Parse alternative incorrect uses of await and recover
    
    Fix #60613.
    
    r? @Centril
  23. Rollup merge of #60862 - spastorino:get-ty-from-local_decls, r=oli-obk

    Centril committed May 17, 2019
    Get ty from local_decls instead of using Place
    
    r? @oli-obk This is from one of your review on Place 2.0
  24. Rollup merge of #60805 - euclio:filetime-dep, r=Mark-Simulacrum

    Centril committed May 17, 2019
    remove compiletest's dependency on `filetime`
  25. Rollup merge of #60687 - MaulingMonkey:pr-fix-natvis-files, r=alexcri…

    Centril committed May 17, 2019
    …chton
    
    Fix .natvis visualizers.
    
    ### Updated to handle these changes:
      - `core::ptr::*` lost their `__0` elements and are just plain pointers
      - `core::ptr::*` probably shouldn't dereference in `DisplayString` s
      - `VecDeque` probably *should* dereference it's buf pointer to display individual items.
      - `VecDeque` and `Vec` use `core::ptr::*` s
      - `VecDeque` and `LinkedList` moved modules again.
    
    ### Retested - still working fine, left alone:
      - `String`, `&str`, `Option`
    
    ### Side Chatter
      - Props to Alex for pointing out this was broken in the `#ides-and-editors` Discord channel
      - It'd be nice if there was a sane way to automate unit testing these visualizers.
        (I assume COM automation of Visual Studio would be a no go on the build servers, and probably really incredibly painful to write too!  Suggestions welcome...)
  26. Rollup merge of #60685 - dtolnay:spdx, r=nikomatsakis

    Centril committed May 17, 2019
    Switch to SPDX 2.1 license expression
    
    [According to the Cargo Reference:](https://doc.rust-lang.org/cargo/reference/manifest.html)
    
    > This is an SPDX 2.1 license expression for this package. Currently crates.io will validate the license provided against a whitelist of known license and exception identifiers from the SPDX license list 2.4. Parentheses are not currently supported.
    >
    > Multiple licenses can be separated with a \`/\`, although that usage is deprecated. Instead, use a license expression with AND and OR operators to get more explicit semantics.
    
    The notation with slashes is deprecated in favor of explicit AND or OR.
    
    As I understand it, Rust's license is MIT *OR* Apache-2.0 matching the meaning of *OR* defined by [SPDX Specification 2.1](https://spdx.org/spdx-specification-21-web-version):
    
    > If presented with a choice between two or more licenses, use the disjunctive binary "OR" operator to construct a new license expression, where both the left and right operands are valid license expression values.
Commits on May 16, 2019
  1. Comment why get_or_insert returns &T

    cuviper committed May 16, 2019
  2. Add a hash_set_entry tracking issue

    cuviper committed May 16, 2019
  3. review comments

    estebank committed May 16, 2019
  4. Add entry-like methods to HashSet

    cuviper committed May 16, 2019
    * `HashSet::get_or_insert`
    * `HashSet::get_or_insert_with`
    
    These provide a simplification of the `Entry` API for `HashSet`, with
    names chosen to match the similar methods on `Option`.
  5. Auto merge of #60888 - Manishearth:rollup-oihtoyq, r=Manishearth

    bors committed May 16, 2019
    Rollup of 5 pull requests
    
    Successful merges:
    
     - #60207 (Outdent example, preserving nested fence)
     - #60278 (Document the `html_root_url` doc attribute value.)
     - #60597 (Do some simple constant propagation in the ConstProp pass)
     - #60837 (Update release notes for 1.35.0)
     - #60887 (Update clippy)
    
    Failed merges:
    
    r? @ghost
  6. Add all keywords to keyword docs

    ecstatic-morse committed May 14, 2019
    This commit gives each stable keyword a short entry in the "Keywords"
    section in the docs for `std`. The newly added entries are a single
    summary line and a note that the documentation is not yet complete.  I
    changed some of the existing summary lines for consistency's sake. Each
    line is either a verb phrase ("name the type of a trait object" for
    `dyn`), or an object ("A value of type `bool` representing logical true"
    for `true`). I tried to avoid using the keyword itself or the word
    "keyword" in the summary.
    
    Later PRs can flesh out each keyword with an example of each
    context in which a keyword can appear and a link to the rust book.
    
    Keywords which are not close to stable rust such as `box` (which is
    getting unstabilized) or `try` are ignored in this PR.
  7. Move some parser recovery methods to diagnostics

    estebank committed May 16, 2019
  8. Review comments

    estebank committed May 16, 2019
    - Change wording of suggestion
    - Move recovery logic to `diagnostics.rs`
    - Reduce ammount of code duplication
Older
You can’t perform that action at this time.