Commit Graph

103225 Commits

Author SHA1 Message Date
bors
a7d791b450 Auto merge of #66646 - RalfJung:unwind_to_block, r=oli-obk
refactor goto_block and also add unwind_to_block

r? @oli-obk
2019-11-26 20:38:47 +00:00
Dylan MacKenzie
a626bf68b8 Remove test for #66758 2019-11-26 12:13:15 -08:00
Mark Rousskov
2299586ffc Move ErrorReported to rustc_errors 2019-11-26 14:57:07 -05:00
Dylan MacKenzie
582affd657 Add regression test for #66756 2019-11-26 11:37:16 -08:00
Dylan MacKenzie
2626cfbb58 Allow Unreachable terminators behind const_if_match 2019-11-26 11:36:53 -08:00
Janusz Marcinkiewicz
5c34a11324 Refactor 'parse_enum_item' to use 'parse_delim_comma_seq' 2019-11-26 19:24:36 +01:00
Joshua Nelson
f1f83ef8f8
Test multiple variants
Co-Authored-By: Mazdak Farrokhzad <twingoow@gmail.com>
2019-11-26 12:37:55 -05:00
Camille GILLOT
144d1c2171 Review nits. 2019-11-26 17:20:32 +01:00
bors
797fd92628 Auto merge of #66776 - Mark-Simulacrum:revert-try-breakage, r=Mark-Simulacrum
Revert "DO NOT MERGE: enable windows try builder"

This reverts commit 90a37bce44.
2019-11-26 16:03:50 +00:00
Mara Bos
d220ed4fd7 Add tracking issue number. 2019-11-26 16:32:46 +01:00
Mara Bos
fd9b986bfe Add core::{f32,f64}::consts::TAU. 2019-11-26 16:32:46 +01:00
Guanqun Lu
55d725884b follow the same function order in the trait
This removes several warnings in IDE.
2019-11-26 22:55:38 +08:00
Nadrieril
0881750173 Move tests to ui, split them and add some 2019-11-26 14:53:54 +00:00
Nadrieril
cdc844e81f Make the ice a fatal error 2019-11-26 14:32:47 +00:00
Mark Rousskov
47b3d4d8c9 Revert "DO NOT MERGE: enable windows try builder"
This reverts commit 90a37bce44.
2019-11-26 08:06:13 -05:00
Guillaume Gomez
2af8cd2de8 Clean up E0075 long explanation 2019-11-26 13:47:45 +01:00
Guillaume Gomez
77ecb6d44a Clean up E0072 long explanation 2019-11-26 13:40:48 +01:00
bors
1dc3686f8b Auto merge of #66631 - michaelwoerister:additional-pgo-tests, r=alexcrichton
Add additional regression tests for PGO

This PR adds regression tests for making sure that
- instrumentation records the right counts for branches taken and functions called, and that
- the indirect call promotion pass actually is able to promote indirect calls.

r? @alexcrichton
2019-11-26 12:35:39 +00:00
Camille GILLOT
68b1ac9874 Reduce righward drift. 2019-11-26 12:23:35 +01:00
Michael Woerister
34fbc718d1 PGO: Make branch-weights regression test more robust. 2019-11-26 10:34:48 +01:00
Ralf Jung
babe9fcbc1 rename update_count_then_panic -> rust_panic_without_hook 2019-11-26 10:23:15 +01:00
Ralf Jung
4a19ef938c explain why __rust_start_panic does not take a Box 2019-11-26 09:29:39 +01:00
Ralf Jung
61486f4de3 expand comment 2019-11-26 09:27:11 +01:00
Ralf Jung
3e96ca2bf7 abort on BoxMeUp misuse 2019-11-26 09:24:39 +01:00
Ralf Jung
3a8e1b63cf panic_handler -> begin_panic_handler (and more comments) 2019-11-26 08:21:51 +01:00
bors
0f6f66fcdc Auto merge of #66561 - TimoFreiberg:trait-name-report, r=estebank
Add version mismatch help message for unimplemented trait

Improves issue #22750

The error reporting for E0277 (the trait `X` is not implemented for `Foo`)
now checks whether `Foo` implements a trait with the same path as `X`,
which probably means that the programmer wanted to actually use only one
version of the trait `X` instead of the two.

