Shiqing
e1d27eb73c
Reduce span to function name in unreachable calls
2019-09-07 00:16:11 +08:00
Mazdak Farrokhzad
afc7e0e9d3
Rollup merge of #64157 - gilescope:opaque-type-location, r=cramertj,Centril
...
Opaque type locations in error message for clarity.
Attempts to fix #63167
2019-09-05 12:11:19 +02:00
Mazdak Farrokhzad
59237ec665
Rollup merge of #64083 - estebank:tweak-e0308, r=oli-obk
...
Point at appropriate arm on type error on if/else/match with one non-! arm
Fix https://github.com/rust-lang/rust/issues/61281 .
2019-09-05 12:11:16 +02:00
Mazdak Farrokhzad
2238d19515
Rollup merge of #64063 - JohnTitor:fix-const-err, r=oli-obk
...
Fix const_err with `-(-0.0)`
Fixes #64059
r? @oli-obk
2019-09-05 12:11:14 +02:00
Giles Cope
9483db5052
Opaque type locations in error message for clarity.
2019-09-05 06:32:53 +01:00
Mazdak Farrokhzad
57ffc83312
Rollup merge of #64128 - Centril:unused-parens-pat, r=davidtwco
...
unused_parens: account for or-patterns and `&(mut x)`
Fixes https://github.com/rust-lang/rust/issues/55342 .
Fixes https://github.com/rust-lang/rust/issues/64106 .
cc https://github.com/rust-lang/rust/issues/54883
cc https://github.com/rust-lang/rust/pull/64111
r? @oli-obk
2019-09-05 03:59:48 +02:00
Mazdak Farrokhzad
8ef11fcf4b
Rollup merge of #64110 - estebank:receiver-type, r=Centril
...
Refer to "`self` type" instead of "receiver type"
Fix https://github.com/rust-lang/rust/issues/42603 .
2019-09-05 03:59:44 +02:00
Mazdak Farrokhzad
fe1c1f8c36
Rollup merge of #64043 - matthewjasper:underscore-import-tests, r=alexcrichton
...
Add some more tests for underscore imports
2019-09-05 03:59:42 +02:00
Mazdak Farrokhzad
9024032591
Rollup merge of #64038 - matthewjasper:deny-mutual-impl-trait-recursion, r=varkor
...
Check impl trait substs when checking for recursive types
closes #64004
2019-09-05 03:59:40 +02:00
Mazdak Farrokhzad
07a28338fa
Rollup merge of #64031 - Centril:param-attrs-no-macros-test, r=nikomatsakis
...
Harden `param_attrs` test wrt. usage of a proc macro `#[attr]`
The `param-attrs-builtin-attrs.rs` test file uses the `#[test]` attribute which should cover this but `#[test]` isn't a proc macro attribute so we add another test to be on the safe side. This intends to address https://github.com/rust-lang/rust/pull/64010#issuecomment-526564316 .
r? @nikomatsakis
cc @c410-f3r @petrochenkov
cc https://github.com/rust-lang/rust/issues/60406
2019-09-05 03:59:39 +02:00
bors
6c18a3d775
Auto merge of #63825 - nathanwhit:check-run-results, r=Mark-Simulacrum
...
Allow checking of run-pass execution output in compiletest
Closes #63751
Adds a `check-run-results` flag to compiletest headers, which if enabled checks the output of the execution of a run-pass test's binary against expected output.
2019-09-04 11:37:37 +00:00
Yuki Okushi
41deb83549
Add compile flag
2019-09-04 18:32:00 +09:00
Esteban Küber
4a79633ad2
review comments
2019-09-03 08:05:54 -07:00
Mazdak Farrokhzad
e85b181638
unused_parens: fix for or-patterns + &(mut x)
2019-09-03 15:33:30 +02:00
Mazdak Farrokhzad
24e3b1d0d3
Rollup merge of #64104 - Mark-Simulacrum:intrinsic-fn-ptr-ice, r=estebank
...
Emit error on intrinsic to fn ptr casts
I'm not sure if a type error is the best way of doing this but it seemed like a relatively correct place to do it, and I expect this is a pretty rare case to hit anyway.
Fixes #15694
2019-09-03 14:27:05 +02:00
Mazdak Farrokhzad
56d00e388b
Rollup merge of #64056 - estebank:arbitrary-self-types, r=Centril
...
Account for arbitrary self types in E0599
Fix https://github.com/rust-lang/rust/issues/62373
2019-09-03 14:27:00 +02:00
Mazdak Farrokhzad
4245be7fb3
Rollup merge of #64049 - estebank:if-else-type-err, r=Centril
...
Emit a single error on if expr with expectation and no else clause
Fix https://github.com/rust-lang/rust/issues/60254 .
r? @Centril
2019-09-03 14:26:58 +02:00
Esteban Küber
efe85943b3
account for DUMMY_SP and correct wording
2019-09-02 22:11:29 -07:00
Esteban Küber
c1e5e5c567
On object safety violation, point at source when possible
2019-09-02 20:22:22 -07:00
Esteban Küber
3ea932ab0e
Refer to "self type" instead of "receiver type"
2019-09-02 19:07:04 -07:00
Esteban Küber
c430d743e9
Add match test cases
2019-09-02 17:37:50 -07:00
Mark Rousskov
dd323f8a72
Emit error on intrinsic to fn ptr casts
2019-09-02 17:28:37 -04:00
bors
9af17757be
Auto merge of #63692 - iluuu1994:issue-49660, r=sfackler
...
Test that Wrapping arithmetic ops are implemented for all int types
Closes #49660
2019-09-02 15:32:08 +00:00
Esteban Küber
334d465732
Point at appropriate arm on type error on if/else/match with one non-! arm
2019-09-01 20:15:49 -07:00
Yuki Okushi
a937d8cdeb
Fix tests again
2019-09-02 05:01:39 +09:00
Yuki Okushi
0cd9c1623f
Fix condition and tests' flags
2019-09-02 03:40:35 +09:00
Yuki Okushi
8e9825aeb9
Fix overflow_check
2019-09-02 03:06:11 +09:00
bors
dfd43f0fdd
Auto merge of #63870 - estebank:async-fn-call, r=oli-obk
...
Suggest call fn ctor passed as arg to fn with type param bounds
_Reviewer note: the relevant changes are in the second commit, the first is simple and mechanical, but verbose._
When forgetting to call a fn in an argument position to an fn that has a generic bound:
```rust
async fn foo() {}
fn bar(f: impl Future<Output=()>) {}
fn main() {
bar(foo); // <- should be `bar(foo());`
}
```
suggest calling it:
```
error[E0277]: the trait bound `fn() -> impl std::future::Future {foo}: std::future::Future` is not satisfied
--> $DIR/async-fn-ctor-passed-as-arg-where-it-should-have-been-called.rs:9:5
|
LL | fn bar(f: impl Future<Output=()>) {}
| --------------------------------- required by `bar`
...
LL | bar(foo);
| ^^^ the trait `std::future::Future` is not implemented for `fn() -> impl std::future::Future {foo}`
|
= help: it looks like you forgot to use parentheses to call the function: `foo()`
```
Fix #63100 . Follow up to #63833 and #63337 .
2019-09-01 18:04:49 +00:00
Yuki Okushi
4a0872b37e
Add overflow_check check
2019-09-02 02:18:16 +09:00
Yuki Okushi
3a6aadaa8c
Add opt-level check
2019-09-02 01:05:38 +09:00
Yuki Okushi
35c9e5f122
Fix const_err with -(-0.0)
2019-09-01 22:05:50 +09:00
Esteban Küber
a9ce33c059
Account for arbitrary self types in E0599
2019-09-01 02:22:42 -07:00
Esteban Küber
e553051950
review comment
2019-09-01 02:22:03 -07:00
Esteban Küber
cab607edcf
Emit a single error on if expr with expectation and no else clause
2019-08-31 18:34:50 -07:00
Esteban Küber
aee6cd937a
Fix nll tests
2019-08-31 13:40:20 -07:00
Matthew Jasper
754a875e15
Add some more tests for underscore imports
2019-08-31 16:50:39 +01:00
Matthew Jasper
877faf3844
Check impl trait substs when checking for recursive types
...
This prevents mutual `async fn` recursion
2019-08-31 15:44:09 +01:00
Matthew Jasper
7bb2d8b076
Slightly clean up the error for recursive async fn
...
* Make it clear that type erasure is required, not just pointer
indirection.
* Don't make the message specific to direct recursion.
2019-08-31 15:43:24 +01:00
Matthew Jasper
c621919deb
Kill borrows from assignments after generating new borrows
2019-08-31 15:35:20 +01:00
Esteban Küber
5384d5584f
Suggest call fn ctor passed as arg to fn with type param bounds
2019-08-31 00:14:23 -07:00
Esteban Küber
444bc3ca66
Use span label instead of note for cause in E0631
2019-08-31 00:14:23 -07:00
bors
b3146549ab
Auto merge of #63991 - Centril:unique-improper-ctype, r=rkruppe
...
`improper_ctypes`: guard against accidental change to `Unique<T>`
r? @eddyb
2019-08-31 06:38:46 +00:00
Mazdak Farrokhzad
5187a3e157
Harden param_attrs test wrt. usage of proc macro attrs.
2019-08-31 07:08:23 +02:00
Mazdak Farrokhzad
960ecdce7c
improper_ctypes: guard against accidental change to Unique<T>.
2019-08-31 02:42:28 +02:00
bors
fd68d023f4
Auto merge of #64026 - Centril:rollup-le667lp, r=Centril
...
Rollup of 7 pull requests
Successful merges:
- #62957 (Match the loop examples)
- #63600 (Merge oli-obk mail addresses)
- #63684 (Constify LinkedList new function)
- #63847 ([rustdoc] Fix system theme detection)
- #63999 (Add missing links on AsRef trait)
- #64014 ( miri: detect too large dynamically sized objects )
- #64015 (some const-eval test tweaks)
Failed merges:
r? @ghost
2019-08-30 21:31:01 +00:00
Mazdak Farrokhzad
d997596445
Rollup merge of #64015 - RalfJung:const-tests, r=oli-obk
...
some const-eval test tweaks
Best reviewed commit-by-commit.
r? @oli-obk
2019-08-30 23:08:07 +02:00
Mazdak Farrokhzad
1dc8b2304f
Rollup merge of #64014 - RalfJung:miri-slice, r=oli-obk
...
miri: detect too large dynamically sized objects
Needed to make https://github.com/rust-lang/miri/pull/929 pass.
r? @oli-obk
2019-08-30 23:08:06 +02:00
bors
4295eea903
Auto merge of #63982 - sam09:fix-63976, r=estebank
...
When accessing private field of union, do not misidentify it as a struct
Fix incorrect error message when accessing private field of union.
Fixes #63976 .
2019-08-30 17:54:55 +00:00
Ralf Jung
bb3474994b
add test
2019-08-30 15:04:12 +02:00
Ilija Tovilo
55800ce899
Skip wrapping arithmetic tests on emscripten for 128 bit integers
2019-08-30 14:10:46 +02:00