Esteban Küber
def0f544a3
Change Scalar to numeric cast
2018-10-16 11:04:42 -07:00
Esteban Küber
5beeb535e1
Reword Range*/[Range*]: Iterator E0277 messages
2018-10-11 13:44:07 -07:00
Esteban Küber
c71228e2f4
review comments
...
- reword messages
- apply custom comments to all types of ranges
- fix indentation
2018-10-11 12:11:23 -07:00
Esteban Küber
a0fd68b088
fix tidy
2018-10-09 20:19:57 -07:00
Esteban Küber
2305d02c1a
Add tests for handled cases
2018-10-09 19:01:17 -07:00
Esteban Küber
330b7eda95
Add regression test ( #22872 )
2018-10-09 19:00:41 -07:00
Esteban Küber
5b0223e8c6
Reword rustc_on_unimplemented
errors for Iterator
...
- Detect one element array of `Range` type, which is potentially a typo:
`for _ in [0..10] {}` where iterating between `0` and `10` was intended.
(#23141 )
- Suggest `.bytes()` and `.chars()` for `String`.
- Suggest borrowing or `.iter()` on arrays (#36391 )
- Suggest using range literal when iterating on integers (#34353 )
- Do not suggest `.iter()` by default (#50773 , #46806 )
2018-10-09 18:53:53 -07:00
Esteban Küber
cd7c8182dd
Add more targetting filters for arrays to rustc_on_unimplemented
2018-10-09 18:44:07 -07:00
bors
0e07c4281c
Auto merge of #54762 - RalfJung:miri-validate, r=oli-obk
...
Prepare miri engine for enforcing validity invariant during execution
In particular, make recursive checking of references optional, and add a `const_mode` parameter that says whether `usize` is allowed to contain a pointer. Also refactor validation a bit to be type-driven at the "leafs" (primitive types), and separately validate scalar layout to catch `NonNull` violations (which it did not properly validate before).
Fixes https://github.com/rust-lang/rust/issues/53826
Also fixes https://github.com/rust-lang/rust/issues/54751
r? @oli-obk
2018-10-09 17:19:56 +00:00
Ralf Jung
fe96f8235c
validity: check dynamic size, not static
...
also less verbose logging
2018-10-09 13:08:00 +02:00
Ralf Jung
976880aa84
dont fail when validating non-local closures
2018-10-09 13:08:00 +02:00
Ralf Jung
6899af82fd
box is also a primitive type
2018-10-09 13:08:00 +02:00
Ralf Jung
db1663d598
update miri
2018-10-09 13:08:00 +02:00
Ralf Jung
fcf6b5c79b
add fixme for potential perf optimization
2018-10-09 13:08:00 +02:00
Ralf Jung
e09e3c898c
fix nits and handling of extern static
2018-10-09 13:08:00 +02:00
Ralf Jung
322017b2bc
unify handling of thin and fat pointers by moving primitive type handling out of aggregate handling
...
Also, make enum variant handling a bit nicer
2018-10-09 13:08:00 +02:00
Ralf Jung
95593331bf
add some tests with constants that better be valid
2018-10-09 13:08:00 +02:00
Ralf Jung
22c1a0acc8
For now, accept all data for integer types when not in const mode
...
We'll try ruling out undef later
2018-10-09 13:08:00 +02:00
Ralf Jung
9bb4bcd770
tidy up
2018-10-09 13:08:00 +02:00
Ralf Jung
654d9ff618
do not look at refs to external statics at all
2018-10-09 13:08:00 +02:00
Ralf Jung
616cb6356f
miri engine: also check return type before calling function
2018-10-09 13:08:00 +02:00
Ralf Jung
d2b9b1de05
add machine option to validate things on every copy
2018-10-09 13:08:00 +02:00
Ralf Jung
13bdc1673d
move a test to a better place
2018-10-09 13:08:00 +02:00
Ralf Jung
69a320f40d
also validate everything that has a Scalar layout, to catch NonNull
2018-10-09 13:08:00 +02:00
Ralf Jung
0a2fae6cb7
fix validating arrays of ZSTs
...
Fixes #54751
2018-10-09 13:08:00 +02:00
Ralf Jung
f65d3b5491
switch validation of scalars to be type-driven
...
This does not actually regress anything. It would regress NonNull, but we
didn't handle that correctly previously either.
2018-10-09 13:08:00 +02:00
Ralf Jung
ff5a245f52
check that entire ref is in-bounds before recursing; add macro for validation msgs on error
2018-10-09 13:08:00 +02:00
Ralf Jung
bf5e6ebdd3
miri validity: make recursive ref checking optional
2018-10-09 13:08:00 +02:00
bors
e1643a8968
Auto merge of #54757 - nikomatsakis:nll-issue-54573-user-annot, r=pnkfelix
...
user annotations in patterns
Fixes https://github.com/rust-lang/rust/issues/54573
r? @pnkfelix
2018-10-09 10:15:44 +00:00
bors
607243b6f9
Auto merge of #54798 - matthewjasper:free-region-closure-errors, r=nikomatsakis
...
[NLL] Improve closure region bound errors
Previously, we would report free region errors that originate from closure with the span of the closure and a "closure body requires ..." message. This is now updated to use a reason and span from inside the closure.
2018-10-09 07:22:14 +00:00
Niko Matsakis
ccba716099
add some debug!
to type checking
2018-10-08 19:21:22 -04:00
Niko Matsakis
16e1aaf09d
document create_substs_for_generic_args
2018-10-08 19:20:37 -04:00
Niko Matsakis
40ab41fd18
add pattern type ascriptions for tuple/brace structs/enums
2018-10-08 19:20:37 -04:00
Niko Matsakis
a609384561
do not skip renumbering the place in place-type-ascriptions
2018-10-08 19:20:37 -04:00
Niko Matsakis
71fed065f7
extract more helper fns around user substs
2018-10-08 19:20:37 -04:00
Niko Matsakis
f4b711516d
move user_annotated_ty_for_adt
into a helper trait
2018-10-08 19:20:37 -04:00
bors
b1a137d015
Auto merge of #54686 - zackmdavis:zero_life, r=nikomatsakis
...
structured suggestions for unused-lifetimes lint
Regretfully, resolve_lifetime.rs is suffering from a bit of rightward-drift, but

r? @nikomatsakis
2018-10-08 22:06:52 +00:00
bors
423d810986
Auto merge of #54871 - u32i64:master, r=frewsxcv
...
Remove unnecessary comma in `libstd/thread/mod.rs` doc comment
Fix typo in `libstd/thread/mod.rs` doc comment: remove unnecessary comma.
2018-10-08 12:17:36 +00:00
bors
96734ae0d4
Auto merge of #54865 - pietroalbini:1.29.2-notes, r=pietroalbini
...
Backport 1.29.2 release notes to master
r? @ghost
2018-10-08 09:29:59 +00:00
bors
25a75a4d86
Auto merge of #54847 - ljedrz:kill_graphviz_intocow, r=pnkfelix
...
Cleanup: remove graphviz::IntoCow
It's just `Into<Cow<...>>` and the applicable methods already exist for `Vec`/`[T]` and `String`/`str`.
2018-10-08 06:50:25 +00:00
bors
ef5c00d0ca
Auto merge of #54700 - frewsxcv:frewsxcv-binary-search, r=GuillaumeGomez
...
Clarify docs for when binary_search has many matches.
Fixes https://github.com/rust-lang/rust/issues/51817 .
2018-10-08 03:04:50 +00:00
Zack M. Davis
efd7a31150
in which rightward drift is opposed
...
Thanks to reviewers Tyler Mandry (for pointing out that this is
ridiculous and we need a helper function), Niko Matsakis (for pointing
out that the span-calculation code only has a couple free variables),
and Esteban Küber (for pointing out `get_generics`).
2018-10-07 19:46:19 -07:00
Zack M. Davis
b1b684ef23
structured suggestions for unused-lifetimes lint
2018-10-07 19:17:39 -07:00
bors
aefe9b099a
Auto merge of #54609 - kzys:404-search, r=GuillaumeGomez
...
Add the library search box on the 404 page
It actually has a link to search already, but it would be better to
have the search "box" as like index.md to be consistent.
<style> can be shared with index.md, but these pages currently
use https://doc.rust-lang.org/rust.css directly.
Fixes #14572 .
2018-10-08 00:33:19 +00:00
bors
b9adc3327e
Auto merge of #53517 - phungleson:fix-impl-from-for-error, r=frewsxcv
...
Add doc for impl From for Error
As part of issue #51430 (cc @skade).
The impl is very simple, let me know if we need to go into any details.
2018-10-07 22:00:04 +00:00
bors
b2d6ea98b0
Auto merge of #54810 - 1aim:unused-impl-trait, r=oli-obk
...
Fix dead code lint for functions using impl Trait
Fixes https://github.com/rust-lang/rust/issues/54754
This is a minimal fix that doesn't add any new queries or touches unnecessary code. Please nominate for beta backport if wanted.
2018-10-07 19:30:24 +00:00
bors
0ee045ea09
Auto merge of #54835 - oli-obk:mögen_konstante_funktionen_doch_bitte_endlich_stabil_sein, r=Centril
...
Stabilize `min_const_fn`
tracking issue: #53555
r? @Centril
2018-10-07 13:37:07 +00:00
Corey Farwell
b5c64e2e26
Clarify docs for when binary_search has many matches.
...
Fixes https://github.com/rust-lang/rust/issues/51817 .
2018-10-07 08:46:22 -04:00
bors
5a6f122126
Auto merge of #54813 - petrochenkov:uilocale, r=alexcrichton
...
Fix two UI tests with locale-dependent output
Closes https://github.com/rust-lang/rust/issues/54719
2018-10-07 11:10:39 +00:00
bors
987a50bab3
Auto merge of #54823 - euclio:needs-test, r=alexcrichton
...
Add tests for some E-needstest issues
Fixes #28134 .
Fixes #24338 .
Fixes #29743 .
2018-10-07 08:32:19 +00:00