Permalink
Commits on Jan 7, 2019
  1. Auto merge of #57303 - matthiaskrgr:clippy_submodule_upd, r=oli-obk

    bors committed Jan 7, 2019
    submodules: update clippy and rls
    
    Fixes clippy toolstate
    
    Changes:
    ````
    Update to latest compiletest-rs release
    add testcase for #3462
    deps: bump rustc_tools_util version from 0.1.0 to 0.1.1 just in case...
    rustc_tool_utils: fix failure to create proper non-repo version string when used in crates on crates.io, bump version
    UI test cleanup: Extract ifs_same_cond tests
    UI test cleanup: Extract for_kv_map lint tests
    Fix test for #57250
    Limit infinite_iter collect() check to known types
    Some improvements to util documentation
    Use hashset for name blacklist
    Reformat random_state tests
    Use node_id_to_type_opt instead of node_it_to_type in random_state
    Check pattern equality while checking declaration equality
    random_state lint
    Use an FxHashSet for valid idents in documentation lint
    Fix suggestion for unnecessary_ref lint
    Update CONTRIBUTING.md for rustfix tests
    Update .fixed files via update-references.sh
    Run rustfix on first UI test
    Use WIP branch for compiletest_rs
    ````
    
    Also updates RLS and removes the patching of rustc_tool_utils from cargo.toml
    
    RLS changes:
    ````
    update clippy hash and rustc_tools_util and use rustc_tools_util from crates.io
    Work around #55937
    Update Clippy... again
    Update Clippy
    Update clippy
    ````
    r? @oli-obk
  2. Revert "Auto merge of #57101 - o01eg:fix-57014, r=alexcrichton"

    matthiaskrgr committed Jan 6, 2019
    This reverts commit 6861426, reversing
    changes made to cae623c.
    
    Should fix tools on windows.
    
    Reopens #57014
  3. submodules: update rls from 6f5e4bb to 1a6361b

    matthiaskrgr committed Jan 5, 2019
    Changes:
    ````
    Update Clippy
    Move TestFailures when collecting failures
    Update languageserver-types to 0.51.1
    update clippy hash and rustc_tools_util and use rustc_tools_util from crates.io
    Work around #55937
    Update Clippy... again
    Update Clippy
    Update clippy
    ````
  4. submodules: update clippy from 39bd8449 to c63b6349

    matthiaskrgr committed Jan 5, 2019
    Changes:
    ````
    Revert "tests: used_underscore_binding_macro: disable random_state lint."
    Revert "Auto merge of #3603 - xfix:random-state-lint, r=phansch"
    rustup #56837
    rustup (don't know the exact PR unfortunately)
    Add itertools to integration tests
    tests: used_underscore_binding_macro: disable random_state lint.
    Trigger `use_self` lint in local macros
    Add run-rustfix where it already passes
    rustup: #55517
    Make clippy work with parallel rustc
    Add ui/for_kv_map test for false positive in #1279
    Update to latest compiletest-rs release
    add testcase for #3462
    deps: bump rustc_tools_util version from 0.1.0 to 0.1.1 just in case...
    Use compiletest's aux-build header instead of include macro
    rustc_tool_utils: fix failure to create proper non-repo version string when used in crates on crates.io, bump version
    rustfmt
    UI test cleanup: Extract ifs_same_cond tests
    Extract IteratorFalsePositives into option_helpers.rs
    UI test cleanup: Extract for_kv_map lint tests
    UI test cleanup: Extract lint from methods.rs test
    Fix test for #57250
    Limit infinite_iter collect() check to known types
    Some improvements to util documentation
    Use hashset for name blacklist
    Reformat random_state tests
    Use node_id_to_type_opt instead of node_it_to_type in random_state
    Check pattern equality while checking declaration equality
    random_state lint
    Move constant write checks to temporary_assignment lint
    Use an FxHashSet for valid idents in documentation lint
    Fix suggestion for unnecessary_ref lint
    Update CONTRIBUTING.md for rustfix tests
    Update .fixed files via update-references.sh
    Run rustfix on first UI test
    Use WIP branch for compiletest_rs
    ````
  5. Auto merge of #57405 - pietroalbini:rollup, r=pietroalbini

    bors committed Jan 7, 2019
    Rollup of 6 pull requests
    
    Successful merges:
    
     - #57290 (remove outdated comment)
     - #57308 (Make CompileController thread-safe)
     - #57358 (use utf-8 throughout htmldocck)
     - #57369 (Provide the option to use libc++ even on all platforms)
     - #57375 (Add duration constants)
     - #57403 (Make extern ref HTTPS)
    
    Failed merges:
    
     - #57370 (Support passing cflags/cxxflags/ldflags to LLVM build)
    
    r? @ghost
  6. Rollup merge of #57403 - claudijd:tweak_code_of_conduct, r=alexcrichton

    pietroalbini committed Jan 7, 2019
    Make extern ref HTTPS
    
    Basically, saw an HTTP link and noticed it could be HTTPS.  When visiting the link, the URL pattern changed on the site since last linking, so fixed that too!
  7. Rollup merge of #57375 - stjepang:duration-constants, r=joshtriplett

    pietroalbini committed Jan 7, 2019
    Add duration constants
    
    Add constants `SECOND`, `MILLISECOND`, `MICROSECOND`, and `NANOSECOND` to `core::time`.
    
    This will make working with durations more ergonomic. Compare:
    
    ```rust
    // Convenient, but deprecated function.
    thread::sleep_ms(2000);
    
    // The current canonical way to sleep for two seconds.
    thread::sleep(Duration::from_secs(2));
    
    // Sleeping using one of the new constants.
    thread::sleep(2 * SECOND);
    ```
  8. Rollup merge of #57369 - petrhosek:llvm-libcxx, r=alexcrichton

    pietroalbini committed Jan 7, 2019
    Provide the option to use libc++ even on all platforms
    
    This is the default on platforms which use libc++ as the default C++
    library but this option allows using libc++ on others as well.
  9. Rollup merge of #57358 - euclio:docck-unicode, r=QuietMisdreavus

    pietroalbini committed Jan 7, 2019
    use utf-8 throughout htmldocck
    
    This commit improves compatibility with Python 3, which already uses
    Unicode throughout.
    
    It also fixes a subtle incompatibility stemming from the use of
    `entitydefs`, which contains replacement text _encoded in latin-1_ for
    HTML entities. When using Python 3, this would cause `0xa0` to be
    incorrectly added to the element tree.
    
    This meant that there was a rustdoc test that would pass under Python 2
    but fail under Python 3, due to an incorrect regex match against the
    non-breaking space character. This commit triggers that failure in both
    versions, and also fixes it.
  10. Rollup merge of #57308 - Zoxc:controller-sync, r=michaelwoerister

    pietroalbini committed Jan 7, 2019
    Make CompileController thread-safe
  11. Rollup merge of #57290 - mark-i-m:remove-outdated-comment, r=michaelw…

    pietroalbini committed Jan 7, 2019
    …oerister
    
    remove outdated comment
    
    #44234 was closed, apparently solved by #45353
    
    r? @michaelwoerister
  12. Make extern ref HTTPS

    claudijd committed Jan 7, 2019
  13. Auto merge of #57304 - davidtwco:issue-57280, r=nikomatsakis

    bors committed Jan 7, 2019
    NLL: Fix bug in associated constant type annotations.
    
    Fixes #57280.
    
    This PR reverses the variance used when relating types from the type
    annotation of an associated constant - this matches the behaviour of the
    lexical borrow checker and fixes a bug whereby matching a `&'a str`
    against a `&'static str` would produce an error.
    
    r? @nikomatsakis
  14. Auto merge of #57336 - ehuss:bump-stage0, r=alexcrichton

    bors committed Jan 7, 2019
    Bump stage0
    
    Updates stage 0
    From: rustc 1.32.0-beta.2 (a01e476 2018-12-08)
    To:   rustc 1.32.0-beta.11 (e64fee6 2019-01-04)
    
    Intended to pull in #57292 which will fix #57142.
    
    The following is a list of PRs this also pulls in in case anyone is interested in seeing the changes:
    
    #56930
    #56961
    #57236
    #57305
  15. Specify the tracking issue

    stjepang committed Jan 7, 2019
  16. Auto merge of #57327 - akash-fortanix:aa/update-compiler_builtins, r=…

    bors committed Jan 7, 2019
    …kennytm
    
    Update compiler_builtins 0.1.2 -> 0.1.4
    
    r? @alexcrichton
  17. Auto merge of #57394 - euclio:compiletest-optimization, r=Mark-Simula…

    bors committed Jan 7, 2019
    …crum
    
    slightly optimize compiletest test collection
    
    Save quite a few syscalls and avoiding pushing in a loop.
  18. slightly optimize compiletest test collection

    euclio committed Jan 7, 2019
    Save quite a few syscalls and avoiding pushing in a loop.
  19. Auto merge of #57365 - sinkuu:unused, r=oli-obk

    bors committed Jan 7, 2019
    Remove unused code
  20. Auto merge of #57379 - petrochenkov:parsrecov, r=estebank

    bors committed Jan 7, 2019
    tests: Do not use `-Z parse-only`, continue compilation to test recovery
    
    Make tests closer to reality!
    
    The next step will be enabling `-Z continue-parse-after-error` by default and looking at the regressions.
    
    A few instances of `-Z parse-only` are kept when it's appropriate, see e.g `ui/impl-trait/impl-trait-plus-priority.rs`, which tests mostly semantically wrong code and would generate too much useless noise if allowed to continue.
Commits on Jan 6, 2019
  1. Auto merge of #57344 - petrochenkov:regreach, r=arielb1

    bors committed Jan 6, 2019
    privacy: Fix regression in impl reachability
    
    Rollback to pre-#56878 logic of determining reachability.
    `reachability(impl Trait<Substs> for Type<Substs>) = reachability(Trait & Type)`, substs are ignored.
    
    Fixes #57264
  2. Update compiler_builtins 0.1.2 -> 0.1.4

    akash-fortanix committed Jan 4, 2019
  3. Auto merge of #57272 - petrochenkov:featrecov, r=estebank

    bors committed Jan 6, 2019
    Make sure feature gate errors are recoverable (take 2)
    
    Continuation of 15cefe4.
    Turns out I missed the most important part - the main feature gate checking pass.
  4. Auto merge of #57121 - glaubitz:flock-fixes, r=nagisa

    bors committed Jan 6, 2019
    flock: Use fcntl constants directly from libc crate on Unix targets
    
    Since the values for the fcntl constants can vary from architecture
    to architecture, it is better to use the values defined in the libc
    crate instead of assigning literals in the flock code which would
    make the assumption that all architectures use the same values.
    
    Fixes #57007
  5. Re-export constants from core into std

    stjepang committed Jan 6, 2019
  6. Add duration constants

    stjepang committed Jan 6, 2019
  7. Fix CI failures

    petrochenkov committed Jan 6, 2019
  8. flock: Use fcntl constants directly from libc crate on Unix targets

    glaubitz committed Jan 6, 2019
    Since the values for the fcntl constants can vary from architecture
    to architecture, it is better to use the values defined in the libc
    crate instead of assigning literals in the flock code which would
    make the assumption that all architectures use the same values.
    
    Fixes #57007
  9. Auto merge of #57291 - euclio:method-call-suggestion, r=estebank

    bors committed Jan 6, 2019
    use structured suggestion for method calls
    
    Furthermore, don't suggest calling the method if it is part of a place
    expression, as this is invalid syntax.
    
    I'm thinking it might be worth putting a label on the method assignment span like "this is a method" and removing the span from the "methods are immutable" text so it isn't reported twice.
    
    The suggestions in `src/test/ui/did_you_mean/issue-40396.stderr` are suboptimal. I could check if the containing expression is `BinOp`, but I'm not sure if that's general enough. Any ideas?
    
    r? @estebank
  10. Update libc to 0.2.46

    glaubitz committed Jan 6, 2019
  11. Auto merge of #57287 - alexcrichton:fix-jemalloc, r=nikomatsakis

    bors committed Jan 6, 2019
    rustc: Fix regression where jemalloc isn't used
    
    In #56986 the linkage of jemalloc to the compiler was switched from the
    driver library to the rustc binary to ensure that only rustc itself uses
    jemalloc. In doing so, however, it turns out jemalloc wasn't actually
    linked in at all! None of the symbols were referenced so the static
    library wasn't used. This means that jemalloc wasn't pulled in at all.
    
    This commit performs a bit of a dance to reference jemalloc symbols,
    attempting to pull it in despite LLVM's optimizations.
    
    Closes #57115
  12. use utf-8 throughout htmldocck

    euclio committed Jan 5, 2019
    This commit improves compatibility with Python 3, which already uses
    Unicode throughout.
    
    It also fixes a subtle incompatibility stemming from the use of
    `entitydefs`, which contains replacement text _encoded in latin-1_ for
    HTML entities. When using Python 3, this would cause `0xa0` to be
    incorrectly added to the element tree.
    
    This meant that there was a rustdoc test that would pass under Python 2
    but fail under Python 3, due to an incorrect regex match against the
    non-breaking space character. This commit triggers that failure in both
    versions, and also fixes it.
  13. Provide the option to use libc++ even on all platforms

    petrhosek committed Nov 14, 2018
    This is the default on platforms which use libc++ as the default C++
    library but this option allows using libc++ on others as well.