Still open:
* the same diagnostic should be added for [the trait method case](https://github.com/rust-lang/rust/issues/22750#issuecomment-372077056)
* Showing the real crate versions would be nice, but rustc currently doesn't have that information [according to Esteban](https://rust-lang.zulipchat.com/#narrow/stream/131828-t-compiler/topic/diagnostics.20for.20crate.20version.20mismatch/near/180572989)
2019-11-26 05:07:02 +00:00
bors
2626f3d3d5 Auto merge of #66522 - tmiasko:sanitize-flags, r=alexcrichton
Add support for sanitizer recover and tracking origins of uninitialized memory

* Add support for sanitizer recovery `-Zsanitizer-recover=...` (equivalent to `-fsanitize-recover` in clang).
* Add support for tracking origins of uninitialized memory in MemorySanitizer `-Zsanitizer-memory-track-origins` (equivalent to `-fsanitize-memory-track-origins` in clang).
2019-11-26 01:54:53 +00:00
Joshua Nelson
37f440fd9a Add wildcard test for const_if_match
Closes https://github.com/rust-lang/rust/issues/66758
2019-11-25 19:44:35 -05:00
Parth Mehrotra
395408ec18
Update documentation-tests.md 2019-11-25 19:34:32 -05:00
Ralf Jung
3c48579551 more panicking comments 2019-11-25 23:55:54 +01:00
Christopher Durham
f8a4b6d2ba
impl TrustedLen for vec::Drain 2019-11-25 17:55:26 -05:00
bors
483a83b6e6 Auto merge of #66178 - Aaron1011:fix/opaque-normalize, r=varkor
Fix opaque types resulting from projections in function signature

When we normalize the types in a function signature, we may end up
resolving a projection to an opaque type (e.g. `Self::MyType` when
we have `type MyType = impl SomeTrait`). When the projection is
resolved, we will instantiate the generic parameters into fresh
inference variables.

While we do want to normalize projections to opaque types, we don't want
to replace the explicit generic parameters (e.g. `T` in `impl
MyTrait<T>`) with inference variables. We want the opaque type in the
function signature to be eligible to be a defining use of that opaque
type - adding inference variables prevents this, since the opaque type
substs now appears to refer to some specific type, rather than a generic
type.

To resolve this issue, we inspect the opaque types in the function
signature after normalization. Any inference variables in the substs are
replaced with the corresponding generic parameter in the identity substs
(e.g. `T` in `impl MyTrait<T>`). Note that normalization is the only way
that we can end up with inference variables in opaque substs in a
function signature - users have no way of getting inference variables
into a function signature.

Note that all of this refers to the opaque type (ty::Opaque) and its
subst - *not* to the underlying type.

Fixes #59342
2019-11-25 22:45:50 +00:00
Ralf Jung
d0b983307b review feedback: comments and spacing 2019-11-25 22:45:00 +01:00
Ralf Jung
6797d52ee0 make sure we handle all transmute invocations, including diverging ones 2019-11-25 22:37:31 +01:00
Esteban Küber
5ea922aec4 Various cleanups 2019-11-25 13:30:52 -08:00
Esteban Küber
85fb054fef Tweak removed feature error 2019-11-25 13:30:52 -08:00
Esteban Küber
5ef47160e8 Tweak bad continue error 2019-11-25 13:30:52 -08:00
Esteban Küber
3893d16341 Tweak duplicate matcher binding error 2019-11-25 13:30:52 -08:00
Esteban Küber
1eeed17c9e Tweak duplicate fmt arg error 2019-11-25 13:30:52 -08:00
Esteban Küber
9c97d73a2d Tweak move error due to non-Copy 2019-11-25 13:30:52 -08:00
Esteban Küber
9a595417a2 Tweak multiple allocators error 2019-11-25 13:30:48 -08:00
Ralf Jung
b91bf7a334 miri: couple ret place and ret block together (they both exist or both don't) 2019-11-25 22:00:58 +01:00
yuyoyuppe
e846ea1112
Use LLVMDisposePassManager instead of raw delete in rustllvm 2019-11-25 23:52:10 +03:00
Esteban Küber
00fe97ad0e Fix capitalization when mentioning different crate versions in E0308 2019-11-25 12:38:45 -08:00
bors
a44774c3a9 Auto merge of #66739 - pietroalbini:rollup-2t2pd4a, r=pietroalbini
Rollup of 7 pull requests

Successful merges:

 - #65613 (Preserve whitespace inside one-backtick codeblocks)
 - #66512 (Add unix::process::CommandExt::arg0)
 - #66569 (GitHub Actions: preparations, part 1)
 - #66678 (Remove useless line for error index generation)
 - #66684 (Drive-by cleanup in region naming)
 - #66694 (Add some comments to panic runtime)
 - #66698 (tidy: Remove unused import)

Failed merges:

r? @ghost
2019-11-25 19:37:54 +00:00
Nadrieril
b5ec4d1183 Address reviews 2019-11-25 18:23:09 +00:00
Camille GILLOT
9d5f721406 Superfluous lifetime. 2019-11-25 18:36:18 +01:00
Camille GILLOT
8ffc9444a3 Don't move stuff out of Compiler::enter. 2019-11-25 18:36:05 +01:00
Camille GILLOT
7d01b6ccf0 Simplify early exits. 2019-11-25 18:13:35 +01:00
Camille GILLOT
ea1b8039ad Pass Queries by reference. 2019-11-25 18:13:29 +01:00