Skip to content
Permalink
Tree: 2628f579f6
Commits on Aug 8, 2019
  1. Auto merge of #63371 - Centril:rollup-k0xtdcz, r=Centril

    bors committed Aug 8, 2019
    Rollup of 7 pull requests
    
    Successful merges:
    
     - #62994 (Add test for #43398)
     - #63259 (Add tests for some issues)
     - #63327 (doc: Reword deprecation message of MetadataExt::as_raw_stat)
     - #63331 (Test conditional initialization validation in async fns)
     - #63334 (Update to rustc-guide that passes toolstate)
     - #63353 (Update books)
     - #63360 (Use consistent capitalization in -C/-Z help)
    
    Failed merges:
    
    r? @ghost
  2. Rollup merge of #63360 - brson:cz-help, r=Mark-Simulacrum

    Centril committed Aug 8, 2019
    Use consistent capitalization in -C/-Z help
    
    This code could also use a pass to consistify the grammar, but not by me atm.
  3. Rollup merge of #63353 - ehuss:update-books, r=ehuss

    Centril committed Aug 8, 2019
    Update books
    
    ## nomicon
    
    1 commits in b7f0aba2f88a8feade70595efcfa3438e54e96c0..8a7d05615e5bc0a7fb961b4919c44f5221ee54da
    2019-07-11 15:11:36 -0400 to 2019-08-07 07:46:59 -0500
    - s/railguard/guardrail/ (rust-lang-nursery/nomicon#156)
    
    ## reference
    
    5 commits in 8e7d614303b0dec7492e048e63855fcd3b944ec8..b4b3536839042a6743fc76f0d9ad2a812020aeaa
    2019-07-16 21:02:33 +0100 to 2019-08-07 02:29:50 +0200
    - Update partially initialized values in drop documentation. (rust-lang-nursery/reference#648)
    - Define sound and unsound (rust-lang-nursery/reference#647)
    - Fix a type in the modules section: functions => modules (rust-lang-nursery/reference#645)
    - Fix some links. (rust-lang-nursery/reference#642)
    - Update recursion_limit default limit (rust-lang-nursery/reference#633)
    
    ## rust-by-example
    
    14 commits in e3679e214d8db44586aca9b20aa27517007d1923..f2c15ba5ee89ae9469a2cf60494977749901d764
    2019-07-15 11:13:44 -0300 to 2019-08-07 10:14:25 -0300
    - Remove redundant semicolons (rust-lang/rust-by-example#1239)
    - Rename "Read Lines" chapter title (rust-lang/rust-by-example#1230)
    - Added space between word and inline code block in unit_testing.md (rust-lang/rust-by-example#1237)
    - [typo] fix unit_testing wrong output (rust-lang/rust-by-example#1210)
    - flow_control/match/binding.md: `...' -> `..=' (rust-lang/rust-by-example#1233)
    - generics/impl.md: follow rustfmt style (rust-lang/rust-by-example#1236)
    - freeze.md: Incorrect example (rust-lang/rust-by-example#1226)
    - Make `point` consistent (rust-lang/rust-by-example#1229)
    - Fix typo at error -> panic (rust-lang/rust-by-example#1227)
    - Snake didn't deserve to die 🐍 (rust-lang/rust-by-example#1228)
    - Reorder links in destructuring.md (rust-lang/rust-by-example#1225)
    - Rename variable names for consistent in iter_result.md (rust-lang/rust-by-example#1224)
    - Fix several shell output and code highlights. (rust-lang/rust-by-example#1222)
    - Add new example for Rc. (rust-lang/rust-by-example#1223)
    
    ## edition-guide
    
    5 commits in f6c8b92d4e63edd28e862be952f33861f35956f8..e58bc4ca104e890ac56af846877c874c432a64b5
    2019-07-06 22:10:32 +0200 to 2019-07-31 20:14:12 +0200
    - Hide extraneous `use` in anonymous lifetime example. (rust-lang-nursery/edition-guide#190)
    - Attempt to clarify "no more mod.rs". (rust-lang-nursery/edition-guide#187)
    - Remove -preview for rustup components. (rust-lang-nursery/edition-guide#188)
    - rust-lang-nursery/edition-guide#184 More clear explanation and Title. (rust-lang-nursery/edition-guide#185)
    - More clear table headers (rust-lang-nursery/edition-guide#186)
    
    ## embedded-book
    
    2 commits in ff334e74fdb9f197e621efa6d7c3105be892e888..c5da1e11915d3f28266168baaf55822f7e3fe999
    2019-07-16 13:47:34 +0000 to 2019-08-05 23:02:10 +0000
    - install/verify: fix next section link  (rust-embedded/book#202)
    - Syst small fix  (rust-embedded/book#198)
  4. Rollup merge of #63334 - mark-i-m:fix-guide, r=ehuss

    Centril committed Aug 8, 2019
    Update to rustc-guide that passes toolstate
    
    r? @ehuss
    
    Sorry for the trouble. I've been somewhat hard to reach lately. Thanks for your help!
  5. Rollup merge of #63331 - gorup:conditionalinit, r=cramertj

    Centril committed Aug 8, 2019
    Test conditional initialization validation in async fns
    
    r? @cramertj
    
    Per [paper doc](https://paper.dropbox.com/doc/async.await-Call-for-Tests--AiWF2Nt8tgDiA70qFI~oiLOOAg-nMyZGrra7dz9KcFRMLKJy) calling for async/.await tests, tests are desired for conditionally initialized local variables. This PR hopes to provide tests for that.
    
    #63294 seems to be tracking the items from the paper doc that this PR is related to
    #62121 is an open issue asking for more async/.await tests that this relates to
    
    ---
    👍 executed 2 new tests
    👍 tidy
  6. Rollup merge of #63327 - lzutao:fix-as_raw_stat-dep-msg, r=Mark-Simul…

    Centril committed Aug 8, 2019
    …acrum
    
    doc: Reword deprecation message of MetadataExt::as_raw_stat
    
    Closes #62711
    r? @Mark-Simulacrum
  7. Rollup merge of #63259 - JohnTitor:add-tests-for-some-issues, r=Centril

    Centril committed Aug 8, 2019
    Add tests for some issues
    
    Closes #29265
    Closes #37433
    Closes #49544
    
    r? @Centril
  8. Auto merge of #63282 - Xanewok:update-rls, r=nikomatsakis

    bors committed Aug 8, 2019
    Update RLS
    
    Most importantly this includes:
    * Collect file -> edition mapping after AST expansion ([#1513](rust-lang/rls#1513)) (enabled by #62679)
    * Fix rustfmt during builds by reading edition from manifest ([#1533](rust-lang/rls#1533))
    
    Which fixes the annoying problem where users couldn't format via RLS while `cargo fmt` worked.
    
    The beta cut-off is drawing near and I'd like to make sure this lands before then.
  9. Auto merge of #63363 - ehuss:update-cargo, r=alexcrichton

    bors committed Aug 8, 2019
    Update cargo
    
    9 commits in 26092da337b948719549cd5ed3d1051fd847afd7..42a8c0adf91323c01228268c651aef5366b25b69
    2019-07-31 23:24:32 +0000 to 2019-08-07 20:41:07 +0000
    - Add support for customizing JSON diagnostics from Cargo (rust-lang/cargo#7214)
    - Bump rustfix (rust-lang/cargo#7221)
    - Fix remap-path-prefix from failing. (rust-lang/cargo#7219)
    - Clean up build script stuff and documentation. (rust-lang/cargo#7215)
    - Remove debug panic in package-features. (rust-lang/cargo#7213)
    - Fix an old test. (rust-lang/cargo#7208)
    - Remove unused AstBuilder (rust-lang/cargo#7210)
    - Revert "Release a jobserver token while locking a file" (rust-lang/cargo#7201)
    - improve error message for unmatched prerelease dependencies (rust-lang/cargo#7191)
  10. Update cargo

    ehuss committed Aug 8, 2019
Commits on Aug 7, 2019
  1. Auto merge of #62457 - zackmdavis:minimax_search_and_the_structure_of…

    bors committed Aug 7, 2019
    …_cognition, r=varkor
    
    pretty-pretty extremal constants!
    
    (A resurrection of the defunct #57073.)
    
    While many programmers may intuitively appreciate the significance of "magic numbers" like −2147483648, Rust is about empowering everyone to build reliable and efficient software! It's a bit more legible to print the constant names (even noisy fully-qualified-paths thereof).
    
    The bit-manipulation methods mirror those in `librustc_mir::hair::pattern::_match::all_constructors`; thanks to the immortal Varkor for guidance.
    
    Resolves #56393.
    
    r? @varkor
  2. Use consistent capitalization in -C/-Z help

    brson committed Aug 7, 2019
  3. Auto merge of #60547 - redox-os:redox-unix, r=alexcrichton

    bors committed Aug 7, 2019
    redox: convert to target_family unix
    
    This is the second step to supporting #60139.
    
    In order to have a smooth transition, there will need to be a change made in liblibc at the same time, switching Redox over to the unix target family. See rust-lang/libc#1332
  4. Update books

    ehuss committed Aug 7, 2019
  5. Auto merge of #63280 - lzutao:update-clippy, r=Mark-Simulacrum

    bors committed Aug 7, 2019
    submodules: Update clippy
    
    r? @Manishearth
    Fixes clippy toolstate in #63228 (comment)
  6. Auto merge of #61919 - alexreg:fix-atb-1, r=nikomatsakis

    bors committed Aug 7, 2019
    Fix for "ambiguous associated type" issue with ATBs
    
    Fixes #61752.
    
    r? @nikomatsakis
    
    CC @Centril
  7. submodules: Update clippy

    lzutao committed Aug 7, 2019
  8. Auto merge of #63152 - estebank:big-array, r=oli-obk

    bors committed Aug 7, 2019
    Always error on `SizeOverflow` during mir evaluation
    
    Fix #55878, fix #25116.
    
    r? @oli-obk
  9. pretty-pretty extremal constants!

    zackmdavis committed Jul 7, 2019
    While many programmers may intuitively appreciate the significance of
    "magic numbers" like −2147483648, Rust is about empowering everyone to
    build reliable and efficient software! It's a bit more legible to
    print the constant names (even noisy fully-qualified-paths thereof).
    
    The bit-manipulation methods mirror those in
    `librustc_mir::hair::pattern::_match::all_constructors`; thanks to the
    immortal Varkor for guidance.
    
    Resolves #56393.
  10. Fix cfg_if usage

    jackpot51 committed Aug 7, 2019
  11. Auto merge of #63341 - Centril:rollup-hkhxahb, r=Centril

    bors committed Aug 7, 2019
    Rollup of 9 pull requests
    
    Successful merges:
    
     - #63034 (Fix generator size regressions due to optimization)
     - #63035 (Use MaybeUninit to produce more correct layouts)
     - #63163 (add a pair of whitespace after remove parentheses)
     - #63294 (tests for async/await drop order)
     - #63307 (don't ignore mir_dump folder)
     - #63308 (PlaceRef's base is already a reference)
     - #63310 (Tests around moving parts of structs and tuples across await points)
     - #63314 (doc: the content has since been moved to the guide)
     - #63333 (Remove unnecessary features from compiler error code list)
    
    Failed merges:
    
    r? @ghost
Commits on Aug 6, 2019
  1. review comment: reword test comment

    estebank committed Aug 6, 2019
  2. Test conditional initialization validation in async fns

    gorup committed Aug 6, 2019
  3. Rollup merge of #63333 - jethrogb:jb/error-codes-features, r=Mark-Sim…

    Centril committed Aug 6, 2019
    …ulacrum
    
    Remove unnecessary features from compiler error code list
  4. Rollup merge of #63314 - tshepang:update-src-readme, r=matthewjasper

    Centril committed Aug 6, 2019
    doc: the content has since been moved to the guide
  5. Rollup merge of #63310 - gorup:partial-moves, r=cramertj

    Centril committed Aug 6, 2019
    Tests around moving parts of structs and tuples across await points
    
    r? cramertj
    
    Per the [dropbox paper](https://paper.dropbox.com/doc/async.await-Call-for-Tests--AiR3vlp1s_Kw0yzWZ1sWMnaIAQ-nMyZGrra7dz9KcFRMLKJy) about more tests, it appears there are some tests wanted around local variables (under the section ["Dynamic semantics"](https://paper.dropbox.com/doc/async.await-Call-for-Tests--AiR3vlp1s_Kw0yzWZ1sWMnaIAg-nMyZGrra7dz9KcFRMLKJy#:uid=122335511260129643493892&h2=Dynamic-semantics)). Here is one commit, and I can probably get code up for other scenarios listed there, although I may not have the full background to know what is being targeted by the tests. Please assist me if I'm off course, thanks!
    
    ---
    - Executed all 4 new tests
    - Executed `tidy` command
  6. Rollup merge of #63308 - spastorino:place-ref-base-is-ref, r=oli-obk

    Centril committed Aug 6, 2019
    PlaceRef's base is already a reference
    
    r? @oli-obk
  7. Rollup merge of #63307 - RalfJung:gitignore, r=alexcrichton

    Centril committed Aug 6, 2019
    don't ignore mir_dump folder
    
    I dumped some MIR and wondered why `git status` wouldn't show the tree as dirty, reminding me to clean up after myself. Turns out this folder was explicitly gitignored. I don't think it should be.
    
    If someone doesn't want to clean up that way, they can add it to `.git/info/exclude`.
    
    (That file seems like it could need some general cleanup, honestly, but that's for another day.)
  8. Rollup merge of #63294 - alsuren:async-tests, r=cramertj

    Centril committed Aug 6, 2019
    tests for async/await drop order
    
    This is just me helping out with #62121 where I can.
    
    I'm also going to use this as a public place to collect my thoughts about what has already been done and what hasn't (adding comments to the dropbox paper doc was quickly getting spammy).
    
    I've tried to keep my commit messages similar to the line items on https://paper.dropbox.com/doc/async.await-Call-for-Tests--AiKouT0L41mSnK1741s~TiiRAg-nMyZGrra7dz9KcFRMLKJy as possible.
    
    A bunch of my tests are likely to be either redundant with other tests, or lower quality than other tests that people are writing. A reasonable approach might be to tell me which commits you want to keep and I'll throw away the rest of them.
    
    The part from the dropbox paper doc that I'm concentrating on here is:
    (items marked with `?` are ones that I can't immediately think of how to test, so I will leave for other people. Items with checkboxes are things that I have done or will try to do next)
    
    ### Dynamic semantics
    - `async`/`await` with unusual locals:
        - ? partially uninhabited
        - ? conditionally initialized
        - ~drop impls~ already done in src/test/ui/async-await/drop-order/*
        - ? nested drop impls
        - ~partially moved (e.g., `let x = (vec![], vec![]); drop(x.0); foo.await; drop(x.1);`)~ see  #63310
    - Control flow:
        - basic
        - complex
    - [x] `.await` while holding variables of different sizes
    - (possibly) drop order
        - [x] including drop order for locals when a future is dropped part-way through execution
             - Parameters' drop order is covered in my commit f40190a
        - ~An async fn version of `dynamic-drop.rs`~
            - already done by matthewjasper in https://github.com/rust-lang/rust/pull/62193/files
    - ? interaction with const eval, promoteds, and temporaries
    - [x] drop the resulting future and check that local variables and parameters are dropped in the expected order (interaction with cancellation, in other words)
        - also in f40190a
    
    Explanation of commits:
    
    * 0a1bdd4 is the simplest place I could think of to explicitly test `.await` while holding variables of different sizes. I'm pretty sure that this will end up being redundant with something else, so I'm happy to drop it.
    * f40190a is a copy-paste from `drop-order-for-async-fn-parameters.rs` with `NeverReady.await` dumped on the end of each testcase.
        * Normally I don't like copy-paste-based tests, but `drop-order-for-async-fn-parameters-by-ref-binding.rs` is also copy-paste, so I thought it might be okay.
        * [x] I'm a bit sad that this doesn't cover non-parameter locals, but I think it should be easy enough to extend in that direction, so I might have a crack at that tomorrow.
    * c4940e0 makes a bunch of local variables and moves them into either `{}` blocks or `async move {}` blocks, checking for any surprising differences.
        * I have tried to give the test functions descriptive names
        * I have not duplicated the tests for methods with/without self.
        * I think that all of these tests could be rewritten to be clearer if I could write down the expected drop order next to each test.
  9. Rollup merge of #63163 - bravomikekilo:master, r=cramertj

    Centril committed Aug 6, 2019
    add a pair of whitespace after remove parentheses
    
    fix [issue-63156](#63156).
    add a pair of whitespace after remove parentheses.
  10. Rollup merge of #63034 - tmandry:reduce-generator-size-regressions, r…

    Centril committed Aug 6, 2019
    …=cramertj
    
    Fix generator size regressions due to optimization
    
    I tested the generator optimizations in #60187 and #61922 on the Fuchsia
    build, and noticed that some small generators (about 8% of the async fns
    in our build) increased in size slightly.
    
    This is because in #60187 we split the fields into two groups, a
    "prefix" non-overlap region and an overlap region, and lay them out
    separately. This can introduce unnecessary padding bytes between the two
    groups.
    
    In every single case in the Fuchsia build, it was due to there being
    only a single variant being used in the overlap region. This means that
    we aren't doing any overlapping, period. So it's better to combine the
    two regions into one and lay out all the fields at once, which is what
    this change does.
    
    r? @cramertj
    cc @eddyb @Zoxc
  11. passify tidy

    mark-i-m committed Aug 6, 2019
  12. redox: convert to target_family unix

    jackpot51 committed Apr 7, 2019
  13. Fix generator size regressions due to optimization

    tmandry committed Jul 27, 2019
    I tested the generator optimizations in #60187 and #61922 on the Fuchsia
    build, and noticed that some small generators (about 8% of the async fns
    in our build) increased in size slightly.
    
    This is because in #60187 we split the fields into two groups, a
    "prefix" non-overlap region and an overlap region, and lay them out
    separately. This can introduce unnecessary padding bytes between the two
    groups.
    
    In every single case in the Fuchsia build, it was due to there being
    only a single variant being used in the overlap region. This means that
    we aren't doing any overlapping, period. So it's better to combine the
    two regions into one and lay out all the fields at once, which is what
    this change does.
Older
You can’t perform that action at this time.