]> git.lizzy.rs Git - rust.git/log
rust.git
4 years agoRollup merge of #67285 - ohadravid:indicate-origin-of-where-type-parameter, r=estebank
Mazdak Farrokhzad [Fri, 20 Dec 2019 11:17:23 +0000 (12:17 +0100)]
Rollup merge of #67285 - ohadravid:indicate-origin-of-where-type-parameter, r=estebank

Indicate origin of where type parameter for uninferred types

Based on #65951 (which is not merge yet), fixes #67277.

This PR improves a little the diagnostic for code like:

```
 async fn foo() {
     bar().await;
}

 async fn bar<T>() -> () {}
```

by showing:
```
error[E0698]: type inside `async fn` body must be known in this context
 --> unresolved_type_param.rs:9:5
  |
9 |     bar().await;
  |     ^^^ cannot infer type for type parameter `T` declared on the function `bar`
  |
...
```
(The
```
declared on the function `bar`
```
part is new)

A small side note: `Vec` and `slice` seem to resist this change, because querying `item_name()` panics, and `get_opt_name()` returns `None`.

r? @estebank

4 years agoRollup merge of #67219 - jsgf:command-argv0-debug, r=joshtriplett
Mazdak Farrokhzad [Fri, 20 Dec 2019 11:17:22 +0000 (12:17 +0100)]
Rollup merge of #67219 - jsgf:command-argv0-debug, r=joshtriplett

Fix up Command Debug output when arg0 is specified.

PR https://github.com/rust-lang/rust/pull/66512 added the ability to set argv[0] on
Command. As a side effect, it changed the Debug output to print both the program and
argv[0], which in practice results in stuttery output (`"echo" "echo" "foo"`).

This PR reverts the behaviour to the the old one, so that the command is only printed
once - unless arg0 has been set. In that case it emits `"[command]" "arg0" "arg1" ...`.

4 years agoRollup merge of #67127 - estebank:disambiguate-suggestion, r=varkor
Mazdak Farrokhzad [Fri, 20 Dec 2019 11:17:20 +0000 (12:17 +0100)]
Rollup merge of #67127 - estebank:disambiguate-suggestion, r=varkor

Use structured suggestion for disambiguating method calls

Fix #65635.

4 years agoRollup merge of #66755 - mark-i-m:const-vec-new, r=ecstatic-morse
Mazdak Farrokhzad [Fri, 20 Dec 2019 11:17:18 +0000 (12:17 +0100)]
Rollup merge of #66755 - mark-i-m:const-vec-new, r=ecstatic-morse

Remove a const-if-hack in RawVec

r? @ecstatic-morse

cc @Centril

4 years agoAuto merge of #67443 - Mark-Simulacrum:toolstate-no-commit-newline, r=Mark-Simulacrum
bors [Fri, 20 Dec 2019 03:33:07 +0000 (03:33 +0000)]
Auto merge of #67443 - Mark-Simulacrum:toolstate-no-commit-newline, r=Mark-Simulacrum

Remove newline from commit in toolstate

4 years agoRemove newline from commit in toolstate
Mark Rousskov [Fri, 20 Dec 2019 03:30:04 +0000 (22:30 -0500)]
Remove newline from commit in toolstate

4 years agoAuto merge of #67440 - Mark-Simulacrum:rollup-z59a7ky, r=Mark-Simulacrum
bors [Thu, 19 Dec 2019 23:02:09 +0000 (23:02 +0000)]
Auto merge of #67440 - Mark-Simulacrum:rollup-z59a7ky, r=Mark-Simulacrum

Rollup of 6 pull requests

Successful merges:

 - #67253 (Add more delegations to the fmt docs and add doctests)
 - #67281 (add string.insert benchmarks)
 - #67351 (Set release channel on non-dist builders)
 - #67421 (Fix internal documentation typo)
 - #67432 (Fix toolstate history format)
 - #67436 (Correct the todo! stabilization version)

Failed merges:

r? @ghost

4 years agoRollup merge of #67436 - NieDzejkob:todo-stabilization-fix, r=alexcrichton
Mark Rousskov [Thu, 19 Dec 2019 22:53:58 +0000 (17:53 -0500)]
Rollup merge of #67436 - NieDzejkob:todo-stabilization-fix, r=alexcrichton

Correct the todo! stabilization version

None

4 years agoRollup merge of #67432 - Mark-Simulacrum:fix-toolstate, r=Centril
Mark Rousskov [Thu, 19 Dec 2019 22:53:57 +0000 (17:53 -0500)]
Rollup merge of #67432 - Mark-Simulacrum:fix-toolstate, r=Centril

Fix toolstate history format

We were inserting *before* the existing newline, so we should prepend it
not append it to our inserted string.

4 years agoRollup merge of #67421 - LeSeulArtichaut:patch-1, r=Centril
Mark Rousskov [Thu, 19 Dec 2019 22:53:56 +0000 (17:53 -0500)]
Rollup merge of #67421 - LeSeulArtichaut:patch-1, r=Centril

Fix internal documentation typo

r? @Centril

