Commit graph

93982 commits

Author SHA1 Message Date
Mazdak Farrokhzad
d67d1f24dc
Rollup merge of #58975 - jtdowney:iter_arith_traits_option, r=dtolnay
Implement `iter::Sum` and `iter::Product` for `Option`

This is similar to the existing implementation for `Result`. It will take each item into the accumulator unless a `None` is returned.

I based a lot of this on #38580. From that discussion it didn't seem like this addition would be too controversial or difficult. One thing I still don't understand is picking the values for the `stable` attribute. This is my first non-documentation PR for rust so I am open to any feedback on improvements.
2019-05-29 08:15:48 +02:00
bors
4b9d80325a Auto merge of #61296 - Centril:rollup-5ad68b0, r=Centril
Rollup of 9 pull requests

Successful merges:

 - #60742 (Allow const parameters in array sizes to be unified)
 - #60756 (Add better tests for hidden lifetimes in impl trait)
 - #60928 (Changes the type `mir::Mir` into `mir::Body`)
 - #61024 (tests: Centralize proc macros commonly used for testing)
 - #61157 (BufReader: In Seek impl, remove extra discard_buffer call)
 - #61195 (Special-case `.llvm` in mangler)
 - #61202 (Print PermissionExt::mode() in octal in Documentation Examples)
 - #61259 (Mailmap fixes)
 - #61273 (mention that MaybeUninit is a bit like Option)

Failed merges:

r? @ghost
2019-05-28 23:07:19 +00:00
David Tolnay
9f8d934f27
Bump Sum and Product for Option<T> to 1.37 2019-05-28 16:00:39 -07:00
Mazdak Farrokhzad
9121a73ab1
Rollup merge of #61273 - RalfJung:maybe-uninit, r=Centril
mention that MaybeUninit is a bit like Option
2019-05-29 00:20:06 +02:00
Mazdak Farrokhzad
2d01c91c30
Rollup merge of #61259 - JosephTLyons:mailmap-fixes, r=nikomatsakis
Mailmap fixes

I've made a few fixes and additions to the .mailmap file.

