104256 Commits

Author SHA1 Message Date
bors
3982d3514e Auto merge of #67505 - Centril:rollup-7win7ty, r=Centril
Rollup of 6 pull requests

Successful merges:

 - #67148 ( Refactor type & bounds parsing thoroughly)
 - #67410 (Reenable static linking of libstdc++ on windows-gnu)
 - #67439 (Cleanup `lower_pattern_unadjusted` & Improve slice pat typeck)
 - #67480 (Require issue = "none" over issue = "0" in unstable attributes)
 - #67500 (Tweak non_shorthand_field_patterns' suggestion)
 - #67504 (Warn against relying on ?Sized being last)

Failed merges:

r? @ghost
2019-12-22 07:01:50 +00:00
bors
005cf38f7e Auto merge of #67486 - matthiaskrgr:submodule_upd, r=oli-obk
submodules: update clippy from 69f99e74 to acbc609a

Changes:
````
rustup "Merge `ast::Mutability` and `mir::Mutability`"
rustup https://github.com/rust-lang/rust/pull/67130
rustup https://github.com/rust-lang/rust/pull/67455
Update lints for `iterator_step_by_zero` changes
Fix 'redudant' spelling in redundant_clone docs
Fix documentation example for unnecessary_filter_map.
Fix `expect_fun_call` false negative on references
Fix `iterator_step_by_zero` description in declaration
Fix `iterator_step_by_zero` definition
Correct `iterator_step_by_zero` documentation
Update iterator_step_by_zero
Prevent `cmp_nan` when inside constants
Detect comparisons with NAN constants
Fix clippy build failure
````

r? @oli-obk  @Manishearth
2019-12-22 03:42:58 +00:00
Mazdak Farrokhzad
ca528fcc04
Rollup merge of #67504 - Mark-Simulacrum:note-data-offset, r=Centril
Warn against relying on ?Sized being last

Fixes #62522
2019-12-22 02:40:07 +01:00
Mazdak Farrokhzad
c35546383f
Rollup merge of #67500 - JohnTitor:non-shorthand-field-patterns, r=Centril
Tweak non_shorthand_field_patterns' suggestion

Fixes #66434

r? @estebank
2019-12-22 02:40:06 +01:00
Mazdak Farrokhzad
eaeb1138c6
Rollup merge of #67480 - rossmacarthur:fix-41260-avoid-issue-0-part-2, r=Centril
Require issue = "none" over issue = "0" in unstable attributes

These changes make the use of `issue = "none"` required in unstable attributes throughout the compiler.

Notes:
- #66299 is now in beta so `issue = "none"` is accepted.
- The `tidy` tool now fails on `issue = "0"`.
- Tests that used `issue = "0"` were changed to use `issue = "none"`, except for _one_ that asserts `issue = "0"` can still be used.
- The compiler still allows `issue = "0"` because some submodules require it, this could be disallowed once these are updated.

Resolves #41260

r? @varkor
2019-12-22 02:40:04 +01:00
Mazdak Farrokhzad
877dc9daa8
Rollup merge of #67439 - Centril:clean-hair-slice, r=matthewjasper
Cleanup `lower_pattern_unadjusted` & Improve slice pat typeck

Following up on https://github.com/rust-lang/rust/pull/67318, in this PR, the HAIR lowering of patterns (`lower_pattern_unadjusted`) is cleaned up with a focus on slice patterns (in particular, some dead code is removed). Moreover, `check_pat_slice` is refactored some more.

r? @matthewjasper
2019-12-22 02:40:03 +01:00
Mazdak Farrokhzad
35ff2f1df3
Rollup merge of #67410 - mati865:mingw_link_fix, r=Mark-Simulacrum
Reenable static linking of libstdc++ on windows-gnu

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

Verified locally that `rustc_driver` is now statically linked to libstdc++.
2019-12-22 02:40:01 +01:00
Mazdak Farrokhzad
616373e668
Rollup merge of #67148 - Centril:ty-polish, r=estebank
Refactor type & bounds parsing thoroughly

PR is based on https://github.com/rust-lang/rust/pull/67131 with first one from this PR being ` extract parse_ty_tuple_or_parens`.

Also fixes #67146.

r? @estebank
2019-12-22 02:40:00 +01:00
Mark Rousskov
a34c2677af Warn against relying on ?Sized being last 2019-12-21 20:35:41 -05:00
bors
6e9172f633 Auto merge of #66932 - rust-lang:pass-check-runfail, r=petrochenkov
Revamp `// run-fail` wrt. `--pass` & support `// build-fail` & `// check-fail`