4 years agoRollup merge of #67351 - Mark-Simulacrum:always-channel, r=pietroalbini
Mark Rousskov [Thu, 19 Dec 2019 22:53:54 +0000 (17:53 -0500)]
Rollup merge of #67351 - Mark-Simulacrum:always-channel, r=pietroalbini

Set release channel on non-dist builders

Toolstate publication only runs if the channel is "nightly" and
previously the toolstate builders did not know that the channel was
nightly (since they are not dist builders).

A look through bootstrap seems to indicate that nothing should directly
depend on the channel being set to `-dev` on the test builders, though
this may cause some problems with UI tests (if for some reason they're
dumping the channel into stderr), but we cannot find evidence of such so
hopefully this is fine.

r? @pietroalbini

4 years agoRollup merge of #67281 - llogiq:nonoverlapping-insert, r=alexcrichton
Mark Rousskov [Thu, 19 Dec 2019 22:53:53 +0000 (17:53 -0500)]
Rollup merge of #67281 - llogiq:nonoverlapping-insert, r=alexcrichton

add string.insert benchmarks

This adds benchmarks for `String::insert` and `String::insert_str`

4 years agoRollup merge of #67253 - elichai:2019-12-fmt, r=Dylan-DPC
Mark Rousskov [Thu, 19 Dec 2019 22:53:52 +0000 (17:53 -0500)]
Rollup merge of #67253 - elichai:2019-12-fmt, r=Dylan-DPC

Add more delegations to the fmt docs and add doctests

HI,
this is a continuation to #67021
I replaced the `Debug` example with one that use the `Debug*` helpers so that padding etc will work too.
I also added asserts for the doctests as @RalfJung asked :)

The only thing I left with the `write!` macro is the `Display` example as I didn't know if there's a better way to do that.

r? @QuietMisdreavus

4 years agoFix toolstate history format
Mark Rousskov [Thu, 19 Dec 2019 18:48:36 +0000 (13:48 -0500)]
Fix toolstate history format

We were inserting *before* the existing newline, so we should prepend it
not append it to our inserted string.

4 years agoCorrect the todo! stabilization version
Jakub Kądziołka [Thu, 19 Dec 2019 18:09:20 +0000 (19:09 +0100)]
Correct the todo! stabilization version

4 years agoFix documentation typo
LeSeulArtichaut [Thu, 19 Dec 2019 11:58:42 +0000 (12:58 +0100)]
Fix documentation typo

4 years agoAuto merge of #67419 - Centril:rollup-v7b0ypv, r=Centril
bors [Thu, 19 Dec 2019 11:33:00 +0000 (11:33 +0000)]
Auto merge of #67419 - Centril:rollup-v7b0ypv, r=Centril

Rollup of 8 pull requests

Successful merges:

 - #67189 (Unify binop wording)
 - #67270 (std: Implement `LineWriter::write_vectored`)
 - #67286 (Fix the configure.py TOML field for a couple LLVM options)
 - #67321 (make htons const fn)
 - #67382 (Remove some unnecessary `ATTR_*` constants.)
 - #67389 (Remove `SO_NOSIGPIPE` dummy variable on platforms that don't use it.)
 - #67394 (Remove outdated references to @T from comments)
 - #67406 (Suggest associated type when the specified one cannot be found)

Failed merges:

r? @ghost

4 years agoRollup merge of #67406 - ohadravid:suggest-assoc-type, r=estebank
Mazdak Farrokhzad [Thu, 19 Dec 2019 09:30:01 +0000 (10:30 +0100)]
Rollup merge of #67406 - ohadravid:suggest-assoc-type, r=estebank

Suggest associated type when the specified one cannot be found

Fixes #67386, so code like this:
```
use std::ops::Deref;

fn homura<T: Deref<Trget = i32>>(_: T) {}

fn main() {}
```

results in:
```
error[E0220]: associated type `Trget` not found for `std::ops::Deref`
 --> type-binding.rs:6:20
  |
6 | fn homura<T: Deref<Trget = i32>>(_: T) {}
  |                    ^^^^^^^^^^^ help: there is an associated type with a similar name: `Target`

error: aborting due to previous error
```

(The `help` is new)

I used an `all_candidates: impl Fn() -> Iterator<...>` instead of `collect`ing to avoid the cost of allocating the Vec when no errors are found, at the expense of a little added complexity.

r? @estebank

4 years agoRollup merge of #67394 - matthew-healy:update-libsyntax-ptr-docs, r=Dylan-DPC
Mazdak Farrokhzad [Thu, 19 Dec 2019 09:30:00 +0000 (10:30 +0100)]
Rollup merge of #67394 - matthew-healy:update-libsyntax-ptr-docs, r=Dylan-DPC

Remove outdated references to @T from comments

Closes #67341.

This removes all references to `@T` from the comment in libsyntax/ptr.rs.

4 years agoRollup merge of #67389 - reitermarkus:dummy-variable, r=shepmaster
Mazdak Farrokhzad [Thu, 19 Dec 2019 09:29:59 +0000 (10:29 +0100)]
Rollup merge of #67389 - reitermarkus:dummy-variable, r=shepmaster

