Commit graph

25646 commits

Author SHA1 Message Date
Mazdak Farrokhzad
89dce46efd
Rollup merge of #63198 - rbartlensky:fix-macro-trailing-comma, r=petrochenkov
Allow trailing comma in macro 2.0 declarations.

This should hopefully close #63102.
2019-08-02 12:14:20 +02:00
Robert Bartlensky
2aa368aa0e Add check-pass test for #63102. 2019-08-01 22:41:10 +01:00
bors
435236b887 Auto merge of #63194 - pietroalbini:rollup-xgnvb1b, r=pietroalbini
Rollup of 8 pull requests

Successful merges:

 - #62644 (simplify std::io::Write::write rustdoc)
 - #62971 (Add keywords item into the sidebar)
 - #63122 (Account for `maybe_whole_expr` in range patterns)
 - #63158 (Add test for issue-58951)
 - #63170 (cleanup StringReader fields)
 - #63179 (update test cases for vxWorks)
 - #63188 (Fix typos in release notes.)
 - #63191 (ci: fix toolstate not pushing data for Linux)

Failed merges:

r? @ghost
2019-08-01 14:43:00 +00:00
Pietro Albini
f5e2390e2f
Rollup merge of #63179 - BaoshanPang:testcases, r=alexcrichton
update test cases for vxWorks

issue-2214.rs: lgamma is lgamma on vxWorks
ignore process-envs.rs and process-remove-from-env.rs as there is no 'env' on vxWorks
2019-08-01 16:00:31 +02:00
Pietro Albini
aaec6dfa47
Rollup merge of #63158 - JohnTitor:add-test-for-58951, r=Centril
Add test for issue-58951

Closes #58951

r? @Centril
2019-08-01 16:00:28 +02:00
Pietro Albini
810ffe2ba0
Rollup merge of #63122 - Centril:fix-63115, r=petrochenkov
Account for `maybe_whole_expr` in range patterns

Fixes https://github.com/rust-lang/rust/issues/63115 (fallout from https://github.com/rust-lang/rust/pull/62550).

r? @petrochenkov
2019-08-01 16:00:26 +02:00
Pietro Albini
e2934bab3e
Rollup merge of #62971 - GuillaumeGomez:keyword-sidebar, r=nobody
Add keywords item into the sidebar

Fixes #62939.

cc @pravic

screenshot of the result:

