Josh Stone
9b3583375d
Document the order of {Vec,VecDeque,String}::retain
...
It's natural for `retain` to work in order from beginning to end, but
this wasn't actually documented to be the case. If we actually promise
this, then the caller can do useful things like track the index of each
element being tested, as [discussed in the forum][1]. This is now
documented for `Vec`, `VecDeque`, and `String`.
[1]: https://users.rust-lang.org/t/vec-retain-by-index/27697
`HashMap` and `HashSet` also have `retain`, and the `hashbrown`
implementation does happen to use a plain `iter()` order too, but it's
not certain that this should always be the case for these types.
2019-04-29 18:32:05 -07:00
bors
00859e3e65
Auto merge of #60377 - Centril:rollup-42fxe9u, r=Centril
...
Rollup of 9 pull requests
Successful merges:
- #59946 (Fix equivalent string in escape_default docs)
- #60256 (Option::flatten)
- #60305 (hir: remove LoweredNodeId)
- #60334 (Stabilized vectored IO)
- #60353 (Add test not to forget resolved ICE)
- #60356 (Stabilize str::as_mut_ptr)
- #60358 (Clarify the short explanation of E0207)
- #60359 (resolve: Consider erroneous imports used to avoid duplicate diagnostics)
- #60360 (Add test case for labeled break in const assignment)
Failed merges:
r? @ghost
2019-04-29 20:40:49 +00:00
Mazdak Farrokhzad
04942105ef
Rollup merge of #60360 - rasendubi:const-labeled-break, r=Centril
...
Add test case for labeled break in const assignment
Fixes #51350 .
2019-04-29 22:22:46 +02:00
Mazdak Farrokhzad
4369f03620
Rollup merge of #60359 - petrochenkov:imperruse, r=estebank
...
resolve: Consider erroneous imports used to avoid duplicate diagnostics
Supersedes https://github.com/rust-lang/rust/pull/60295
Fixes https://github.com/rust-lang/rust/issues/48244
r? @estebank
2019-04-29 22:22:45 +02:00
Mazdak Farrokhzad
49946dd1b6
Rollup merge of #60358 - nickolay:patch-1, r=GuillaumeGomez
...
Clarify the short explanation of E0207
After being greatly improved in #33692 , https://doc.rust-lang.org/error-index.html#E0207 uses terminology from the related RFC, which is different from the [reference](https://doc.rust-lang.org/reference/items/implementations.html ), e.g. "self type" instead of "implementing type" and "trait reference" instead of "implemented trait".
It probably makes no difference to an experienced reader, but for a newbie like me it added to the confusion as you can't look up the definition of the terms being used and can't be sure you've guessed correctly...
I would also move the link to RFC to the top, as it seems to be the only doc that attempts to explain what the third criteria entails), but it seems to go against the accepted style.
2019-04-29 22:22:44 +02:00
Mazdak Farrokhzad
c9b70144a3
Rollup merge of #60356 - JohnTitor:stabilize-as-mut-ptr, r=Centril
...
Stabilize str::as_mut_ptr
Closes #58215
2019-04-29 22:22:42 +02:00
Mazdak Farrokhzad
3091961621
Rollup merge of #60353 - JohnTitor:add-test, r=Centril
...
Add test not to forget resolved ICE
closes #55499
I added the example as a test.
r? @pnkfelix
2019-04-29 22:22:41 +02:00
Mazdak Farrokhzad
ead8d81301
Rollup merge of #60334 - sfackler:stable-iovec, r=alexcrichton
...
Stabilized vectored IO
This renames `std::io::IoVec` to `std::io::IoSlice` and
`std::io::IoVecMut` to `std::io::IoSliceMut`, and stabilizes
`std::io::IoSlice`, `std::io::IoSliceMut`,
`std::io::Read::read_vectored`, and `std::io::Write::write_vectored`.
Closes #58452
r? @alexcrichton
2019-04-29 22:22:40 +02:00
Mazdak Farrokhzad
67b7f5779d
Rollup merge of #60305 - ljedrz:remove_LoweredNodeId, r=Zoxc
...
hir: remove LoweredNodeId
It seems that we no longer need it, because nowadays we just want the `HirId` most of the time.
2019-04-29 22:22:38 +02:00
Mazdak Farrokhzad
bdf3a01065
Rollup merge of #60256 - ethanboxx:master, r=alexcrichton
...
Option::flatten
This PR makes this possible.
```rust
assert_eq!(Some(6), Some(Some(6)).flatten());
assert_eq!(Some(6), Some(Some(6)).into());
```
2019-04-29 22:22:36 +02:00
Mazdak Farrokhzad
eb3c53071a
Rollup merge of #59946 - mernen:patch-2, r=ehuss
...
Fix equivalent string in escape_default docs
This newline should be escaped.
2019-04-29 22:22:34 +02:00
bors
a55c2eb325
Auto merge of #60355 - Manishearth:clippyup, r=centril
...
Update clippy
r? @centril
2019-04-29 17:44:15 +00:00
Manish Goregaokar
505cae2a76
Update clippy
2019-04-29 08:48:17 -07:00
bors
96d565be01
Auto merge of #60039 - rasendubi:assert-trailing-junk, r=alexcrichton
...
Make assert! ensure the macro is parsed completely
Fixes https://github.com/rust-lang/rust/issues/60024
2019-04-29 14:50:17 +00:00
ljedrz
d536ec4d39
hir: remove LoweredNodeId
2019-04-29 12:12:11 +02:00
bors
00acb7b243
Auto merge of #60364 - JohnTitor:stabilize-const-needs-drop, r=oli-obk
...
const-stabilize: std::mem::needs_drop
Closes #51929
r? @oli-obk
2019-04-29 09:48:11 +00:00
bors
1b6caa7cd6
Auto merge of #60338 - petrochenkov:notidy, r=varkor
...
tidy: Fix some more false positives for long URLs
A URL that's simply longer than 100 characters is ok regardless of context.
r? @varkor
2019-04-29 05:18:12 +00:00
Yuki OKUSHI
1c17489bfe
const-stabilize std::mem::needs_drop
2019-04-29 12:41:06 +09:00
bors
c7fcbfbf1f
Auto merge of #60182 - matklad:lexer-cleanup, r=petrochenkov
...
Lexer cleanup
another couple of tiny cleanups
2019-04-29 01:22:12 +00:00
bors
272000c94e
Auto merge of #60317 - flip1995:internal_lints, r=oli-obk
...
Internal lints: usage_of_qualified_ty & ty_pass_by_reference
Closes #59952
Implements internal lints:
- `USAGE_OF_QUALIFIED_TY`
- `TY_PASS_BY_REFERENCE`
r? @oli-obk
2019-04-28 20:42:09 +00:00
flip1995
2e5f0b3c49
Remove unused TyCtxt argument from allow_two_phase_borrow function
2019-04-28 22:17:15 +02:00
Alexey Shmalko
7cafacdd82
Add test case for labeled break in const assignment
...
See https://github.com/rust-lang/rust/issues/51350 for more information.
2019-04-28 23:12:35 +03:00
Nickolay Ponomarev
35f1c2fd13
Clarify the short explanation of E0207
...
- Use the terms from the reference <https://doc.rust-lang.org/reference/items/implementations.html >
- Add code snippets to explain the terms
2019-04-28 23:01:26 +03:00
Vadim Petrochenkov
fbbec76701
resolve: Consider erroneous imports used to avoid duplicate diagnostics
2019-04-28 22:36:57 +03:00
flip1995
86ed3116ba
Fix lint findings in librustdoc
2019-04-28 21:19:27 +02:00
flip1995
e1da67e69c
Fix lint findings in librustc_mir
2019-04-28 21:19:27 +02:00
flip1995
654d045b6f
Fix lint findings in librustc_traits
2019-04-28 21:19:27 +02:00
flip1995
1526f7a4ed
Fix lint findings in librustc_typeck
2019-04-28 21:19:26 +02:00
flip1995
02f7de1be5
Fix lint findings in librustc_metadata
2019-04-28 21:19:26 +02:00
flip1995
6c272b78dc
Fix lint findings in librustc
2019-04-28 21:19:26 +02:00
flip1995
8af35fe3f0
Update *.stderr files
2019-04-28 21:19:26 +02:00
flip1995
90ba09d299
Add tests
2019-04-28 21:19:25 +02:00
flip1995
747d288be4
Implement internal lints
...
- USAGE_OF_QUALIFIED_TY
- TY_PASS_BY_REFERENCE
2019-04-28 21:19:25 +02:00
Yuki OKUSHI
4c0f01cc27
Stabilize str::as_mut_ptr
2019-04-29 02:33:50 +09:00
bors
bdfdbcd44d
Auto merge of #60352 - Centril:const-incomplete-features, r=oli-obk
...
Float 'incomplete_features' out to a const for visibility
Float `let incomplete_features` out to a `const INCOMPLETE_FEATURES` and colocate near `active` features so that it is easier to find and edit.
r? @oli-obk
(use rollup)
2019-04-28 15:40:00 +00:00
Yuki OKUSHI
52356cad4e
Add test
2019-04-28 22:54:06 +09:00
Mazdak Farrokhzad
3f30082625
Float 'incomplete_features' out to a const for visibility.
2019-04-28 15:13:35 +02:00
bors
012c300706
Auto merge of #60351 - Centril:rollup-5xv3tka, r=Centril
...
Rollup of 4 pull requests
Successful merges:
- #60022 (Document `Item` type in `std::env::SplitPaths` iterator.)
- #60270 (rustc: Flag metadata compatible with multiple CGUs)
- #60325 (Document ast::ExprKind::Type)
- #60347 (Remove `-Z two-phase-borrows` and `-Z two-phase-beyond-autoref`)
Failed merges:
r? @ghost
2019-04-28 12:50:06 +00:00
Mazdak Farrokhzad
fe52f8e377
Rollup merge of #60347 - JohnTitor:remove-flags, r=matthewjasper
...
Remove `-Z two-phase-borrows` and `-Z two-phase-beyond-autoref`
fixes #60331
2019-04-28 14:17:12 +02:00
Mazdak Farrokhzad
634e2daaa5
Rollup merge of #60325 - Centril:doc-ast-exprkind-type, r=oli-obk
...
Document ast::ExprKind::Type
r? @oli-obk
2019-04-28 14:17:11 +02:00
Mazdak Farrokhzad
4711051b83
Rollup merge of #60270 - alexcrichton:metadata-multi-cgu, r=oli-obk
...
rustc: Flag metadata compatible with multiple CGUs
It looks like the `OutputType::Metadata` kind in the compiler was
misclassified in #38571 long ago by accident as incompatible with
codegen units and a single output file. This means that if you emit both
a linkable artifact and metadata it silently turns off multiple codegen
units unintentionally!
This commit corrects the situation to ensure that if `--emit metadata`
is used it doesn't implicitly disable multiple codegen units. This will
ensure we don't accidentally regress compiler performance when striving
to implement pipelined compilation!
2019-04-28 14:17:10 +02:00
Mazdak Farrokhzad
95abeb0705
Rollup merge of #60022 - nathankleyn:fix-issue-59543, r=Centril
...
Document `Item` type in `std::env::SplitPaths` iterator.
Previously there wasn't any documentation to show what the type of
`Item` was inside `std::env::SplitPaths`. Now, in the same format as
other examples of docs in `std` for `Iterator#Item`, we mention the
type.
This fixes #59543 .
r? @steveklabnik
2019-04-28 14:17:08 +02:00
Yuki OKUSHI
3a487ea977
Remove unnecessary function
2019-04-28 19:31:54 +09:00
bors
3418d2f508
Auto merge of #60346 - dima74:patch-1, r=GuillaumeGomez
...
Fix default value for setting "Auto-hide item methods' documentation"
If I open any documentation page in incognito mode (for example [for `Option` enum](https://doc.rust-lang.org/nightly/std/option/enum.Option.html )), then methods will be collapsed, though [on the settings page](https://doc.rust-lang.org/nightly/settings.html ) there will be displayed that "Auto-hide item methods' documentation" option is disabled.
If I understand correctly, property "Auto-hide item methods' documentation" [should be disabled by default](938d4ffe16/src/librustdoc/html/render.rs (L1969)
), so correct check would be `property === "true"`. This is consistent with other options:
Options which are enabled by default are compared to `"false"`
938d4ffe16/src/librustdoc/html/render.rs (L1965-L1968)
938d4ffe16/src/librustdoc/html/static/main.js (L2238)
938d4ffe16/src/librustdoc/html/static/main.js (L2321)
938d4ffe16/src/librustdoc/html/static/main.js (L2070)
Options which are disabled by default are compared to `"true"`
938d4ffe16/src/librustdoc/html/render.rs (L1970-L1972)
938d4ffe16/src/librustdoc/html/static/main.js (L1389)
938d4ffe16/src/librustdoc/html/static/main.js (L2334)
2019-04-28 09:58:59 +00:00
Yuki OKUSHI
542357f52a
Remove two-phase-beyond-autoref
2019-04-28 12:51:04 +09:00
Yuki OKUSHI
4eda15174e
Remove two-phase-borrows
2019-04-28 12:22:47 +09:00
bors
5f0dc0e1ff
Auto merge of #60333 - Centril:stabilize-iterator-copied, r=varkor
...
Stabilize Iterator::copied in 1.36.0
Per https://github.com/rust-lang/rust/issues/57127#issuecomment-487289429 .
Closes https://github.com/rust-lang/rust/issues/57127 .
r? @varkor
2019-04-28 01:46:11 +00:00
Dmitry Murzin
b6cfcd363b
Fix default value for setting "Auto-hide item methods' documentation"
2019-04-28 04:25:22 +03:00
bors
938d4ffe16
Auto merge of #60313 - cuviper:thinlto-import, r=alexcrichton
...
Limit internalization in LLVM 8 ThinLTO
Fixes #60184 .
r? @alexcrichton
2019-04-27 19:53:00 +00:00
Vadim Petrochenkov
2ae7b0c898
tidy: Fix false positives from long URLs
2019-04-27 20:29:27 +03:00