Commit graph

24766 commits

Author SHA1 Message Date
Pietro Albini
2106d57c35
Rollup merge of #61344 - varkor:const-failed-to-life-ice, r=Centril
Add regression test for const generics ICE

Closes https://github.com/rust-lang/rust/issues/60879.
2019-05-31 13:33:58 +02:00
Pietro Albini
860deae4c6
Rollup merge of #61342 - memoryruins:ellipsis_inclusive_range_patterns, r=Centril
Set ellipsis_inclusive_range_patterns lint to warn

Continuing #54910, the `ellipsis_inclusive_range_patterns` lint is set to warn.

r? @Centril
2019-05-31 13:33:57 +02:00
Mazdak Farrokhzad
2ebfbb4fab Parse 'async unsafe fn' instead of 'unsafe async fn'. 2019-05-31 00:53:10 +02:00
varkor
0fdd4191ad Add regression test for const generics ICE
Co-Authored-By: Mazdak Farrokhzad <twingoow@gmail.com>
2019-05-30 19:55:43 +01:00
memoryruins
e18885e21f Update ui and run-pass for ellipsis_inclusive_range_patterns lint 2019-05-30 06:20:30 -04:00
Mazdak Farrokhzad
528972a28a
Rollup merge of #61333 - varkor:apit-const-param-ice, r=estebank
Fix ICE with APIT in a function with a const parameter

Fixes https://github.com/rust-lang/rust/issues/60953.
2019-05-30 10:53:07 +02:00
Mazdak Farrokhzad
07d0b578c1
Rollup merge of #61279 - llogiq:implicit-option-main-doctests, r=GuillaumeGomez
implicit `Option`-returning doctests

This distinguishes `Option` and `Result`-returning doctests with implicit `main` method, where the former tests must end with `Some(())`.

Open question: Does this need a feature gate?

r? @GuillaumeGomez
2019-05-30 10:52:56 +02:00
Mazdak Farrokhzad
6351267c1f
Rollup merge of #61231 - pnkfelix:issue-59548-linkage-diagnostic, r=petrochenkov
Fix linkage diagnostic so it doesn't ICE for external crates

Fix linkage diagnostic so it doesn't ICE for external crates

(As a drive-by improvement, improved the diagnostic to indicate *why* `*const T` or `*mut T` is required.)

Fix #59548
Fix #61232
2019-05-30 10:52:53 +02:00
Mazdak Farrokhzad
933c773b61
Rollup merge of #60839 - davidtwco:const-generics-struct-ctor, r=varkor
Fix ICE with struct ctors and const generics.

Fixes #60818.

r? @varkor
2019-05-30 10:52:49 +02:00
Mazdak Farrokhzad
040af62a5a
Rollup merge of #60802 - euclio:pulldown-cmark-panic, r=GuillaumeGomez
upgrade rustdoc's `pulldown-cmark` to 0.5.2

Fixes #60482.
2019-05-30 10:52:48 +02:00
bors
c28084ac16 Auto merge of #61005 - michaelwoerister:error-pgo-windows-unwind, r=zackmdavis
Emit error when trying to use PGO in conjunction with unwinding on Windows.

This PR makes `rustc` emit an error when trying use PGO in conjunction with `-Cpanic=unwind` on Windows, isn't supported by LLVM yet. The error messages points to https://github.com/rust-lang/rust/issues/61002, which documents this known limitation.
2019-05-30 03:37:37 +00:00
varkor
998ef688a3 Add a regression test for const parameters with impl Trait 2019-05-30 00:21:04 +01:00
bors
413790186c Auto merge of #61203 - memoryruins:bare_trait_objects, r=Centril
Warn on bare_trait_objects by default

The `bare_trait_objects` lint is set to `warn` by default.
Most ui tests have been updated to use `dyn` to avoid creating noise in stderr files.

r? @Centril

