Commit Graph

105889 Commits

Author SHA1 Message Date
Andreas Molzer
aebd0d7339 Add capacity to BufReader with same unstable gate 2020-01-28 14:19:44 +01:00
Andreas Molzer
47ae565ed4 Add a method to query the capacity of a BufWriter 2020-01-26 21:52:04 +01:00
bors
698fcd38fa Auto merge of #68545 - estebank:verbose-bound-display, r=petrochenkov
Use better bound names in `-Zverbose` mode

r? @petrochenkov as per https://github.com/rust-lang/rust/pull/67951/files#r365524015
2020-01-26 11:48:34 +00:00
bors
3d8778d767 Auto merge of #68522 - estebank:impl-trait-sugg-2, r=oli-obk
Further improve `impl Trait`/`dyn Trait` suggestions

After reading [_Returning Trait Objects_ by Bryce Fisher-Fleig](https://bryce.fisher-fleig.org/blog/returning-trait-objects/), [I noticed that](https://www.reddit.com/r/rust/comments/esueur/returning_trait_objects/ffczl4k/) #68195 had a few bugs due to not ignoring `ty::Error`.

- Account for `ty::Error`.
- Account for `if`/`else` and `match` blocks when pointing at return types and referencing their types.
- Increase the multiline suggestion output from 6 lines to 20.
2020-01-26 08:36:23 +00:00
bors
fe1e81561a Auto merge of #68517 - oli-obk:spaces2, r=nagisa
Don't use spaces before type ascription like colons

Split out of #67133 to make that PR simpler

r? @eddyb
2020-01-26 05:13:14 +00:00
bors
086b2a49ec Auto merge of #68031 - Marwes:fold_list, r=estebank
perf: Avoid creating a SmallVec if nothing changes during a fold

Not sure if this helps but in theory it should be less work than what
the current micro optimization does for `ty::Predicate` lists.

(It would explain the overhead I am seeing from `perf`.)
2020-01-26 01:51:50 +00:00
bors
83beb0a118 Auto merge of #68546 - JohnTitor:rollup-znuot4b, r=JohnTitor
Rollup of 5 pull requests

Successful merges:

 - #68485 (add a test for #60976)
 - #68498 (Add some type-alias-impl-trait regression tests)
 - #68514 (Use Self instead of self return type)
 - #68534 (Update submodules to rust-lang)
 - #68540 (clean up error codes E0229 and E0261)

Failed merges:

r? @ghost
2020-01-25 22:44:39 +00:00
Yuki Okushi
5774dd053b
Rollup merge of #68540 - GuillaumeGomez:err-codes-cleanup-e0229-e0261, r=Dylan-DPC
clean up error codes E0229 and E0261

r? @Dylan-DPC
2020-01-26 06:37:24 +09:00
Yuki Okushi
7beac65eb6
Rollup merge of #68534 - JohnTitor:update-remote-url, r=jonas-schievink
Update submodules to rust-lang

They're on rust-lang now. Should be green as it's the same change as #65963 but let's make sure CI is green also.
2020-01-26 06:37:22 +09:00
Yuki Okushi
424e15ae54
Rollup merge of #68514 - lzutao:fmt-Self, r=Dylan-DPC
Use Self instead of self return type
2020-01-26 06:37:21 +09:00
Yuki Okushi
e7c557b295
Rollup merge of #68498 - Aaron1011:tait-regression-tests, r=Centril
Add some type-alias-impl-trait regression tests

Fixes #57611
Fixes #57807
2020-01-26 06:37:19 +09:00
Yuki Okushi
88429fb5e2
Rollup merge of #68485 - kingslef:fix/test-60976, r=nikomatsakis
add a test for #60976

The test fails on 1.36.0 but passes on master.

Huge thanks for @hellow554 actually digging out the minimized version of the
repro.

Fixes #60976.
2020-01-26 06:37:18 +09:00
Esteban Küber
3fb1810476 Use better bound names in -Zverbose mode 2020-01-25 13:25:19 -08:00
Esteban Küber
16709f032c Revert suggestion window size change 2020-01-25 12:26:33 -08:00
bors
6d3f4e0aab Auto merge of #68530 - estebank:abolish-ice, r=petrochenkov
Do not ICE on multipart suggestions touching multiple files

When encountering a multipart suggestion with spans belonging to
different contexts, skip that suggestion.

Fix #68449. Similar to #68256.
2020-01-25 19:55:26 +00:00
Guillaume Gomez
7fb8f7d85d clean up error codeS E0229 and E0261 2020-01-25 17:41:55 +01:00
bors
8ad83afe5b Auto merge of #68525 - tlively:emcc-codegen-sigsegv-66308, r=alexcrichton
Update LLVM to fix crash on Emscripten targets

Fixes #66308 (for real this time). r? @alexcrichton
2020-01-25 16:34:53 +00:00
bors
3bf71b3d5c Auto merge of #68516 - oli-obk:spaces, r=eddyb
Render const pointers in MIR more compactly

Split out from #67133 to make that PR simpler

cc @RalfJung

r? @eddyb
2020-01-25 13:14:59 +00:00
Oliver Scherer
ae31436ac7 Don't use spaces before type ascription like colons 2020-01-25 13:19:21 +01:00
Yuki Okushi
cdc6898a90 Update submodules to rust-lang 2020-01-25 17:58:10 +09:00
bors
80a65bcaf2 Auto merge of #68448 - maurer:dyn-cdylib, r=alexcrichton
rustc: Allow cdylibs to link against dylibs

Previously, rustc mandated that cdylibs could only link against rlibs as dependencies (not dylibs).
This commit disables that restriction and tests that it works in a simple case.

I don't have a windows rustc dev environment, so I guessed at the MSVC test code, I'm hoping the CI can run that for me.

Additionally, we might want to consider emitting (through cargo or rustc) some metadata to help C users of a cdylib figure out where all the dylibs they need are. I don't think that should be needed to land this change, as it will still be usable by homogeneous build systems without it.

My new test was templated off the `tests/run-make-fulldeps/cdylib` test. It seemed more appropriate to have it as a separate test, since both foo.rs and bar.rs would need to be replicated to make that test cover both cases, but I can do that if it would be preferred.

If I'm doing anything out of order/process, please let me know; this is only my second change to rustc and the prior one was trivial.

r? alexcrichton
2020-01-25 07:49:40 +00:00
bors
8bf17584e0 Auto merge of #68269 - csmoe:temp, r=estebank
Suggest to shorten temporary borrow from raw pointer

Closes https://github.com/rust-lang/rust/issues/65436
r? @estebank
cc @tmandry
2020-01-25 04:42:56 +00:00
Aaron Hill
1605276cc2
Add some type-alias-impl-trait regression tests
Fixes #57611
Fixes #57807
2020-01-24 21:32:00 -05:00
Esteban Küber
b626202087 Do not ICE on multipart suggestions touching multiple files
When encountering a multipart suggestion with spans belonging to
different contexts, skip that suggestion.
2020-01-24 18:03:09 -08:00
bors
8647aa1a2c Auto merge of #68526 - JohnTitor:rollup-3mmljof, r=JohnTitor
Rollup of 6 pull requests

Successful merges:

 - #68111 (Print constants in `type_name` for const generics)
 - #68374 (Fix invalid link to the C++ Exception Handling ABI documentation)
 - #68504 (Use check-pass mode for lint tests and nll tests)
 - #68509 (Clean up error codes E0223 and E0225 explanations)
 - #68511 (Remove unused ignore-license directives)
 - #68515 (Support feature process_set_argv0 for VxWorks)

Failed merges:

r? @ghost
2020-01-24 23:04:54 +00:00
Yuki Okushi
f998e275ca
Rollup merge of #68515 - Wind-River:master_2020, r=alexcrichton
Support feature process_set_argv0 for VxWorks

r? @alexcrichton
2020-01-25 07:45:18 +09:00
Yuki Okushi
b9c86a363a
Rollup merge of #68511 - tmiasko:ignore-license, r=alexcrichton
Remove unused ignore-license directives

The tidy check was removed in rust-lang/rust#53617
2020-01-25 07:45:16 +09:00
Yuki Okushi
e22ae2c096
Rollup merge of #68509 - GuillaumeGomez:clean-up-err-codes-e0223-e0225, r=Dylan-DPC
Clean up error codes E0223 and E0225 explanations

r? @Dylan-DPC
2020-01-25 07:45:15 +09:00
Yuki Okushi
cecffb6308
Rollup merge of #68504 - tmiasko:check-pass, r=alexcrichton
Use check-pass mode for lint tests and nll tests

Helps with issue #62277.
2020-01-25 07:45:13 +09:00
Yuki Okushi
b9c29770cc
Rollup merge of #68374 - gitletH:patch-1, r=nikomatsakis
Fix invalid link to the C++ Exception Handling ABI documentation

The original link is longer valid(404). I am assuming it's meant to be pointed to the Itanium C++ Exception Handling ABI documentation.
2020-01-25 07:45:11 +09:00
Yuki Okushi
cbaecee87c
Rollup merge of #68111 - varkor:const-generics-type_name, r=oli-obk
Print constants in `type_name` for const generics

Fixes https://github.com/rust-lang/rust/issues/65372.

r? @oli-obk as there may have been a deliberate decision not to in 5b9848912a (diff-4ed1a72c0bfdf17be769ed520932cd02R80).
2020-01-25 07:45:10 +09:00
Esteban Küber
600e385c43 review comments 2020-01-24 14:03:35 -08:00
Esteban Küber
d493dccef7 Apply resolve_vars_if_possible to returned types for more accurate suggestions 2020-01-24 11:48:17 -08:00
Esteban Küber
34d51b3378 Increase suggestion code window from 6 lines to 20 2020-01-24 11:18:45 -08:00
Thomas Lively
110871a37a New fix 2020-01-24 11:12:33 -08:00
Esteban Küber
d14a323e74 Use more accurate return path spans
No longer suggest `Box::new(if foo { Type1 } else { Type2 })`, instead
suggesting `if foo { Box::new(Type1) } else { Box::new(Type2) }`.
2020-01-24 10:35:13 -08:00
Thomas Lively
601aa407ee Add opt-level=0 to test 2020-01-24 10:26:39 -08:00
Thomas Lively
7b49c7d743 Update LLVM to fix crash on Emscripten targets
Adds a small Rust regression test for #66308.

r? @alexcrichton
2020-01-24 10:26:39 -08:00
BaoshanPang
06af44238f Support feature process_set_argv0 for VxWorks 2020-01-24 09:59:59 -08:00
bors
c2d141df59 Auto merge of #68494 - matthewjasper:internal-static-ptrs, r=nikomatsakis
Make pointers to statics internal

Closes #67611

r? @nikomatsakis
2020-01-24 17:18:36 +00:00
Lzu Tao
2d7f8b31db Use Self instead of self return type 2020-01-24 17:43:57 +01:00
varkor
50dd8eaeb9 Print constants in type_name for const generics 2020-01-24 16:23:32 +00:00
Oliver Scherer
9a2d5e87d6 Render const pointers in MIR more compactly 2020-01-24 16:20:58 +01:00
bors
73f76b74ef Auto merge of #68414 - michaelwoerister:share-drop-glue, r=alexcrichton
Also share drop-glue when compiling with -Zshare-generics (i.e. at opt-level=0)

This PR adds drop-glue to the set of monomorphizations that can be shared across crates via `-Zshare-generics`.

This version of the PR might have detrimental effects on performance as it makes lots of stuff dependent on a single query results (`upstream_monomorphizations_for(def_id_of_drop_in_place)`). That should be fixable but let's do a perf run first.

Potentially fixes issue https://github.com/rust-lang/rust/issues/64140. (cc @alexcrichton)
The changes here are related to @matthewjasper's https://github.com/rust-lang/rust/pull/67332 but should be mostly orthogonal.

r? @ghost
2020-01-24 14:00:56 +00:00
Guillaume Gomez
768f6f9340 Clean up error codes E0223 and E0225 explanations 2020-01-24 12:56:32 +01:00
bors
dee12bb2b7 Auto merge of #68506 - tmandry:rollup-kz9d33v, r=tmandry
Rollup of 7 pull requests

Successful merges:

 - #68424 (Suggest borrowing `Vec<NonCopy>` in for loop)
 - #68438 (Account for non-types in substs for opaque type error messages)
 - #68469 (Avoid overflow in `std::iter::Skip::count`)
 - #68473 (Enable ASan on Fuchsia)
 - #68479 (Implement `unused_parens` for block return values)
 - #68483 (Add my (@flip1995) name to .mailmap)
 - #68500 (Clear out std, not std tools)

Failed merges:

r? @ghost
2020-01-24 08:32:10 +00:00
Tyler Mandry
7f8a61d96c
Rollup merge of #68500 - Mark-Simulacrum:fix-bootstrap-clearing, r=alexcrichton
Clear out std, not std tools

This was a typo that slipped in, and meant that we were still not properly
clearing out std.

This is basically #67760 but actually correct...
2020-01-24 00:31:02 -08:00
Tyler Mandry
a7e2ac41ed
Rollup merge of #68483 - flip1995:mailmap, r=Dylan-DPC
Add my (@flip1995) name to .mailmap
2020-01-24 00:31:00 -08:00
Tyler Mandry
1662888126
Rollup merge of #68479 - Tyg13:unused_parens_return, r=Centril
Implement `unused_parens` for block return values

Fixes #68386

r? @Centril
2020-01-24 00:30:59 -08:00
Tyler Mandry
94aa655a3c
Rollup merge of #68473 - nopsledder:rust_sanitizer_fuchsia, r=alexcrichton
Enable ASan on Fuchsia

This change adds the x86_64-fuchsia and aarch64-fuchsia LLVM targets to
those allowed to invoke -Zsanitizer. Currently, the only overlap between
compiler_rt sanitizers supported by both rustc and Fuchsia is ASan.
2020-01-24 00:30:58 -08:00