67215 Commits

Author SHA1 Message Date
Ulrik Sverdrup
a59a25d8e6 core: Implement rfold for Map, Cloned, Chain 2017-09-18 21:56:59 +02:00
Ulrik Sverdrup
31cf26a953 core: Implement fold / rfold for Rev
With both in place, we can cross them over in rev, and we give rfold
behaviour to .rev().fold() and so on.
2017-09-18 21:56:58 +02:00
Ulrik Sverdrup
91318c8cab core: Add DoubleEndedIterator::rfold
rfold is the reverse version of fold.

Fold allows iterators to implement a different (non-resumable) internal
iteration when it is more efficient than the external iteration
implemented through the next method. (Common examples are VecDeque and
.chain()).

Introduce rfold() so that the same customization is available for
reverse iteration. This is achieved by both adding the method, and by
having the Rev<I> adaptor connect Rev::rfold -> I::fold, Rev::fold -> I::rfold.
2017-09-18 21:55:38 +02:00
Ulrik Sverdrup
ffd171e47f core: Small fix in fold docs
Adaptors are things that take iterators and adapt them into other
iterators. With this definition, fold is just a usual method, because it
doesn't normally make an iterator.
2017-09-18 21:45:23 +02:00
bors
efceda220e Auto merge of #44104 - llogiq:lowercase-lints, r=nikomatsakis
add a lowercase suggestion to unknown_lints

I recently wrote some tests for a clippy lint, copied the (uppercase) lint name into my test file and forgot to toggle the case. This PR adds a suggestion that would have saved me 10 minutes of debugging, so it's likely a net win 🙂 . Also it adds a UI test for the `unknown_lints` lint.
2017-09-02 08:38:12 +00:00
bors
f861b6ee46 Auto merge of #44154 - alexcrichton:bump-bootstrap, r=Mark-Simulacrum
Bump to 1.22.0 and update boostrap compiler

Time to get a new nightly!
2017-09-01 16:39:31 +00:00
Alex Crichton
271c63c189 Update git2-rs to fix cross compiles 2017-09-01 07:56:44 -07:00
bors
ed532c0d93 Auto merge of #44238 - nrc:pulldown-warn, r=@QuietMisdreavus
Improve the Pulldown/hoedown warnings

cc #44229

r? @QuietMisdreavus
2017-09-01 13:56:22 +00:00
bors
a59a6d8a56 Auto merge of #44171 - eddyb:scope, r=nikomatsakis
Use hir::ItemLocalId instead of ast::NodeId in rustc::middle::region::CodeExtent.

This is an alternative to @michaelwoerister's #43887, changing `CodeExtent` instead of `ReScope`.

The benefit here is that the same `Region`s are used same-crate and cross-crate, while preserving the incremental recompilation properties of the stable `hir::ItemLocalId`.

Only places which needed to get back to the `ast::NodeId` from `CodeExtent` was its `span` method, used in error reporting - passing the `&RegionMaps` down allowed using `hir_to_node_id`.
`rustc::cfg` and `dataflow` also had to be converted to `hir::ItemLocalId` because of their interactions with `CodeExtent`, especially in `borrowck`, and from that we have 3 more `hir_to_node_id` calls: `cfg::graphviz` node labels, `borrowck` move reporting, and the `unconditional_recursion` lint.

Out of all of those, *only* the lint actually makes a decision (on whether code will compile) based on the result of the conversion, the others only use it to know how to print information to the user.
So I think we're safe to say that the bulk of the code working with a `CodeExtent` is fine with local IDs.

r? @nikomatsakis
2017-09-01 10:40:18 +00:00
Eduard-Mihai Burtescu
e4996ec49c rustc: use hir::ItemLocalId instead of ast::NodeId in CodeExtent. 2017-09-01 11:18:31 +03:00
Eduard-Mihai Burtescu
ea6aca7726 rustc: take TyCtxt and RegionMaps in CodeMap::span. 2017-09-01 11:17:03 +03:00
Eduard-Mihai Burtescu
28ddd7a4ef rustc: use hir::ItemLocalId instead of ast::NodeId in CFG. 2017-09-01 11:17:03 +03:00
Nick Cameron
1d6d09fa6d Fix tests
This is just undoing changes from #41991 because we are not running markdown rendering twice.
2017-09-01 20:07:04 +12:00
bors
45d31e7310 Auto merge of #44233 - Mark-Simulacrum:rollup, r=Mark-Simulacrum
Rollup of 10 pull requests