![Screenshot from 2019-07-25 14-29-48](https://user-images.githubusercontent.com/3050060/61874545-f9512080-aee8-11e9-8e8b-aa50216aec94.png)

r? @QuietMisdreavus
2019-08-01 16:00:25 +02:00
bors
f23a5f208d Auto merge of #62507 - petrochenkov:macunstab, r=alexcrichton
Remove derives `Encodable`/`Decodable` and unstabilize attribute `#[bench]`

`Encodable` and `Decodable` were deprecated before 1.0 and emitted an unsuppressable warning all this time.
`#[bench]` is a part of the custom test framework feature and cannot be used meaningfully on stable, only as `cfg(false)`.

Crater results can be found in https://github.com/rust-lang/rust/pull/62507#issuecomment-513850732 and below.

This PR also reroutes the tracking issue for `feature(test)` from #27812 (compiler internals) to #50297 (custom test frameworks).

Closes https://github.com/rust-lang/rust/issues/62048
2019-08-01 11:07:26 +00:00
Baoshan Pang
8d9377822d issue-2214.rs: lgamma is lgamma on vxWorks
ignore process-envs.rs and process-remove-from-env.rs as there is no 'env' on vxWorks
2019-07-31 19:19:40 -07:00
Yuki Okushi
d033e8de21 Change to check-pass 2019-08-01 11:17:01 +09:00
Vadim Petrochenkov
ef7ef05e8e Drive-by fix: Update two tests failing in --pass check mode 2019-07-31 21:42:24 +03:00
Vadim Petrochenkov
73dae4eaf9 Remove derives Encodable/Decodable and unstabilize attribute #[bench] 2019-07-31 21:27:59 +03:00
Alex Crichton
3d2b6e79db Attempt to fix backtrace tests on i686-msvc
Some fixes for i686-msvc and Windows have landed on the `backtrace`
crate but hadn't made their way here yet. Let's update that and see if
it passes CI.
2019-07-31 10:59:32 -07:00
Yuki Okushi
bca1c3cfae Add test for issue-58951 2019-07-31 20:51:53 +09:00
bors
9152fe4ea0 Auto merge of #62813 - alexcrichton:less-dylib, r=Mark-Simulacrum
rustc: Compile the `fmt_macros` crate as an rlib

I think this was left out by accident from the "convert everything to
rlibs" commit, there's no need for this to be a dylib just as everything
else doesn't need to be a dylib!
2019-07-31 07:29:59 +00:00
Mazdak Farrokhzad
d87164500f
Rollup merge of #63129 - Centril:subslice-pat-statdyn, r=oli-obk
Subslice patterns: Test passing static & dynamic semantics.

Working towards testing coverage for https://github.com/rust-lang/rust/issues/62254.
See https://github.com/rust-lang/rfcs/blob/master/text/2359-subslice-pattern-syntax.md for the RFC.

r? @oli-obk cc @petrochenkov
2019-07-30 22:43:39 +02:00
Mazdak Farrokhzad
c088890b6e
Rollup merge of #63123 - TankhouseAle:const-fn-type-name-any, r=oli-obk
`const fn`-ify `std::any::type_name` as laid out in #63084

A test, based on the one I added when I implemented support for the underlying `core::intrinsics::type_name` being allowed in `const fn` contexts, is included.
2019-07-30 22:43:37 +02:00
Mazdak Farrokhzad
dbf54ad324
Rollup merge of #63095 - Centril:incomplete-features-lint, r=varkor
Turn `INCOMPLETE_FEATURES` into lint

We do this because it is annoying to see the warning when building rustc and because this is better from a "separation of concerns" POV.

The drawback to this change is that this will respect `--cap-lints`.
Also note that this is not a buffered lint so if there are fatal parser errors then the lint will not trigger.

r? @varkor
2019-07-30 22:43:34 +02:00
Mazdak Farrokhzad
d8280faabf
Rollup merge of #62293 - Centril:remove-await-macro, r=cramertj
Unsupport the `await!(future)` macro

Unsupport the `await!(future)` "macro" and recognize it in error recovery instead.

The `future.await` syntax has been on nightly since 2019-05-08.
This was 55 days ago which is 1.31 releases ago.

Closes https://github.com/rust-lang/rust/issues/60610.

r? @cramertj
2019-07-30 22:43:31 +02:00
Mazdak Farrokhzad
581f2cbfe9 Adjust tests. wrt. await_macro being removed. 2019-07-30 10:55:45 +02:00
Mazdak Farrokhzad
969a3743e6 Subslice patterns: Test passing static & dynamic semantics. 2019-07-30 10:46:30 +02:00
Mazdak Farrokhzad
24a178e397 --bless tests due to INCOMPLETE_FEATURES being a lint. 2019-07-30 10:43:32 +02:00
bors
f690098e6d Auto merge of #62766 - alexcrichton:stabilize-pipelined-compilation, r=oli-obk
rustc: Stabilize options for pipelined compilation

This commit stabilizes options in the compiler necessary for Cargo to
enable "pipelined compilation" by default. The concept of pipelined
compilation, how it's implemented, and what it means for rustc are
documented in #60988. This PR is coupled with a PR against Cargo
(rust-lang/cargo#7143) which updates Cargo's support for pipelined
compliation to rustc, and also enables support by default in Cargo.
(note that the Cargo PR cannot land until this one against rustc lands).

The technical changes performed here were to stabilize the functionality
proposed in #60419 and #60987, the underlying pieces to enable pipelined
compilation support in Cargo. The issues have had some discussion during
stabilization, but the newly stabilized surface area here is:

* A new `--json` flag was added to the compiler.
* The `--json` flag can be passed multiple times.
* The value of the `--json` flag is a comma-separated list of
  directives.
* The `--json` flag cannot be combined with `--color`
* The `--json` flag must be combined with `--error-format=json`
* The acceptable list of directives to `--json` are:
  * `diagnostic-short` - the `rendered` field of diagnostics will have a
    "short" rendering matching `--error-format=short`
  * `diagnostic-rendered-ansi` - the `rendered` field of diagnostics
    will be colorized with ansi color codes embedded in the string field
  * `artifacts` - JSON blobs will be emitted for artifacts being emitted
    by the compiler

The unstable `-Z emit-artifact-notifications` and `--json-rendered`
flags have also been removed during this commit as well.

Closes #60419
Closes #60987
Closes #60988
2019-07-30 08:39:29 +00:00
Mazdak Farrokhzad
91c10f8839
Rollup merge of #63111 - Centril:rest-pat-tests, r=estebank
Add syntactic and semantic tests for rest patterns, i.e. `..`

As per my first note in https://github.com/rust-lang/rust/issues/62254#issuecomment-515784884 this adds syntactic and semantic tests for `..` ("rest") patterns which were implemented in https://github.com/rust-lang/rust/pull/62550.

r? @estebank
2019-07-30 05:37:46 +02:00
Mazdak Farrokhzad
09eb0b1b32
Rollup merge of #63096 - Centril:existential-type-add-tests, r=varkor
Add tests for some `existential_type` ICEs

Fix #53678
Fix #60407
Fix #60564

https://github.com/rust-lang/rust/issues/54899 will need some minimization before it can be added.

r? @varkor
2019-07-30 05:37:39 +02:00
Mazdak Farrokhzad
f3750e34b4
Rollup merge of #63093 - Aaron1011:fix/existential-closure, r=cramertj
Properly check the defining scope of existential types

Fixes #52632

Existential types (soon to be 'impl trait' aliases) can either be
delcared at a top-level crate/module scope, or within another item such
as an fn. Previously, we were handling the second case incorrectly when
recursively searching for defining usages - we would check children of
the item, but not the item itself. This lead to us missing closures
that consituted a defining use of the existential type, as their opaque
type instantiations are stored in the TypeckTables of their parent
function.

This commit ensures that we explicitly visit the defining item itself,
not just its children.
2019-07-30 05:37:37 +02:00
Mazdak Farrokhzad
44130681eb
Rollup merge of #63087 - crlf0710:tidy_2018, r=Mark-Simulacrum
Add very simple edition check to tidy.

Fixes #58099.
2019-07-30 05:37:36 +02:00
Mazdak Farrokhzad
652f13d838
Rollup merge of #63083 - matthewjasper:parameter-hygiene, r=petrochenkov
Make generic parameters always use modern hygiene

* E0263 (lifetime parameter declared twice in the same scope) now compares modernized identifiers.
* Const parameters are now resolved with modern hygiene.

Closes #58307
Closes #60746
Closes #61574
Closes #62433
2019-07-30 05:37:34 +02:00
Mazdak Farrokhzad
36029878e7
Rollup merge of #62928 - Centril:recover-parens-around-for-head, r=estebank
Syntax: Recover on `for ( $pat in $expr ) $block`

Fixes #62724 by adding some recovery:

```
error: unexpected closing `)`
  --> $DIR/recover-for-loop-parens-around-head.rs:10:23
   |
LL |     for ( elem in vec ) {
   |         --------------^
   |         |
   |         opening `(`
   |         help: remove parenthesis in `for` loop: `elem in vec`
```

The last 2 commits are drive-by cleanups.

r? @estebank
2019-07-30 05:37:32 +02:00
TankhouseAle
873b361480
Add a test for std::any::type_name() as a const fn
This is a modified version of the test I added previously. The difference is this version implements a wrapper around std::any::type_name versus core::intrinsics::type_name, in order to show that it works as desired / intended.
2019-07-29 22:57:21 -04:00
Mazdak Farrokhzad
f3a3290ba3 Account for maybe_whole_expr in range patterns. 2019-07-30 04:22:09 +02:00
Mazdak Farrokhzad
6c7613b7fd Add semantic test for rest patterns. 2019-07-29 21:39:36 +02:00
Matthew Jasper
0fb9295e12 Add another test for const parameter (non) hygiene. 2019-07-29 20:04:07 +01:00
Mazdak Farrokhzad
15bc63e8bf Add syntactic test for rest patterns. 2019-07-29 21:04:03 +02:00
CrLF0710
870efe34c8 Add very simple edition check to tidy; and add missing edition = 2018s. 2019-07-30 01:56:03 +08:00
Alex Crichton
9f6e1ce5df rustc: Compile the fmt_macros crate as an rlib
I think this was left out by accident from the "convert everything to
rlibs" commit, there's no need for this to be a dylib just as everything
else doesn't need to be a dylib!
2019-07-29 08:15:08 -07:00
Mazdak Farrokhzad
a54dd2318a Add test for #60564. 2019-07-29 06:56:28 +02:00
Mazdak Farrokhzad
1e927d8689 Add test for #60407. 2019-07-29 06:56:28 +02:00
Mazdak Farrokhzad
b779f45fed Add test for #53678. 2019-07-29 06:56:28 +02:00
Mazdak Farrokhzad
b2a5d99705 Move ui/existential_type.rs -> ui/existential_type/existential_type-pass. 2019-07-29 06:56:28 +02:00
Mazdak Farrokhzad
e2ee2a3854 Move ui/{existential-type -> existential_types}. 2019-07-29 06:56:28 +02:00
Mazdak Farrokhzad
f8321d0d97
Rollup merge of #63092 - Centril:update-impl-trait-gates, r=varkor
Update `impl Trait` gate issues

cc https://github.com/rust-lang/rust/issues/63065
cc https://github.com/rust-lang/rust/issues/63063

r? @varkor cc @alexreg
2019-07-29 02:11:00 +02:00
Mazdak Farrokhzad
f6f214233f
Rollup merge of #63086 - BaoshanPang:testcases, r=nagisa
Ignore test cases that are not supported by vxWorks

bypass x86stdcall.rs for vxworks

ignore wait-forked-but-failed-child.rs as there is no command 'ps' on vxWorks

ignore process-sigpipe.rs as there is no 'sh' on vxWorks

ignore core-run-destroy.rs as there is no 'cat' and 'sleep' on vxWorks
2019-07-29 02:10:58 +02:00
Mazdak Farrokhzad
7f2c3e1723
Rollup merge of #63077 - petrochenkov:nolangfeat, r=petrochenkov
cleanup: Remove some language features related to built-in macros

They are now library features.
Cleanup after https://github.com/rust-lang/rust/pull/62086.
The unstable book files are moved because tidy complained.
2019-07-29 02:10:57 +02:00
Aaron Hill
3e98c3acf5
Rename test and add comment 2019-07-28 19:12:27 -04:00
Mazdak Farrokhzad
2a49dd0db6 Update existential_type + impl_trait_in_bindings issue numbers. 2019-07-29 00:09:18 +02:00
Aaron Hill
18bf9dd4b7
Properly check the defining scope of existential types
Fixes #52632

Existential types (soon to be 'impl trait' aliases) can either be
delcared at a top-level crate/module scope, or within another item such
as an fn. Previously, we were handling the second case incorrectly when
recursively searching for defining usages - we would check children of
the item, but not the item itself. This lead to us missing closures
that consituted a defining use of the existential type, as their opaque
type instantiations are stored in the TypeckTables of their parent
function.

This commit ensures that we explicitly visit the defining item itself,
not just its children.
2019-07-28 18:02:16 -04:00
bors
c7312fe4ff Auto merge of #63090 - Centril:rollup-xnjwm2h, r=Centril
Rollup of 8 pull requests

Successful merges:

 - #61856 (Lint attributes on function arguments)
 - #62360 (Document that ManuallyDrop::drop should not called more than once)
 - #62392 (Update minifier-rs version)
 - #62871 (Explicit error message for async recursion.)
 - #62995 (Avoid ICE when suggestion span is at Eof)
 - #63053 (SystemTime docs: recommend Instant for elapsed time)
 - #63081 (tidy: Cleanup the directory whitelist)
 - #63088 (Remove anonymous_parameters from unrelated test)

Failed merges:

r? @ghost
2019-07-28 20:22:42 +00:00
Mazdak Farrokhzad
29c377882f
Rollup merge of #63088 - dtolnay:anonymous, r=Centril
Remove anonymous_parameters from unrelated test

The parsing of anonymous_parameters is sufficiently covered by:

- [src/test/ui/issues/issue-13105.rs](023525dbda/src/test/ui/issues/issue-13105.rs)
- [src/test/ui/issues/issue-13775.rs](023525dbda/src/test/ui/issues/issue-13775.rs)
- [src/test/ui/issues/issue-34074.rs](023525dbda/src/test/ui/issues/issue-34074.rs)

Removing anonymous_parameters from this test means fewer exclusions for me in https://github.com/dtolnay/syn/issues/644.
2019-07-28 21:20:02 +02:00
Mazdak Farrokhzad
a3cae5740c
Rollup merge of #62995 - estebank:issue-62973, r=varkor
Avoid ICE when suggestion span is at Eof

Fix #62973.
2019-07-28 21:19:58 +02:00