Remove `SO_NOSIGPIPE` dummy variable on platforms that don't use it.

4 years agoRollup merge of #67382 - nnethercote:rm-unnecessary-ATTR-constants, r=michaelwoerister
Mazdak Farrokhzad [Thu, 19 Dec 2019 09:29:57 +0000 (10:29 +0100)]
Rollup merge of #67382 - nnethercote:rm-unnecessary-ATTR-constants, r=michaelwoerister

Remove some unnecessary `ATTR_*` constants.

r? @michaelwoerister

4 years agoRollup merge of #67321 - lzutao:htons, r=dtolnay
Mazdak Farrokhzad [Thu, 19 Dec 2019 09:29:56 +0000 (10:29 +0100)]
Rollup merge of #67321 - lzutao:htons, r=dtolnay

make htons const fn

This may partially help #67315.

4 years agoRollup merge of #67286 - cuviper:configure-llvm, r=Dylan-DPC
Mazdak Farrokhzad [Thu, 19 Dec 2019 09:29:54 +0000 (10:29 +0100)]
Rollup merge of #67286 - cuviper:configure-llvm, r=Dylan-DPC

Fix the configure.py TOML field for a couple LLVM options

The actual fields in `config.toml.example` have dashes, not underscores.

4 years agoRollup merge of #67270 - alexcrichton:write-more-line-writer, r=sfackler
Mazdak Farrokhzad [Thu, 19 Dec 2019 09:29:53 +0000 (10:29 +0100)]
Rollup merge of #67270 - alexcrichton:write-more-line-writer, r=sfackler

std: Implement `LineWriter::write_vectored`

This commit implements the `write_vectored` method of the `LineWriter`
type. First discovered in bytecodealliance/wasmtime#629 the
`write_vectored` method of `Stdout` bottoms out here but only ends up
writing the first buffer due to the default implementation of
`write_vectored`.

Like `BufWriter`, however, `LineWriter` can have a non-default
implementation of `write_vectored` which tries to preserve the
vectored-ness as much as possible. Namely we can have a vectored write
for everything before the newline and everything after the newline if
all the stars align well.

Also like `BufWriter`, though, special care is taken to ensure that
whenever bytes are written we're sure to signal success since that
represents a "commit" of writing bytes.

4 years agoRollup merge of #67189 - LeSeulArtichaut:binop-wording, r=estebank
Mazdak Farrokhzad [Thu, 19 Dec 2019 09:29:51 +0000 (10:29 +0100)]
Rollup merge of #67189 - LeSeulArtichaut:binop-wording, r=estebank

Unify binop wording

Closes #60497
r? @estebank

4 years agoSet release channel on non-dist builders
Mark Rousskov [Mon, 16 Dec 2019 13:52:50 +0000 (08:52 -0500)]
Set release channel on non-dist builders

Toolstate publication only runs if the channel is "nightly" and
previously the toolstate builders did not know that the channel was
nightly (since they are not dist builders).

A look through bootstrap seems to indicate that nothing should directly
depend on the channel being set to `-dev` on the test builders, though
this may cause some problems with UI tests (if for some reason they're
dumping the channel into stderr), but we cannot find evidence of such so
hopefully this is fine.

4 years agono need to bootstrap
Mark Mansi [Wed, 18 Dec 2019 18:04:47 +0000 (12:04 -0600)]
no need to bootstrap

4 years agoadd fixme
Mark Mansi [Tue, 26 Nov 2019 17:06:53 +0000 (11:06 -0600)]
add fixme

4 years agofix import
Mark Mansi [Tue, 26 Nov 2019 17:03:53 +0000 (11:03 -0600)]
fix import

4 years agouse usize::MAX instead of !0
Mark Mansi [Tue, 26 Nov 2019 00:14:46 +0000 (18:14 -0600)]
use usize::MAX instead of !0

4 years agoremove a bit more hackery
Mark Mansi [Mon, 25 Nov 2019 21:29:57 +0000 (15:29 -0600)]
remove a bit more hackery

4 years agoRemove a const-if-hack in RawVec
Mark Mansi [Mon, 25 Nov 2019 20:44:19 +0000 (14:44 -0600)]
Remove a const-if-hack in RawVec

4 years agoAuto merge of #67402 - Mark-Simulacrum:stage0-step, r=alexcrichton
bors [Wed, 18 Dec 2019 22:03:29 +0000 (22:03 +0000)]
Auto merge of #67402 - Mark-Simulacrum:stage0-step, r=alexcrichton

Switch bootstrap to 1.41

This updates the version number for master to 1.42 and switches the bootstrap compiler to yesterday's beta. Fallout of cfg(bootstrap) changes is also dealt with.

4 years agoSuggest associated type when the specified one cannot be found
Ohad Ravid [Wed, 18 Dec 2019 19:35:18 +0000 (20:35 +0100)]
Suggest associated type when the specified one cannot be found