cc #54910
2019-05-29 21:55:59 +00:00
Andy Russell
ed8a4d5bc1
upgrade rustdoc's pulldown-cmark to 0.5.2
Fixes #60482.
2019-05-29 10:59:59 -04:00
Oliver Scherer
18967566c7
Rollup merge of #61310 - RalfJung:mem, r=Centril
split libcore::mem into multiple files

r? @Centril
2019-05-29 14:41:09 +02:00
Oliver Scherer
9cc289e7b4
Rollup merge of #61293 - varkor:rustdoc-print-const-generic, r=GuillaumeGomez
Print const generics properly in rustdoc

Now that https://github.com/rust-lang/rust/pull/59276 is merged, we can print consts properly in rustdoc.

Fixes https://github.com/rust-lang/rust/issues/60737.
Fixes https://github.com/rust-lang/rust/issues/61257.

r? @GuillaumeGomez
2019-05-29 14:41:08 +02:00
Oliver Scherer
e83776f3ab
Rollup merge of #61217 - estebank:issue-52820, r=Centril
Account for short-hand init structs when suggesting conversion

Fix #52820.
2019-05-29 14:41:05 +02:00
Oliver Scherer
8186994446
Rollup merge of #60549 - euclio:doctest-panic-messages, r=GuillaumeGomez
do not print panic message on doctest failures

This PR cleans up rustdoc test output by silently unwinding on failure instead of using `panic!`. It also improves the clarity and consistency of the output on test failure, and adds test cases for failure modes that were previously untested.
2019-05-29 14:41:01 +02:00
Michael Woerister
a19a9e9194 Make run-make PGO tests work on MSVC. 2019-05-29 14:32:38 +02:00
Ralf Jung
d0b3774490 bless you 2019-05-29 12:28:45 +02:00
David Wood
41aaf7bc46
Fix ICE with struct ctors and const generics.
This commit fixes a ICE where struct constructors were resulting in an
ICE with const generics. Previously, a `match` in `type_of` did not have
an arm for the `DefKind::Ctor` resolutions and therefore would assume
that the type did not have generics.
2019-05-29 08:30:07 +01:00
Mazdak Farrokhzad
61545b6975
Rollup merge of #60542 - timvermeulen:step_sub_usize, r=scottmcm
Add Step::sub_usize

Required for #54054.

I'm aware that the `Step` trait needs a rework, but this still seems like a reasonable addition?

This currently doesn't compile because Chalk contains a type that implement this trait, and this is a breaking change. How can that be fixed?
2019-05-29 08:15:49 +02:00
memoryruins
fd347a8735 Update the rest of the test suites to use dyn 2019-05-29 00:57:42 -04:00
memoryruins
f19f4545b1 Update run-pass test suite to use dyn 2019-05-29 00:57:42 -04:00
memoryruins
eb4580a570 Update ui test suite to use dyn 2019-05-29 00:57:31 -04: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
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
varkor
9c9b7b4eac Add a regression test for unevaluated const in rustdoc 2019-05-28 22:53:48 +01:00
varkor
7f9dc73a31 Add a const-generics folder to rustdoc tests 2019-05-28 22:53:36 +01:00
varkor
6233d1fee5 Use assert_eq! instead of println! in tests 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
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
55dcc20f9a Add tests for uninferred consts during codegen 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
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
memoryruins
a1d1d7a2c6 Update test/ui/parser for bare_trait_object warnings 2019-05-28 14:45:27 -04: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
Andre Bogus
6bb6c001be implicit Option-returning doctests
This distinguishes `Option` and `Result`-returning doctests with
implicit `main` method, where the former tests must end with
`Some(())`.
2019-05-28 19:10:39 +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
Michael Woerister
ebabcf7105 Make test/codegen/pgo-instrumentation.rs work reliably on Windows. 2019-05-28 15:25:52 +02:00
Mazdak Farrokhzad
3b5157917a
Rollup merge of #61220 - imbrem:error_explanations, r=estebank
Added error message for E0284

Work on #61137
2019-05-28 11:48:55 +02:00