- I've added my information to it, as I noticed it was popping up twice at the [Thanks](https://thanks.rust-lang.org/rust/all-time/) website (I've made contributions to the Rust Book).
- I noticed that @carols10cents‘ information was popping up in multiple places at the [Thanks](https://thanks.rust-lang.org/rust/all-time/) website and when running `git shortlog -s -e > out.txt`, and fixed her information
- I alphabetized the list using Atom's [Sort Lines package](https://github.com/atom/sort-lines)

The output from before and after running `git shortlog -s -e > out.txt` for Carol:
<img width="708" alt="Carol Before" src="https://user-images.githubusercontent.com/19867440/58472843-2d8ca880-8115-11e9-9624-d31ed23ae9b5.png">
<img width="523" alt="Carol After" src="https://user-images.githubusercontent.com/19867440/58472844-2d8ca880-8115-11e9-95c6-80b17cc04790.png">

The output from before and after running `git shortlog -s -e > out.txt` for myself:

<img width="489" alt="Joseph After" src="https://user-images.githubusercontent.com/19867440/58472941-6e84bd00-8115-11e9-8266-1d7fcd53d0bc.png">
<img width="421" alt="Joseph Before" src="https://user-images.githubusercontent.com/19867440/58472943-6e84bd00-8115-11e9-9fd2-d7ace7e3d636.png">
2019-05-29 00:20:04 +02:00
Mazdak Farrokhzad
21684c07c7
Rollup merge of #61202 - oberien:permissionext-print-octal, r=varkor
Print PermissionExt::mode() in octal in Documentation Examples

Printing the file permission mode on unix systems in decimal feels unintuitive. Printing it in octal gives the expected form of e.g. `664`.
2019-05-29 00:20:01 +02:00
Mazdak Farrokhzad
dae331d921
Rollup merge of #61195 - davidtwco:seg-fault-mangler, r=eddyb
Special-case `.llvm` in mangler

Fixes #60925 and fixes #53912.

r? @michaelwoerister
cc @eddyb
2019-05-29 00:20:00 +02:00
Mazdak Farrokhzad
745af720bb
Rollup merge of #61157 - czipperz:BufReader-Seek-remove-extra-discard_buffer, r=nikomatsakis
BufReader: In Seek impl, remove extra discard_buffer call

As far as I can tell, this code does nothing.  I'm not sure why it even is there.
2019-05-29 00:19:58 +02:00
Mazdak Farrokhzad
bfe9080ea0
Rollup merge of #61024 - petrochenkov:proctest, r=nikomatsakis
tests: Centralize proc macros commonly used for testing

Many proc macros in `ui\proc-macro\auxiliary` were doing same things.
(I added a fair share of those myself.)

Now commonly used macros (empty, identity, etc) are collected in one place - `ui\proc-macro\auxiliary\test-macros.rs`.
2019-05-29 00:19:57 +02:00
Mazdak Farrokhzad
ee08261c8c
Rollup merge of #60928 - TheSirC:fix/60229, r=eddyb
Changes the type `mir::Mir` into `mir::Body`

Fixes part 1 of #60229 (previously attempted in #60242).

I stumbled upon the issue and it seems that the previous attempt at solving it was not merged. This is a second try more up-to-date.

The commit should have changed comments as well.
At the time of writting, it passes the tidy and check tool.
2019-05-29 00:19:55 +02:00
Mazdak Farrokhzad
e19a229c88
Rollup merge of #60756 - matthewjasper:extra-impl-trait-tests, r=nikomatsakis
Add better tests for hidden lifetimes in impl trait

cc #60670
2019-05-29 00:19:53 +02:00
Mazdak Farrokhzad
d85e256a87
Rollup merge of #60742 - varkor:fn-const-array-parameter, r=eddyb
Allow const parameters in array sizes to be unified

Fixes https://github.com/rust-lang/rust/issues/60632.
Fixes https://github.com/rust-lang/rust/issues/60744.
Fixes https://github.com/rust-lang/rust/pull/60923.
(The last commit should probably be viewed in isolation, as it just renames things from `type` to `kind`.)

r? @eddyb
2019-05-29 00:19:52 +02:00
Eduard-Mihai Burtescu
95013e612d syntax: bail out of find_width_of_character_at_span if the span doesn't start and end in the same file. 2019-05-29 00:27:42 +03:00
Eduard-Mihai Burtescu
3e5beb2c6f rustc: rename Mir to mir::Body in comments and to MIR in error strings. 2019-05-29 00:26:56 +03:00
varkor
6233d1fee5 Use assert_eq! instead of println! in tests 2019-05-28 21:35:20 +01:00
varkor
294916065a Fix nits 2019-05-28 21:35:20 +01:00
varkor
b3a13fdd13 Make sure array length diagnostic doesn't regress 2019-05-28 21:35:20 +01:00
varkor
56181cf8ab Correct pluralisation of tuple/array/associated type binding mismatch errors 2019-05-28 21:35:20 +01:00
varkor
854995313a Reintroduce TypeError::FixedArraySize 2019-05-28 21:35:20 +01:00
varkor
f13317ca2e Use Display rather than Debug printing for const mismatch 2019-05-28 21:35:20 +01:00
varkor
f865b7dda4 Update tests after pretty printing 2019-05-28 21:35:20 +01:00
varkor
cfa1f80cd9 Fix test after rebase 2019-05-28 21:35:20 +01:00
varkor
57ff5899d2 Add broken MIR regression tests 2019-05-28 21:35:20 +01:00
varkor
193b748d5f Remove FixedArraySize error 2019-05-28 21:35:20 +01:00
varkor
d5c6cb8778 Eagerly evaluate in super_relate_consts 2019-05-28 21:35:20 +01:00
varkor
908d97d03c Update test output 2019-05-28 21:34:42 +01:00
varkor
c94ba6382d Rename OpportunisticTypeResolver to OpportunisticVarResolver 2019-05-28 21:34:42 +01:00
varkor
55dcc20f9a Add tests for uninferred consts during codegen 2019-05-28 21:34:42 +01:00
varkor
4ad5c62550 Resolve consts in OpportunisticTypeResolver 2019-05-28 21:34:42 +01:00
varkor
5a585fe45e Add a test for a function taking a const param array as an argument 2019-05-28 21:34:42 +01:00
varkor
73f7e426be Relate identical parameters in array lengths 2019-05-28 21:34:42 +01:00
David Wood
9c34473ecf
Special-case .llvm in mangler to fix segfaults
This commit special cases `.llvm` in the mangler to print `.llvm$6d$`
instead. This will avoid segfaults when names in a user's Rust code are
`llvm`.
2019-05-28 20:26:51 +01:00
bors
7212685837 Auto merge of #61274 - Centril:rollup-23dekk4, r=Centril
Rollup of 4 pull requests

Successful merges:

 - #61123 (Allow to specify profiling data output directory as -Zself-profile argument.)
 - #61159 (split core::ptr module into multiple files)
 - #61164 (rename Scalar::Bits to Scalar::Raw and bits field to data)
 - #61250 (Remove special case for *ios* builds in run-make-fulldeps/print-target-list Makefile)

Failed merges:

r? @ghost
2019-05-28 17:38:01 +00:00
Claude-Alban RANÉLY-VERGÉ-DÉPRÉ
6e5e0daff2 Changes the type mir::Mir into mir::Body
The commit should have changed comments as well.
At the time of writting, it passes the tidy and check tool.

Revisions asked by eddyb :
- Renamed of all the occurences of {visit/super}_mir
- Renamed test structures `CachedMir` to `Cached`

Fixing the missing import on `AggregateKind`
2019-05-28 19:17:51 +02:00
Ralf Jung
2bf80cf6ca
Update src/libcore/mem.rs
Co-Authored-By: Mazdak Farrokhzad <twingoow@gmail.com>
2019-05-28 18:20:24 +02:00
Mazdak Farrokhzad
e06547fe8d
Rollup merge of #61250 - rye:print-target-list--rm-ios-case, r=alexcrichton
Remove special case for *ios* builds in run-make-fulldeps/print-target-list Makefile

Previous `TODO` comment in this file mentions [an issue that was closed](https://github.com/rust-lang/rust/issues/29812), and I was able to confirm locally that provided code in that issue no longer produces an ICE. Discussion on that issue seems to indicate this code was no longer needed as of 1.12.0.

I removed the `*ios*` branch from this `case` statement as it may cause confusion, then removed the case statement entirely as it only had a wildcard branch.
2019-05-28 18:15:41 +02:00
Mazdak Farrokhzad
16ef483b79
Rollup merge of #61164 - RalfJung:scalar, r=oli-obk
rename Scalar::Bits to Scalar::Raw and bits field to data

Also use this opportunity to seal some abstraction leaks (other modules constructing `Scalar::Bits` directly instead of using a constructor).

r? @oli-obk
2019-05-28 18:15:39 +02:00
Mazdak Farrokhzad
f91a3abade
Rollup merge of #61159 - RalfJung:ptr, r=alexcrichton
split core::ptr module into multiple files

Cc @Centril
2019-05-28 18:15:38 +02:00
Mazdak Farrokhzad
251ca03ba3
Rollup merge of #61123 - michaelwoerister:self-profile-dir, r=wesleywiser
Allow to specify profiling data output directory as -Zself-profile argument.

The PR also makes `rustc` include the crate-name (if already available) in the output file name.

r? @wesleywiser

At some point we should add some basic tests for `-Zself-profile`.
2019-05-28 18:15:35 +02:00
Ralf Jung
ce7689293b mention that MaybeUninit is a bit like Option 2019-05-28 18:04:37 +02:00
bors
a6ce9b3123 Auto merge of #61246 - oli-obk:clippy, r=oli-obk
Update clippy submodule

fixes #61240
2019-05-28 14:42:27 +00:00
Michael Woerister
64ee32e53a Rename PgoGenerate to something more general. 2019-05-28 16:14:34 +02:00
Michael Woerister
53f1c38734 Allow to specify profiling data output directory as -Zself-profile argument. 2019-05-28 16:14:34 +02:00
bors
7da118581c Auto merge of #61258 - Centril:rollup-l2mof9t, r=Centril
Rollup of 9 pull requests

Successful merges:

 - #61084 (Clarify docs for unreachable! macro)
 - #61220 (Added error message for E0284)
 - #61227 (Use .await syntax instead of await!)
 - #61230 (avoid creating Boxes of uninitalized values in RawVec)
 - #61237 (Updated the Iterator docs with information about overriding methods.)
 - #61241 (Check place iterative)
 - #61242 (Make dest_needs_borrow iterate instead of recurse)
 - #61247 (Make eval_place iterate instead of recurse)
 - #61248 (Use Place::local)

Failed merges:

r? @ghost
2019-05-28 11:50:14 +00:00
Joseph Lyons
b0c3385a63 Alphabetized lines with Atom's Sort Lines package
https://github.com/atom/sort-lines
2019-05-28 06:42:47 -04:00
Joseph Lyons
2a6490c7ff Adding mailmap for myself 2019-05-28 06:40:41 -04:00
Joseph Lyons
7bba62c309 Fixing mailmap for Carol 2019-05-28 06:40:16 -04:00
Oliver Scherer
a1da365eb3 Update clippy submodule 2019-05-28 12:03:21 +02:00
Mazdak Farrokhzad
149c53fc44
Rollup merge of #61248 - spastorino:use-place-local-fn, r=oli-obk
Use Place::local

r? @oli-obk
2019-05-28 11:49:09 +02:00
Mazdak Farrokhzad
1dc9bbbffe
Rollup merge of #61247 - spastorino:eval-place-iterate, r=wesleywiser
Make eval_place iterate instead of recurse

r? @oli-obk
2019-05-28 11:49:08 +02:00