4 years agoFix compiletest fallout from stage0 bump
Mark Rousskov [Wed, 18 Dec 2019 18:28:14 +0000 (13:28 -0500)]
Fix compiletest fallout from stage0 bump

4 years agoPropagate cfg bootstrap
Mark Rousskov [Wed, 18 Dec 2019 17:00:59 +0000 (12:00 -0500)]
Propagate cfg bootstrap

4 years agoBump stage0
Mark Rousskov [Wed, 18 Dec 2019 16:51:31 +0000 (11:51 -0500)]
Bump stage0

4 years agoAuto merge of #67379 - Mark-Simulacrum:revert-par-4-default, r=Mark-Simulacrum
bors [Wed, 18 Dec 2019 11:04:07 +0000 (11:04 +0000)]
Auto merge of #67379 - Mark-Simulacrum:revert-par-4-default, r=Mark-Simulacrum

Revert enabling parallelism by default

We will re-land a similar patch at a future date but for now we should get a nightly
released in a few hours with the parallel patch, so this should be
reverted to make sure that the next nightly is not parallel-enabled.

r? @ghost

4 years agoRemove `SO_NOSIGPIPE` dummy variable on platforms that don't use it.
Markus Reiter [Wed, 18 Dec 2019 07:46:00 +0000 (08:46 +0100)]
Remove `SO_NOSIGPIPE` dummy variable on platforms that don't use it.

4 years agoAdd benchmarks for string::insert(_str)
Andre Bogus [Fri, 13 Dec 2019 18:14:23 +0000 (19:14 +0100)]
Add benchmarks for string::insert(_str)

4 years agoRemove some unnecessary `ATTR_*` constants.
Nicholas Nethercote [Mon, 28 Oct 2019 03:02:59 +0000 (14:02 +1100)]
Remove some unnecessary `ATTR_*` constants.

4 years agoRemove outdated references to @T from comments
Matthew Healy [Tue, 17 Dec 2019 22:41:55 +0000 (23:41 +0100)]
Remove outdated references to @T from comments

4 years agoRevert "Auto merge of #67362 - Mark-Simulacrum:par-4-default, r=alexcrichton"
Mark Rousskov [Tue, 17 Dec 2019 21:28:33 +0000 (16:28 -0500)]
Revert "Auto merge of #67362 - Mark-Simulacrum:par-4-default, r=alexcrichton"

This reverts commit 3ed3b8bb7b100afecf7d5f52eafbb70fec27f537, reversing
changes made to 99b89533d4cdf7682ea4054ad0ee36c351d05df1.

We will reland a similar patch at a future date but for now we should get a nightly
released in a few hours with the parallel patch, so this should be
reverted to make sure that the next nightly is not parallel-enabled.

4 years agoAuto merge of #67362 - Mark-Simulacrum:par-4-default, r=alexcrichton
bors [Tue, 17 Dec 2019 17:56:13 +0000 (17:56 +0000)]
Auto merge of #67362 - Mark-Simulacrum:par-4-default, r=alexcrichton

4 thread parallelism by default

The Session default here is super unusual but seems to both compile and do what we expect as best as I can tell.

4 years agoDisable cargo tests for now
Mark Rousskov [Tue, 17 Dec 2019 17:47:10 +0000 (12:47 -0500)]
Disable cargo tests for now

These depend on rustc being bug-free and it looks like that's not
currently entirely the case (e.g., we know of at least one bug that
introduces nondeterminism).

4 years agoMove AtomicU64 usage to AtomicUsize
Mark Rousskov [Tue, 17 Dec 2019 13:55:54 +0000 (08:55 -0500)]
Move AtomicU64 usage to AtomicUsize

4 years agoAlways build and ship parallel-enabled compilers
Mark Rousskov [Mon, 16 Dec 2019 21:27:35 +0000 (16:27 -0500)]
Always build and ship parallel-enabled compilers

This also removes the unused NO_PARALLEL_COMPILER flag; if we want that
functionality we can readd it but this makes sure we really are parallel
everywhere.

This also patches a test that has differing output in the parallel case
(hopefully deterministically so!).

4 years agoChange the default thread count to min(4, vCPUs)
Mark Rousskov [Mon, 16 Dec 2019 21:23:07 +0000 (16:23 -0500)]
Change the default thread count to min(4, vCPUs)

This avoids the problems of high thread counts (i.e., contention in the
kernel on the jobserver pipe due to thundering herd of readers) while
stil giving rustc some parallelism to work with.

4 years agoMove command-related tests into command/
Jeremy Fitzhardinge [Thu, 12 Dec 2019 05:39:57 +0000 (21:39 -0800)]
Move command-related tests into command/

4 years agoFix up Command Debug output when arg0 is specified.
Jeremy Fitzhardinge [Wed, 11 Dec 2019 07:32:52 +0000 (23:32 -0800)]
Fix up Command Debug output when arg0 is specified.

PR https://github.com/rust-lang/rust/pull/66512 added the ability to set argv[0] on
Command. As a side effect, it changed the Debug output to print both the program and
argv[0], which in practice results in stuttery output ("echo echo foo").

