Commit graph

10975 commits

Author SHA1 Message Date
Yuki Okushi
119bbbe31a
Add test for issue-54067 2020-04-17 06:16:15 +09:00
Yuki Okushi
077a7f741f
Add test for issue-28575 2020-04-17 06:16:14 +09:00
Yuki Okushi
9fb3f55211
Add test for issue-24843 2020-04-17 06:16:14 +09:00
Eduard-Mihai Burtescu
f86f03263c outlives: ignore lifetimes shallowly found in ty::FnDefs. 2020-04-16 23:18:44 +03:00
Ralf Jung
250b27d996 bikeshed 2020-04-16 18:47:05 +02:00
Eduard-Mihai Burtescu
77f38dc284 ty: convert ErrorHandled::Reported to ConstKind::Error. 2020-04-16 19:00:30 +03:00
Ralf Jung
18d0907dcc Miri error messages: avoid try terminology 2020-04-16 17:41:28 +02:00
Matthias Schiffer
6c700dc11c
Extend UI tests for fixed check_attr()
Add testcases for the `#[track_caller]` and `#[target_feature(..)]`
function attributes for errors that were not not caught before.
2020-04-16 17:24:01 +02:00
Matthias Schiffer
9a2bca6a52
rustc: fix check_attr() for methods, closures and foreign functions
UI tests are updated with additional error messages that were missing
before.
2020-04-16 17:23:57 +02:00
Ana-Maria Mihalache
8f081d5b2b rustc_target::abi: add Primitive variant to FieldsShape. 2020-04-16 15:15:51 +00:00
Dylan DPC
e4ec7965ef
Rollup merge of #71141 - Duddino:master, r=estebank
Provide better compiler output when using `?` on `Option` in fn returning `Result` and vice-versa

Fixes #71089
2020-04-16 16:34:27 +02:00
Dylan DPC
33500a2bbf
Rollup merge of #70566 - jumbatm:exceeding-bitshifts-constprop, r=RalfJung
Don't bail out before linting in generic contexts.

Fixes #69021.

cc #70017

r? @RalfJung
2020-04-16 16:34:23 +02:00
Duddino
f36f78f571 Fixed issue with self: &Box<Self> 2020-04-16 14:05:57 +02:00
Duddino
da59b8ff65 fixed missing trait method suggests incorrect code (self parameter not named self) 2020-04-16 13:23:01 +02:00
Ralf Jung
69423bf049 test fast path offset reporting 2020-04-16 13:21:23 +02:00
Ralf Jung
0d01ce6a1b switch back to 'bytes' 2020-04-16 13:19:51 +02:00
Niko Matsakis
b8caef423d reserve variable for empty root region 2020-04-16 11:03:41 +00:00
Niko Matsakis
771fdd9985 enforce that R1: R2 requires univ(R1) <= univ(R2) 2020-04-16 11:03:41 +00:00
bors
4e4d49d60f Auto merge of #70831 - sfackler:shrink-future-stack, r=matthewjasper
Remove a stack frame from .await calls

The stack frames when `.await`ing one async fn from another currently look like this:

```
  12: foo:🅱️:{{closure}}
             at src/main.rs:2
  13: <core::future::from_generator::GenFuture<T> as core::future::future::Future>::poll
             at /home/sfackler/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/src/libcore/future/mod.rs:66
  14: core::future::poll_with_context
             at /home/sfackler/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/src/libcore/future/mod.rs:84
  15: foo:🅰️:{{closure}}
             at src/main.rs:6
```

Since the move away from using TLS to pass the Context around, it's now easy to remove frame 14 by removing poll_with_context in favor of calling Future::poll directly. This still leaves the `GenFuture` frame, but that seems significantly harder to deal with.

It also improves diagnostics a bit since they no longer talk about the private poll_with_context function.
2020-04-16 09:13:07 +00:00
Esteban Küber
f47c4ffdfa Do not ICE in the face of invalid enum discriminant 2020-04-15 10:22:51 -07:00
Amanieu d'Antras
ce83b49d16 Deprecate the asm! macro 2020-04-15 18:09:00 +01:00
Ralf Jung
9ee4d1aadc reword Miri validity errors: undefined -> uninitialized 2020-04-15 13:38:07 +02:00
Duddino
fbc4168d80 Provide better compiler output when using ? on Option in fn returning Result and vice-versa 2020-04-15 10:58:12 +02:00
bors
76cbf0053f Auto merge of #71151 - Dylan-DPC:rollup-6rt4h7b, r=Dylan-DPC
Rollup of 8 pull requests

Successful merges:

 - #70657 (Allow `try`-blocks in places where an open delim is expected)
 - #70947 (tighten CTFE safety net for accesses to globals)
 - #70949 (simplify `vec!` macro)
 - #71002 (fix target & runtool args order)
 - #71082 (ptr: introduce len() method on raw slices)
 - #71128 (Remove unused single_step flag)
 - #71133 (Tighten time complexity on the doc of sort_by_key)
 - #71135 (Update books)

Failed merges:

r? @ghost
2020-04-15 00:39:22 +00:00
jumbatm
ed73023a50 Update stderrs after rebase. 2020-04-15 09:35:46 +10:00
jumbatm
3e6609e7bf Amend exceeding-bitshifts test case for #69021.
- Change to warnings so that all lints are emitted
- Expect build-pass
- Change placeholder FIXME to WARN.
2020-04-15 08:58:45 +10:00
Josh Stone
8506bb0060 Update the minimum external LLVM to 8
LLVM 8 was released on March 20, 2019, over a year ago.
2020-04-14 12:44:41 -07:00
Duddino
ce994b633d Provide better compiler output when using ? on Option in fn returning Result and vice-versa 2020-04-14 20:50:26 +02:00
Eduard-Mihai Burtescu
8bb7b7bf9c typeck: always expose repeat count AnonConsts' parent in generics_of. 2020-04-14 20:13:20 +03:00
Eduard-Mihai Burtescu
8989029476 borrow_check/type_check: normalize Aggregate and Call operands. 2020-04-14 20:03:18 +03:00
Bastian Kauschke
81a3cd7278 allow try as scrutinee, e.g. match try ... 2020-04-14 18:39:20 +02:00
Eduard-Mihai Burtescu
38d38349f3 typeck: workaround WF hole in to_const. 2020-04-14 19:31:31 +03:00
Eduard-Mihai Burtescu
2bbc33aaf0 typeck: track any errors injected during writeback and taint tables appropriately. 2020-04-14 19:06:52 +03:00
bors
a3ef360368 Auto merge of #70679 - tmandry:issue-68112, r=nikomatsakis
Improve async-await/generator obligation errors in some cases

Fixes #68112.

This change is best read one commit at a time (I add a test at the beginning and update it in each change after).

The `test2` function is a case I found while writing the test that we don't handle with this code yet. I don't attempt to fix it in this PR, but it's a good candidate for future work.

r? @davidtwco, @nikomatsakis
2020-04-14 06:47:38 +00:00
bors
513a6473d6 Auto merge of #70643 - Rustin-Liu:rustin-patch-rename, r=eddyb
Rename AssocKind::Method to AssocKind::Fn

Part of https://github.com/rust-lang/rust/issues/60163.

https://github.com/rust-lang/rust/issues/60163#issuecomment-607284413
2020-04-14 03:11:12 +00:00
Tyler Mandry
4326d959f4 Update test after rebase 2020-04-13 19:14:26 -07:00
Tyler Mandry
df64c5d260 Incorporate feedback into diagnostics 2020-04-13 18:58:17 -07:00
Tyler Mandry
e340375ef8 Don't double-annotate the same Span 2020-04-13 18:58:17 -07:00
Tyler Mandry
aed7c30e4f Use clearer message when obligation is caused by await expr 2020-04-13 18:58:11 -07:00
Tyler Mandry
6edfd66c5d Use "generator" instead of "future" when appropriate 2020-04-13 18:48:55 -07:00
Tyler Mandry
7127ff3d94 Don't annotate type when type is opaque 2020-04-13 18:48:55 -07:00
Tyler Mandry
db0a5a1056 Improve span label 2020-04-13 18:48:55 -07:00
Tyler Mandry
a40ec13262 Add test for #68112 (existing output) 2020-04-13 18:48:55 -07:00
Dylan DPC
dd27462ea9
Rollup merge of #71109 - lcnr:generics_in_const_fn, r=eddyb
allow const generics in const fn

This was explicitly forbidden before. As we were unable to think of a reason
why this should still be the case, this check has been removed.

r? @eddyb
cc @varkor @Centril
2020-04-14 01:24:18 +02:00
Dylan DPC
e261ef0622
Rollup merge of #71103 - samrat:tait-sized, r=estebank
Add test case for type aliasing `impl Sized`

Fixes #71085
2020-04-14 01:24:16 +02:00
Rustin-Liu
b07e7fe047 Rename AssocKind::Method to AssocKind::Fn
Rename fn_has_self_argument to fn_has_self_parameter

Rename AssocItemKind::Method to AssocItemKind::Fn

Refine has_no_input_arg

Refine has_no_input_arg

Revert has_no_input_arg

Refine suggestion_descr

Move as_def_kind into AssocKind

Signed-off-by: Rustin-Liu <rustin.liu@gmail.com>

Fix tidy check issue

Signed-off-by: Rustin-Liu <rustin.liu@gmail.com>
2020-04-14 07:12:07 +08:00
Bastian Kauschke
50eb39757e allow const generics in const fn 2020-04-13 22:37:20 +02:00
bors
8e18e26f12 Auto merge of #71105 - Dylan-DPC:rollup-nezezxr, r=Dylan-DPC
Rollup of 5 pull requests

Successful merges:

 - #70656 (Improve scrollbar display in rustdoc)
 - #71051 (Suggest .into() over try_into() when it would work)
 - #71087 (Remove `FnCtxt::impl_self_ty`)
 - #71097 (Pattern docs)
 - #71101 (Miri: let machine hook dynamically decide about alignment checks)

Failed merges:

r? @ghost
2020-04-13 19:47:23 +00:00
Dylan DPC
fd1b057004
Rollup merge of #71087 - JohnTitor:impl-self-ty, r=eddyb
Remove `FnCtxt::impl_self_ty`

Fixes #69489
r? @eddyb cc @Centril
2020-04-13 20:23:30 +02:00
Dylan DPC
f551d8a410
Rollup merge of #71051 - ryr3:fix_try_into, r=estebank
Suggest .into() over try_into() when it would work

It would be better to suggest x.into() instead, which is shorter, cannot fail, and doesn't require importing a trait.
Tests have been added and made up to date.
Fixes #70851
2020-04-13 20:23:29 +02:00