Revamp how `// run-fail` tests work internally by having a separate `FailMode` that does not interfere with `PassMode`. In particular, `--pass check` will now have no effect on `// *-fail` tests. Moreover, new test annotations `// check-fail` (the default) and `// build-fail` are added. The latter is useful to distinguish post-monomorphization failures from pre-monomorphization failures as seen throughout the PR. Finally, ensure that non-`Ui` tests do not listen to `--pass check` such that the flag can be used with e.g. `./x.py test --pass check` directly.

Fixes #66929.
Fixes #67128.

r? @petrochenkov
cc @RalfJung @ninjasource
2019-12-22 00:10:13 +00:00
Yuki Okushi
30e84b0244 Tweak non_shorthand_field_patterns' suggestion 2019-12-22 08:21:36 +09:00
Mazdak Farrokhzad
73e6a2174a add build-fail to 32-bit tests 2019-12-21 22:33:36 +01:00
Mazdak Farrokhzad
03046abbd0 fix rebase fallout 2019-12-21 22:16:00 +01:00
Mazdak Farrokhzad
27b75a580d refactor & address review comments 2019-12-21 22:16:00 +01:00
Mazdak Farrokhzad
b4420c8f5c rework run-fail and support check,build-fail 2019-12-21 22:16:00 +01:00
Mazdak Farrokhzad
d8b817810f make --pass check work with // run-fail tests 2019-12-21 22:16:00 +01:00
bors
5535c25314 Auto merge of #67495 - Centril:rollup-6aer3xg, r=Centril
Rollup of 7 pull requests

Successful merges:

 - #67160 (Make GATs less ICE-prone.)
 - #67333 ([mir-opt] Fix `Inline` pass to handle inlining into `box` expressions)
 - #67420 (use _val to ignore parameter of any::type_name_of_val)
 - #67469 (Remove rustc-dev from the default nightly components)
 - #67489 (Drop petgraph dependency from bootstrap)
 - #67490 (Document privacy of RangeInclusive fields)
 - #67491 (use Result::map_or for bootstrap)

Failed merges:

r? @ghost
2019-12-21 20:59:22 +00:00
Matthias Krüger
f51f0e1b9a submodules: update clippy from 69f99e74 to cfb33200
Changes:
````
rustup "Merge `ast::Mutability` and `mir::Mutability`"
rustup https://github.com/rust-lang/rust/pull/67130
rustup https://github.com/rust-lang/rust/pull/67455
There are no per-file copyright headers anymore
Update lints for `iterator_step_by_zero` changes
Fix 'redudant' spelling in redundant_clone docs
Fix documentation example for unnecessary_filter_map.
Fix `expect_fun_call` false negative on references
Fix `iterator_step_by_zero` description in declaration
Fix `iterator_step_by_zero` definition
Correct `iterator_step_by_zero` documentation
Update iterator_step_by_zero
Prevent `cmp_nan` when inside constants
Detect comparisons with NAN constants
Fix clippy build failure
````
2019-12-21 21:04:28 +01:00
LeSeulArtichaut
62714f8b17 Update unstable book build to use NonZeroU32 2019-12-21 20:45:36 +02:00
Mazdak Farrokhzad
db4818f325 span_suggestion_hidden -> tool_only_span_suggestion 2019-12-21 19:20:41 +01:00
Mazdak Farrokhzad
52fa020bbf unwrap -> expect 2019-12-21 19:20:41 +01:00
Mazdak Farrokhzad
d6f37c66c7 parse_ty_bare_fn: improve docs 2019-12-21 19:20:41 +01:00
Mazdak Farrokhzad
d0105600d1 document parse_late_bound_lifetime_defs 2019-12-21 19:20:41 +01:00
Mazdak Farrokhzad
f221b394de extract error_negative_bounds 2019-12-21 19:20:41 +01:00
Mazdak Farrokhzad
b5f00beaa5 parse_generic_bounds: account for negative lifetime bounds 2019-12-21 19:20:41 +01:00
Mazdak Farrokhzad
4625ba4872 simplify 'let question = ...;' 2019-12-21 19:20:41 +01:00
Mazdak Farrokhzad
f215ca9be6 simplify negative bound diagnostic 2019-12-21 19:20:41 +01:00
Mazdak Farrokhzad
4b073a1f4a extract parse_generic_lt_bound 2019-12-21 19:20:41 +01:00
Mazdak Farrokhzad
50e00c73ee extract parse_generic_ty_bound 2019-12-21 19:20:41 +01:00
Mazdak Farrokhzad
1cfeb56773 parse_generic_bound: leave a FIXME 2019-12-21 19:20:41 +01:00
Mazdak Farrokhzad
18e5b2f98c functionalize parse_generic_bound 2019-12-21 19:20:41 +01:00
Mazdak Farrokhzad
8a9a992a64 extract parse_generic_bound 2019-12-21 19:20:41 +01:00
Mazdak Farrokhzad
fd89104966 extract can_begin_bound 2019-12-21 19:20:41 +01:00
Mazdak Farrokhzad
e61cb44f2f parse_generic_bounds_common: dedent 2019-12-21 19:20:41 +01:00
Mazdak Farrokhzad
a11252ae26 extract recover_paren_lifetime 2019-12-21 19:20:41 +01:00
Mazdak Farrokhzad
b484faefab extract error_opt_out_lifetime 2019-12-21 19:20:41 +01:00
Mazdak Farrokhzad
3f499a97e4 parser/ty.rs: minor formatting tweaks 2019-12-21 19:20:41 +01:00
Mazdak Farrokhzad
3b1fab8c1f parse_ty_common: .fatal -> .struct_span_err 2019-12-21 19:20:41 +01:00
Mazdak Farrokhzad
6f1f6a6c33 extract error_illegal_c_variadic_ty 2019-12-21 19:20:41 +01:00
Mazdak Farrokhzad
85d3ed9c90 extract parse_path_start_ty 2019-12-21 19:20:41 +01:00
Mazdak Farrokhzad
b7071f2bc0 extract parse_dyn_ty 2019-12-21 19:20:41 +01:00
Mazdak Farrokhzad
edb7b96c84 extract parse_impl_ty 2019-12-21 19:20:41 +01:00
Mazdak Farrokhzad
e08886d251 extract parse_typeof_ty 2019-12-21 19:20:41 +01:00
Mazdak Farrokhzad
211560d05c extract parse_array_or_slice_ty 2019-12-21 19:20:41 +01:00
Mazdak Farrokhzad
7d297044d7
Rollup merge of #67491 - lzutao:res-map-or, r=Mark-Simulacrum
use Result::map_or for bootstrap
2019-12-21 19:07:44 +01:00
Mazdak Farrokhzad
5a0f17e849
Rollup merge of #67490 - Mark-Simulacrum:i-67371, r=Dylan-DPC
Document privacy of RangeInclusive fields

Fixes #67371
2019-12-21 19:07:42 +01:00
Mazdak Farrokhzad
2135cc48e2
Rollup merge of #67489 - Mark-Simulacrum:drop-petgraph, r=Centril
Drop petgraph dependency from bootstrap

It was essentially unused, likely leftover from a previous refactoring iteration. This should hopefully help reduce bootstrap build times a little, dropping petgraph, fixedbitset, and ordermap from the dependency set.

r? @alexcrichton
2019-12-21 19:07:40 +01:00
Mazdak Farrokhzad
b9a6d74902
Rollup merge of #67469 - cuviper:no-default-rustc-dev, r=Mark-Simulacrum
Remove rustc-dev from the default nightly components

It was already filtered from other branches, but we only kept it in
nightly's default to ease the transition. Now that the separation of
rust-std/rustc-dev has reached the 1.40 release, it seems like a good
time for that transition to end.

Closes #67425.
r? @Mark-Simulacrum
2019-12-21 19:07:39 +01:00
Mazdak Farrokhzad
9fa2046ed9
Rollup merge of #67420 - lzutao:_val, r=Centril
use _val to ignore parameter of any::type_name_of_val

mem::drop does the same thing too.
2019-12-21 19:07:37 +01:00
Mazdak Farrokhzad
ac6dbff45e
Rollup merge of #67333 - wesleywiser:fix_inline_into_box_place, r=oli-obk
[mir-opt] Fix `Inline` pass to handle inlining into `box` expressions

r? @oli-obk

Before, the test case just ICE'd here:

a605441e04/src/librustc_mir/transform/inline.rs (L668)
2019-12-21 19:07:36 +01:00