- Successful merges: #44192, #44199, #44202, #44203, #44205, #44207, #44209, #44223, #44230, #44231
- Failed merges:
2017-09-01 04:50:00 +00:00
Nick Cameron
fbb1612846 Windows line endings 2017-09-01 16:15:25 +12:00
Nick Cameron
abc0530279 Do a better job of eliding whitespace-only differences from warnings 2017-09-01 15:34:44 +12:00
Nick Cameron
1a8aac3f02 Improve the appearance of markdown warnings 2017-09-01 15:34:26 +12:00
Alex Crichton
9e5a7e9472 Bring back stage0 allocator logic on MSVC
I think there may still be bugs preventing its removal..
2017-08-31 18:20:52 -07:00
Nick Cameron
9ab20a3865 rustdoc: collect rendering warnings and print them in one place 2017-09-01 12:24:26 +12:00
Mark Simulacrum
81fc0e1150 Rollup merge of #44231 - lukaramu:patch-1, r=alexcrichton
Fix release notes on associated constants

Associated constants seem to be stable everywhere, not just in traits
2017-08-31 18:07:49 -06:00
Mark Simulacrum
88ee66d3c2 Rollup merge of #44230 - Phlosioneer:patch-1, r=sfackler
Fix typo in 1.20.0 release notes

str::from_boxed_utf8_unchecked rather than ste::
2017-08-31 18:07:48 -06:00
Mark Simulacrum
9c4bdd3b87 Rollup merge of #44223 - eddyb:symbol-from-str, r=jseyfried
Implement From<&str> for Symbol.

This lets us have `fn foo<S: Into<Symbol>>` bounds and accept both `&str` and existing `Symbol`s.

r? @jseyfried
2017-08-31 18:07:47 -06:00
Mark Simulacrum
3cd4ea3bfa Rollup merge of #44209 - frewsxcv:frewsxcv-addr-other-scenarios, r=alexcrichton
Expand docs of multi-address behavior of some UDP/TCP APIs.

Fixes https://github.com/rust-lang/rust/issues/22569.
2017-08-31 18:07:46 -06:00
Mark Simulacrum
4b2d568e72 Rollup merge of #44207 - durka:define-maps-fn, r=eddyb
add `fn` to syntax of rustc::ty::maps::define_maps

This is not a functional change, it just makes it possible to find a query by grepping without knowing that it's a query rather than a function.

I didn't pursue renaming everything from "map" to "query" because it seems to be a very invasive change. It would be a good test to exercise an IDE's renaming features.

Closes #44161

r? @eddyb
2017-08-31 18:07:45 -06:00
Mark Simulacrum
471f9894c9 Rollup merge of #44205 - frewsxcv:frewsxcv-addr-doc-fix, r=QuietMisdreavus
Fix typo in doc `ToSocketAddrs` example.

None
2017-08-31 18:07:44 -06:00
Mark Simulacrum
b66823fb4d Rollup merge of #44203 - cuviper:compiler-rt-test, r=Mark-Simulacrum
rustbuild: update the rust-src filter for compiler-rt

We wanted `src/compiler-rt/test` filtered from the `rust-src` package,
but that path is now `src/libcompiler_builtins/compiler-rt/test`.  This
saves over half of the installed rust-src size. (50MB -> 22MB)
2017-08-31 18:07:43 -06:00
Mark Simulacrum
f3b7197384 Rollup merge of #44202 - alexcrichton:xcrate-generators, r=arielb1
rustc: Fix reachability with cross-crate generators

Same solution as in f2df1857

Closes #44181
2017-08-31 18:07:42 -06:00
Mark Simulacrum
5f00b10b1c Rollup merge of #44199 - jakllsch:jakllsch-abcc6c4a-0caf-4d30-b336-39629c73d3f5, r=sfackler
bootstrap: add openssl configuration mapping for i686-unknown-netbsd
2017-08-31 18:07:41 -06:00
Mark Simulacrum
fd5a945727 Rollup merge of #44192 - GuillaumeGomez:sub-fields-style, r=QuietMisdreavus
Fix invalid display of enum sub-fields docs

Before:

<img width="1440" alt="screen shot 2017-08-30 at 23 17 00" src="https://user-images.githubusercontent.com/3050060/29895433-61f2bf8c-8dd9-11e7-83e8-cf1dca878100.png">

After:

<img width="1440" alt="screen shot 2017-08-30 at 23 16 48" src="https://user-images.githubusercontent.com/3050060/29895441-66dea042-8dd9-11e7-9576-11b0c770c70b.png">

cc @nox @rust-lang/docs
2017-08-31 18:07:40 -06:00
bors
69dbe6602d Auto merge of #43425 - matklad:lambda-restrictions, r=eddyb
Lambda expressions honor no struct literal restriction

This is a fix for #43412 if we decide that it is indeed a bug :)

closes #43412
2017-08-31 23:26:47 +00:00
Nick Cameron
a5f50a9dee Only emit warnings if the user is using Pulldown
Also checks for differences after eliminating whitespace-only diffs.

Renames get_html_diff
2017-09-01 11:22:18 +12:00
Lukas H
f575185f39 Fix release note on associated constants
Associated constants seem to be stable everywhere, not just in traits
2017-09-01 01:17:08 +02:00
Phlosioneer
945ba85019 Fix typo in 1.20.0 release notes
str::from_boxed_utf8_unchecked rather than ste::
2017-08-31 19:12:07 -04:00
Eduard-Mihai Burtescu
9988e798c0 Implement From<&str> for Symbol. 2017-08-31 23:23:52 +03:00
Andre Bogus
ba643fadfe add a lowercase suggestion to unknown_lints 2017-08-31 22:18:12 +02:00
Corey Farwell
0a716fdce2 Expand docs of multi-address behavior of some UDP/TCP APIs.
Fixes https://github.com/rust-lang/rust/issues/22569.
2017-08-31 11:24:34 -04:00
Alex Crichton
7a2a8d7d60 Update Cargo to 0.23.0 and our lockfile 2017-08-31 07:02:50 -07:00
Alex Crichton
9b9de27101 Bump to 1.22.0 2017-08-31 06:58:58 -07:00
Alex Crichton
2972687d10 Update bootstrap compiler
This commit updates the bootstrap compiler and clears out a number
of #[cfg(stage0)] annotations and related business
2017-08-31 06:58:58 -07:00
bors
97b01abf3d Auto merge of #41991 - GuillaumeGomez:rustdoc-html-diff, r=nrc
Add warnings when rustdoc html rendering differs
2017-08-31 08:52:03 +00:00
Guillaume Gomez
b501d00090 downgrade libgit2 2017-08-31 09:49:38 +02:00
Alex Burka
da302846ac add fn to syntax of rustc::ty::maps::define_maps 2017-08-31 01:07:47 -04:00
Corey Farwell
396fc111e1 Fix typo in doc ToSocketAddrs example. 2017-08-30 22:03:03 -04:00
Josh Stone
35f8a2065b rustbuild: update the rust-src filter for compiler-rt
We wanted `src/compiler-rt/test` filtered from the `rust-src` package,
but that path is now `src/libcompiler_builtins/compiler-rt/test`.  This
saves over half of the installed rust-src size. (50MB -> 22MB)
2017-08-30 18:20:59 -07:00
bors
890c87b643 Auto merge of #44186 - alexcrichton:rollup, r=alexcrichton
Rollup of 8 pull requests

- Successful merges: #44044, #44089, #44116, #44125, #44154, #44157, #44160, #44172
- Failed merges: #44162
2017-08-31 01:16:17 +00:00
Alex Crichton
b9fea42b7a Update libc to fix sparc compiles 2017-08-30 17:58:39 -07:00
Alex Crichton
41d3e83183 rustc: Fix reachability with cross-crate generators
Same solution as in f2df1857

Closes #44181
2017-08-30 17:32:21 -07:00
Jonathan A. Kollasch
0c2a9d6917 bootstrap: add openssl configuration mapping for i686-unknown-netbsd 2017-08-30 18:22:46 -05:00
Guillaume Gomez
bde0071d1d Fix invalid display of enum sub-fields docs 2017-08-30 23:16:25 +02:00
Alex Crichton
5c279a40ae Merge branch 'hide-trait-map' into rollup 2017-08-30 13:17:40 -07:00