This PR reverts the behaviour to the the old one, so that the command is only printed
once - unless arg0 has been set. In that case it emits "[command] arg0 arg1 ...".

4 years agoAuto merge of #67356 - Centril:rollup-paaw3ju, r=Centril
bors [Mon, 16 Dec 2019 18:55:07 +0000 (18:55 +0000)]
Auto merge of #67356 - Centril:rollup-paaw3ju, r=Centril

Rollup of 8 pull requests

Successful merges:

 - #67249 (Improve code generated for `starts_with(<literal char>)`)
 - #67308 (Delete flaky test net::tcp::tests::fast_rebind)
 - #67318 (Improve typeck & lowering docs for slice patterns)
 - #67322 (use Self alias in place of macros)
 - #67323 (make transparent enums more ordinary)
 - #67336 (Fix JS error when loading page with search)
 - #67344 (.gitignore: Don't ignore a file that exists in the repository)
 - #67349 (Minor: update Unsize docs for dyn syntax)

Failed merges:

r? @ghost

4 years agoRollup merge of #67349 - petertodd:2019-unsize-docs, r=Centril
Mazdak Farrokhzad [Mon, 16 Dec 2019 16:33:16 +0000 (17:33 +0100)]
Rollup merge of #67349 - petertodd:2019-unsize-docs, r=Centril

Minor: update Unsize docs for dyn syntax

4 years agoRollup merge of #67344 - joshtriplett:no-gitignore-of-committed-files, r=Dylan-DPC
Mazdak Farrokhzad [Mon, 16 Dec 2019 16:33:15 +0000 (17:33 +0100)]
Rollup merge of #67344 - joshtriplett:no-gitignore-of-committed-files, r=Dylan-DPC

.gitignore: Don't ignore a file that exists in the repository

.gitignore should not ignore files that exist in the repository. The
ignore of .cargo applies to the committed .cargo directory used in an
example:

$ git ls-files --exclude-standard --ignored
src/test/run-make/thumb-none-qemu/example/.cargo/config

Explicitly un-ignore that file.

4 years agoRollup merge of #67336 - GuillaumeGomez:fix-js-error, r=Dylan-DPC
Mazdak Farrokhzad [Mon, 16 Dec 2019 16:33:13 +0000 (17:33 +0100)]
Rollup merge of #67336 - GuillaumeGomez:fix-js-error, r=Dylan-DPC

Fix JS error when loading page with search

For example when you load this page: https://doc.rust-lang.org/nightly/std/num/struct.NonZeroI8.html?search=foo, you get a nice JS error:

```
TypeError: ev is undefined
```

r? @kinnison

4 years agoRollup merge of #67323 - Centril:tes, r=davidtwco
Mazdak Farrokhzad [Mon, 16 Dec 2019 16:33:12 +0000 (17:33 +0100)]
Rollup merge of #67323 - Centril:tes, r=davidtwco

make transparent enums more ordinary

By recognizing that structs & unions have one variant, we can make the treatment of transparent enums less ad-hoc.

cc https://github.com/rust-lang/rust/issues/60405

r? @davidtwco

4 years agoRollup merge of #67322 - lzutao:nonzero-use-self, r=joshtriplett
Mazdak Farrokhzad [Mon, 16 Dec 2019 16:33:10 +0000 (17:33 +0100)]
Rollup merge of #67322 - lzutao:nonzero-use-self, r=joshtriplett

use Self alias in place of macros

4 years agoRollup merge of #67318 - Centril:spdocs, r=matthewjasper
Mazdak Farrokhzad [Mon, 16 Dec 2019 16:33:09 +0000 (17:33 +0100)]
Rollup merge of #67318 - Centril:spdocs, r=matthewjasper

Improve typeck & lowering docs for slice patterns

cc #62254

r? @matthewjasper

4 years agoRollup merge of #67308 - dtolnay:fast_rebind, r=alexcrichton
Mazdak Farrokhzad [Mon, 16 Dec 2019 16:33:07 +0000 (17:33 +0100)]
Rollup merge of #67308 - dtolnay:fast_rebind, r=alexcrichton

Delete flaky test net::tcp::tests::fast_rebind

This test is unreliable for at least 3 users on two platforms: see #57509 and #51006. It was added 5 years ago in #22015. Do we know whether this is testing something important that would indicate a bug in our implementation, or if it's fine to remove?

r? @sfackler @alexcrichton because this somewhat resembles #59018

Closes #57509. Closes #51006.

4 years agoRollup merge of #67249 - ranma42:improve-starts-with-literal-char, r=BurntSushi
Mazdak Farrokhzad [Mon, 16 Dec 2019 16:33:01 +0000 (17:33 +0100)]
Rollup merge of #67249 - ranma42:improve-starts-with-literal-char, r=BurntSushi

Improve code generated for `starts_with(<literal char>)`

This PR includes two minor improvements to the code generated when checking for string prefix/suffix.

The first commit simplifies the str/str operation, by taking advantage of the raw UTF-8 representation.

The second commit replaces the current str/char matching logic with a char->str encoding and then the previous method.

The resulting code should be equivalent in the generic case (one char is being encoded versus one char being decoded), but it becomes easy to optimize in the case of a literal char, which in most cases a developer might expect to be at least as simple as that of a literal string.

This PR should fix #41993

4 years agoAdd benchmarks for `start_with` and `ends_with`
Andrea Canciani [Mon, 16 Dec 2019 14:33:16 +0000 (15:33 +0100)]
Add benchmarks for `start_with` and `ends_with`

4 years agoMinor: update Unsize docs for dyn syntax
Peter Todd [Mon, 16 Dec 2019 12:22:40 +0000 (07:22 -0500)]
Minor: update Unsize docs for dyn syntax

4 years agoAuto merge of #67342 - Centril:rollup-fl44n41, r=Centril
bors [Mon, 16 Dec 2019 12:10:59 +0000 (12:10 +0000)]
Auto merge of #67342 - Centril:rollup-fl44n41, r=Centril

Rollup of 7 pull requests

Successful merges:

 - #65778 (Stabilize `std::{rc,sync}::Weak::{weak_count, strong_count}`)
 - #66570 (stabilize Result::map_or)
 - #66735 (Add str::strip_prefix and str::strip_suffix)
 - #66771 (Stabilize the `core::panic` module)
 - #67317 (fix type_name_of_val doc comment)
 - #67324 (Fix repetition in matches/mod.rs)
 - #67325 (cleanup with push_fake_read)

Failed merges:

r? @ghost

4 years ago.gitignore: Don't ignore a file that exists in the repository
Josh Triplett [Mon, 16 Dec 2019 07:17:06 +0000 (23:17 -0800)]
.gitignore: Don't ignore a file that exists in the repository

.gitignore should not ignore files that exist in the repository. The
ignore of .cargo applies to the committed .cargo directory used in an
example:

$ git ls-files --exclude-standard --ignored
src/test/run-make/thumb-none-qemu/example/.cargo/config

Explicitly un-ignore that file.

4 years agoimprove lower_pat_slice docs + while -> for
Mazdak Farrokhzad [Sun, 15 Dec 2019 12:17:39 +0000 (13:17 +0100)]
improve lower_pat_slice docs + while -> for

4 years agoRollup merge of #67325 - Centril:push-fake-read, r=matthewjasper
Mazdak Farrokhzad [Mon, 16 Dec 2019 04:23:39 +0000 (05:23 +0100)]
Rollup merge of #67325 - Centril:push-fake-read, r=matthewjasper

cleanup with push_fake_read

...and make things a bit more readable.

r? @matthewjasper

4 years agoRollup merge of #67324 - Centril:mir-build-match-doc-fix, r=matthewjasper
Mazdak Farrokhzad [Mon, 16 Dec 2019 04:23:38 +0000 (05:23 +0100)]
Rollup merge of #67324 - Centril:mir-build-match-doc-fix, r=matthewjasper

Fix repetition in matches/mod.rs

r? @matthewjasper

4 years agoRollup merge of #67317 - lcnr:type_name_docs, r=jonas-schievink
Mazdak Farrokhzad [Mon, 16 Dec 2019 04:23:36 +0000 (05:23 +0100)]
Rollup merge of #67317 - lcnr:type_name_docs, r=jonas-schievink

fix type_name_of_val doc comment

.

4 years agoRollup merge of #66771 - SimonSapin:panic-stability, r=KodrAus
Mazdak Farrokhzad [Mon, 16 Dec 2019 04:23:35 +0000 (05:23 +0100)]
Rollup merge of #66771 - SimonSapin:panic-stability, r=KodrAus

Stabilize the `core::panic` module

`std::panic` is already stable.

`core::panic::PanicInfo` and `core::panic::Location` are stable and can be used through that path because of a bug in stability checking: #15702

4 years agoRollup merge of #66735 - SOF3:feature/str_strip, r=KodrAus
Mazdak Farrokhzad [Mon, 16 Dec 2019 04:23:33 +0000 (05:23 +0100)]
Rollup merge of #66735 - SOF3:feature/str_strip, r=KodrAus

Add str::strip_prefix and str::strip_suffix

Introduces a counterpart for `Path::strip_prefix` on `str`.

This was also discussed in https://internals.rust-lang.org/t/pre-pr-path-strip-prefix-counterpart-in-str/11364/.

4 years agoRollup merge of #66570 - lzutao:stabilize-result-map_or, r=Dylan-DPC
Mazdak Farrokhzad [Mon, 16 Dec 2019 04:23:30 +0000 (05:23 +0100)]
Rollup merge of #66570 - lzutao:stabilize-result-map_or, r=Dylan-DPC

stabilize Result::map_or

r? @SimonSapin
Closes #66293

4 years agoRollup merge of #65778 - bdonlan:stable_weak_count, r=dtolnay
Mazdak Farrokhzad [Mon, 16 Dec 2019 04:23:26 +0000 (05:23 +0100)]
Rollup merge of #65778 - bdonlan:stable_weak_count, r=dtolnay

Stabilize `std::{rc,sync}::Weak::{weak_count, strong_count}`

* Original PR: #56696
* Tracking issue: #57977

Closes: #57977
Supporting comments:

> Although these were added for testing, it is occasionally useful to have a way to probe optimistically for whether a weak pointer has become dangling, without actually taking the overhead of manipulating atomics. Are there any plans to stabilize this?

_Originally posted by @bdonlan in https://github.com/rust-lang/rust/issues/57977#issuecomment-516970921_

> Having this stabilized would help. Currently, the only way to check if a weak pointer has become dangling is to call `upgrade`, which is by far expensive.

_Originally posted by @glebpom in https://github.com/rust-lang/rust/issues/57977#issuecomment-526934709_

Not sure if stabilizing these warrants a full RFC, so throwing this out here as a start for now.

Note: per CONTRIBUTING.md, I ran the tidy checks, but they seem to be failing on unchanged files (primarily in `src/stdsimd`).

4 years agoFix JS error when loading page with search
Guillaume Gomez [Sun, 15 Dec 2019 20:27:25 +0000 (21:27 +0100)]
Fix JS error when loading page with search

4 years agocleanup with push_fake_read
Mazdak Farrokhzad [Sun, 15 Dec 2019 15:11:01 +0000 (16:11 +0100)]
cleanup with push_fake_read

4 years agoReplace prints in fmt docs with asserts
Elichai Turkel [Thu, 12 Dec 2019 14:03:40 +0000 (16:03 +0200)]
Replace prints in fmt docs with asserts

4 years agoFix repetition in matches/mod.rs
Mazdak Farrokhzad [Sun, 15 Dec 2019 14:40:47 +0000 (15:40 +0100)]
Fix repetition in matches/mod.rs

4 years agomake transparent enums more ordinary
Mazdak Farrokhzad [Sun, 15 Dec 2019 14:11:34 +0000 (15:11 +0100)]
make transparent enums more ordinary

4 years agouse Self alias in place of macros
Lzu Tao [Sun, 15 Dec 2019 06:07:46 +0000 (06:07 +0000)]
use Self alias in place of macros

4 years agomake htons const fn
Lzu Tao [Sun, 15 Dec 2019 12:47:40 +0000 (12:47 +0000)]
make htons const fn

4 years agoimprove hir::PatKind::Slice docs
Mazdak Farrokhzad [Sun, 15 Dec 2019 12:16:29 +0000 (13:16 +0100)]
improve hir::PatKind::Slice docs

4 years agodocument check_pat_slice
Mazdak Farrokhzad [Sun, 15 Dec 2019 12:16:01 +0000 (13:16 +0100)]
document check_pat_slice

4 years agocomment -> doc comment
Mazdak Farrokhzad [Sun, 15 Dec 2019 12:13:52 +0000 (13:13 +0100)]
comment -> doc comment

4 years agofix doc comment
lcnr/Bastian Kauschke [Sun, 15 Dec 2019 11:59:02 +0000 (12:59 +0100)]
fix doc comment

4 years agoSet tracking issue for str_strip
SOFe [Sun, 15 Dec 2019 09:07:57 +0000 (17:07 +0800)]
Set tracking issue for str_strip

4 years agoAuto merge of #67310 - Centril:rollup-22jiyow, r=Centril
bors [Sun, 15 Dec 2019 07:17:06 +0000 (07:17 +0000)]
Auto merge of #67310 - Centril:rollup-22jiyow, r=Centril

Rollup of 6 pull requests

Successful merges:

 - #67255 (Remove i686-unknown-dragonfly target)
 - #67267 (Fix signature of `__wasilibc_find_relpath`)
 - #67282 (Fix example code of OpenOptions::open)
 - #67289 (Do not ICE on unnamed future)
 - #67300 (Restore original implementation of Vec::retain)
 - #67305 (Doc typo)

Failed merges:

r? @ghost

4 years agoRollup merge of #67305 - kappa:patch-1, r=jonas-schievink
Mazdak Farrokhzad [Sun, 15 Dec 2019 04:57:28 +0000 (05:57 +0100)]
Rollup merge of #67305 - kappa:patch-1, r=jonas-schievink

Doc typo

4 years agoRollup merge of #67300 - aloucks:issue-65970, r=rkruppe
Mazdak Farrokhzad [Sun, 15 Dec 2019 04:57:27 +0000 (05:57 +0100)]
Rollup merge of #67300 - aloucks:issue-65970, r=rkruppe

Restore original implementation of Vec::retain

This PR reverts #48065, which aimed to optimize `Vec::retain` by making use of `Vec::drain_filter`. Unfortunately at that time, `drain_filter` was unsound.

The soundness hole in `Vec::drain_filter` was fixed in #61224 by guaranteeing that cleanup logic runs via a nested `Drop`, even in the event of a panic. Implementing this nested drop affects codegen (apparently?) and results in slower code.

Fixes #65970

4 years agoRollup merge of #67289 - estebank:unnamed-closure, r=Centril
Mazdak Farrokhzad [Sun, 15 Dec 2019 04:57:25 +0000 (05:57 +0100)]
Rollup merge of #67289 - estebank:unnamed-closure, r=Centril

Do not ICE on unnamed future

Fix #67252.

4 years agoRollup merge of #67282 - pjw91:patch-1, r=Dylan-DPC
Mazdak Farrokhzad [Sun, 15 Dec 2019 04:57:24 +0000 (05:57 +0100)]
Rollup merge of #67282 - pjw91:patch-1, r=Dylan-DPC

Fix example code of OpenOptions::open

The example didn't set the access mode flag, which resulted in an `Err(InvalidInput)`.

r? @steveklabnik

4 years agoRollup merge of #67267 - alexcrichton:update-wasi-libc, r=Dylan-DPC
Mazdak Farrokhzad [Sun, 15 Dec 2019 04:57:22 +0000 (05:57 +0100)]
Rollup merge of #67267 - alexcrichton:update-wasi-libc, r=Dylan-DPC

Fix signature of `__wasilibc_find_relpath`

Looks like this function changed upstream, so it needs to be adjusted
for when used by libstd.

4 years agoRollup merge of #67255 - tuxillo:remove-i686-unknown-dragonfly, r=alexcrichton
Mazdak Farrokhzad [Sun, 15 Dec 2019 04:57:21 +0000 (05:57 +0100)]
Rollup merge of #67255 - tuxillo:remove-i686-unknown-dragonfly, r=alexcrichton

Remove i686-unknown-dragonfly target

DragonFly BSD removed support for i386 a while ago. It only supports x86_64 right now.

4 years agoBump Weak::strong_count/weak_count stabilizations from 1.40 to 1.41
David Tolnay [Sun, 15 Dec 2019 03:26:25 +0000 (19:26 -0800)]
Bump Weak::strong_count/weak_count stabilizations from 1.40 to 1.41

4 years agoDelete flaky test net::tcp::tests::fast_rebind
David Tolnay [Sun, 15 Dec 2019 02:43:54 +0000 (18:43 -0800)]
Delete flaky test net::tcp::tests::fast_rebind

4 years agoAuto merge of #67216 - ecstatic-morse:const-loop, r=oli-obk
bors [Sun, 15 Dec 2019 01:28:28 +0000 (01:28 +0000)]
Auto merge of #67216 - ecstatic-morse:const-loop, r=oli-obk

Enable `loop` and `while` in constants behind a feature flag

This PR is an initial implementation of #52000. It adds a `const_loop` feature gate, which allows `while` and `loop` expressions through both HIR and MIR const-checkers if enabled. `for` expressions remain forbidden by the HIR const-checker, since they desugar to a call to `IntoIterator::into_iter`, which will be rejected anyways.

`while` loops also require [`#![feature(const_if_match)]`](https://github.com/rust-lang/rust/pull/66507), since they have a conditional built into them. The diagnostics from the HIR const checker will suggest this to the user.

r? @oli-obk
cc @rust-lang/wg-const-eval

4 years agoDoc typo
Alex Kapranoff [Sun, 15 Dec 2019 01:12:40 +0000 (17:12 -0800)]
Doc typo

4 years agoDo not ICE on unnamed future
Esteban Küber [Fri, 13 Dec 2019 23:27:55 +0000 (15:27 -0800)]
Do not ICE on unnamed future

4 years agoAuto merge of #67224 - nikomatsakis:revert-stabilization-of-never-type, r=centril
bors [Sat, 14 Dec 2019 22:02:59 +0000 (22:02 +0000)]
Auto merge of #67224 - nikomatsakis:revert-stabilization-of-never-type, r=centril

Revert stabilization of never type

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

I decided to keep the separate `never-type-fallback` feature gate, but tried to otherwise revert https://github.com/rust-lang/rust/pull/65355. Seemed pretty clean.

( cc @Centril, author of #65355, you may want to check this over briefly )

4 years agoupdate reference
Niko Matsakis [Sat, 14 Dec 2019 20:41:36 +0000 (15:41 -0500)]
update reference

4 years agoupdate clippy to the rustc-pr-67224 branch
Niko Matsakis [Sat, 14 Dec 2019 13:55:49 +0000 (08:55 -0500)]
update clippy to the rustc-pr-67224 branch

Actually to commit <69f99e74ac2266dff4b5adc7c59b35236f0abef1>.

4 years agoRestore original implementation of Vec::retain
Aaron Loucks [Sat, 14 Dec 2019 17:38:45 +0000 (12:38 -0500)]
Restore original implementation of Vec::retain

This PR reverts #48065, which aimed to optimize `Vec::retain` by
making use of `Vec::drain_filter`. Unfortunately at that time,
`drain_filter` was unsound.

The soundness hole in `Vec::drain_filter` was fixed in #61224 by
guaranteeing that cleanup logic runs via a nested `Drop`, even in
the event of a panic. Implementing this nested drop affects codegen
(apparently?) and results in slower code.

Fixes #65970

4 years ago[WIP] fix tests after rebase
Niko Matsakis [Sat, 14 Dec 2019 13:17:09 +0000 (08:17 -0500)]
[WIP] fix tests after rebase