Commit graph

3776 commits

Author SHA1 Message Date
Scott McMurray
003c4ffa83 Allow both explicit and elided lifetimes in the same impl header
(While still prohibiting explicit and in-band in the same header.)
2018-09-22 01:45:42 -07:00
Pietro Albini
0bf52b3a5b
Rollup merge of #54413 - memoryruins:deref-error-twice, r=estebank
Add UI test for deref recursion limit printing twice

Closes #38940

Does ``NOTE`` in the test need to be changed to ``HELP`` if its in the stderr?
``help: consider adding a `#![recursion_limit="20"]` attribute to your crate``

It doesn't appear to complaining locally that the line isn't set to ``HELP`` in the test, and the guide says
 > HELP and SUGGESTION*
> * Note: SUGGESTION must follow immediately after HELP.

yet there's no concrete suggestion emitted.

r? @estebank
2018-09-22 09:56:39 +02:00
Pietro Albini
1eee532eff
Rollup merge of #54409 - estebank:remove-in, r=pnkfelix
Detect `for _ in in bar {}` typo

Fix #36611, #52964, without modifying the parsing of emplacement `in` to avoid further problems like #50832.
2018-09-22 09:56:37 +02:00
Pietro Albini
822c51121e
Rollup merge of #54261 - varkor:dyn-keyword-2018, r=petrochenkov
Make `dyn` a keyword in the 2018 edition

Proposed in https://github.com/rust-lang/rust/issues/44662#issuecomment-421596088.
2018-09-22 09:56:27 +02:00
Eduard-Mihai Burtescu
fa2c246384 Stabilize crate_in_paths, extern_absolute_paths and extern_prelude on all editions. 2018-09-22 09:26:40 +03:00
Esteban Küber
06d577d8b2 Detect for _ in in bar {} typo 2018-09-20 22:40:44 -07:00
memoryruins
70da203259 Remove incidental notes 2018-09-20 22:07:57 -04:00
memoryruins
d341b177ae Add test for deref recursion limit printing twice 2018-09-20 21:14:05 -04:00
Rémy Rakic
3bdba74ed3 Disable rustfix temporarily on extern-const.rs
`src/test/ui/extern/extern-const.rs` seems to have an inconsistent behaviour across build configurations, possibly non-deterministically. This is tracked in issue 54388.

For this PR, disable running rustfix on it because it failed on CI, until that issue is fixed.
2018-09-20 23:22:42 +02:00
Mazdak Farrokhzad
924a69373d debug_macro: --bless tests. 2018-09-20 17:51:26 +02:00
Mazdak Farrokhzad
1d2a1bfa7d dbg_macro: notes about VCS and log::debug!(..) 2018-09-20 17:39:09 +02:00
Mazdak Farrokhzad
a9d2f38432 dbg_macro: output tests. 2018-09-20 17:39:09 +02:00
Mazdak Farrokhzad
6d08821271 dbg_macro: Debug-required test. 2018-09-20 17:39:09 +02:00
Mazdak Farrokhzad
cbb81bd856 dbg_macro: feature gate + move semantics test. 2018-09-20 17:39:09 +02:00
kennytm
ec085962c6
Rollup merge of #54367 - spastorino:add-thread-local-static-borrow-test, r=pnkfelix
Add regression test for thread local static mut borrows

FIXME(#54366) - We probably shouldn't allow `#[thread_local] static mut` to get a `'static` lifetime, but for now, we should at least test the behavior that `rustc` currently has.
2018-09-20 23:28:08 +08:00
kennytm
cf06e03506
Rollup merge of #54292 - memoryruins:issue-53712, r=estebank
Suggest array indexing when tuple indexing on an array

Closes #53712

r? @varkor
cc @estebank
2018-09-20 21:36:26 +08:00
bors
f7f4c500b4 Auto merge of #54255 - spastorino:use-of-moved-value-error, r=nikomatsakis
Inspect parents paths when checking for moves

Closes #52669
2018-09-20 09:02:46 +00:00
Scott McMurray
d5b562d4fc Improve error checking and reporting
- Check for valid attributes more reliably
- Don't bloat the error index for boring errors
- Do use real error codes for the interesting ones
2018-09-19 22:31:30 -07:00
Scott McMurray
2187e7a2c3 Enforce that #[marker] traits cannot have associated items 2018-09-19 22:31:30 -07:00
Scott McMurray
7cee7eee72 Require that marker impls are empty, but allow them to overlap 2018-09-19 22:31:30 -07:00
Scott McMurray
6149a83c0b Parse, feature-gate, and validate the #[marker] attribute 2018-09-19 22:31:30 -07:00
Santiago Pastorino
ae42e537db
Add regression test for thread local static mut borrows 2018-09-19 17:54:24 -03:00
Matthew Jasper
bd0895d7d0 Update ui tests 2018-09-19 20:50:09 +01:00
Matthew Jasper
6e425219f1 Don't claim that locals in a function are declared outside of the
function body
2018-09-19 19:52:55 +01:00
Matthew Jasper
fcd0cd0ade Don't try to use a path to a type alias as a path to the adt it aliases 2018-09-19 19:52:55 +01:00
Matthew Jasper
b210b3168a Make the span of the MIR return place point to the return type 2018-09-19 19:52:55 +01:00
Felix S. Klock II
3feffd48bd Regression test for rust-lang/rust#22323. 2018-09-19 14:33:11 +02:00
bors
4f3ff5a97b Auto merge of #54101 - osa1:issue_54099, r=nikomatsakis
Fix camel case type warning for types with trailing underscores

Fixes #54099
2018-09-19 09:20:36 +00:00
Diogo Sousa
2d7edf908d Use full name to identify a macro in a FileName.
Before this two macros with same name would be indistinguishable inside a
`FileName`.  This caused a bug in incremental compilation (see #53097) since
two different macros would map out to the same `StableFilemapId`.

Fixes #53097.
2018-09-19 01:12:13 +01:00
bors
8f376771cf Auto merge of #53995 - davidtwco:issue-53807, r=nikomatsakis
NLL: Deduplicate errors for incorrect move in loop

Fixes #53807.

r? @nikomatsakis
2018-09-19 00:01:51 +00:00
memoryruins
73fdc81b39 Use expr's span 2018-09-18 15:35:04 -04:00
memoryruins
dff1bc1260 Set diagnostic applicability based on array length 2018-09-18 14:41:34 -04:00
Remy Rakic
ab236dfc86 Update NLL 3-point error message for fake reads in optimized let patterns 2018-09-18 14:36:37 +02:00
David Wood
88ca3412e2
Switched from FxHashMap to BTreeMap to preserve ordering when iterating. 2018-09-18 13:55:27 +02:00
David Wood
783bad4295
De-duplicate moved variable errors.
By introducing a new map that tracks the errors reported and the
`Place`s that spawned those errors against the move out that the error
was referring to, we are able to silence duplicate errors by emitting
only the error which corresponds to the most specific `Place` (that which
other `Place`s which reported errors are prefixes of).

This generally is an improvement, however there is a case -
`liveness-move-in-while` - where the output regresses.
2018-09-18 13:51:41 +02:00
bors
79fcc58b24 Auto merge of #54034 - pnkfelix:issue-15287-bind-by-move-pattern-guards, r=nikomatsakis
Add feature to enable bind by move pattern guards

Implement #15287 as described on https://github.com/rust-lang/rust/issues/15287#issuecomment-404827419
2018-09-18 11:39:51 +00:00
bors
f004cae536 Auto merge of #54319 - GuillaumeGomez:rollup, r=GuillaumeGomez
Rollup of 9 pull requests

Successful merges:

 - #53522 (Add doc for impl From for Addr)
 - #54097 (rustdoc: Remove namespace for keywords)
 - #54205 (Add treat-err-as-bug flag in rustdoc)
 - #54225 (Regression test for rust-lang/rust#53675.)
 - #54232 (add `-Z dont-buffer-diagnostics`)
 - #54273 (Suggest to change numeric literal instead of casting)
 - #54299 (Issue 54246)
 - #54311 (Remove README with now-out-of-date docs about docs.)
 - #54313 (OsStr: Document that it's not NUL terminated)

Failed merges:

r? @ghost
2018-09-18 09:06:42 +00:00
Guillaume Gomez
50b9694af9
Rollup merge of #54299 - snaedis:issue-54246, r=varkor
Issue 54246

I added the option of providing a help message for deprecated features, that takes precedence over the default `help: remove this attribute` message, along with messages for the features that mention replacements in the reason for deprecation.

Fixes #54246.
2018-09-18 10:21:41 +02:00
Guillaume Gomez
5f1a123c20
Rollup merge of #54273 - csmoe:lint_ty_lit, r=estebank
Suggest to change numeric literal instead of casting

Closes #54160
r? @estebank
2018-09-18 10:21:40 +02:00
Guillaume Gomez
cdd90343b3
Rollup merge of #54225 - pnkfelix:issue-53675-add-test-called-panic, r=petrochenkov
Regression test for rust-lang/rust#53675.

(Includes a couple variations on the theme. I confirmed that the ones
in `in_expression_position` and `what_if_we_use_panic_directly_in_expr`
both failed back on "rustc 1.30.0-nightly (0f063aef6 2018-09-03)".)

Fix #53675
2018-09-18 10:21:37 +02:00
bors
36c0ee97b9 Auto merge of #53900 - davidtwco:issue-53771, r=nikomatsakis
NLL regresses diagnostic for impl-trait/static-return-lifetime-infered.rs

Fixes #53771.

r? @nikomatsakis
cc @pnkfelix @estebank
2018-09-18 06:24:56 +00:00
Felix S. Klock II
e3b611f619 Regression test for this particular change. 2018-09-18 02:06:45 +02:00
Felix S. Klock II
673cd6efbe Updates to tests reflecting the diangostic changes in previous commit.
It is worth pointing out that the reason that so few diagnostics are
effected is because of the filter I put in where it only goes down the
new path if the borrowed place is *not* a prefix of the dropped place.

(Without that filter, a *lot* of the tests would need this change, and
it would probably be a net loss for the UX, since you'd see it even in
cases like borrows of generic types where there is no explicit mention
of `Drop`.)
2018-09-18 02:06:45 +02:00
Santiago Pastorino
e9029cec7b
Inspect parents paths when checking for moves 2018-09-17 13:38:04 -03:00
Alva Snædís
79da7a0a2f libsyntax: add optional help message for deprecated features 2018-09-17 16:09:23 +00:00
memoryruins
30556d592e Suggest array indexing when tuple indexing on an array. 2018-09-17 09:09:45 -04:00
Alva Snædís
e4e4039c5b libsyntax: fix casing in error message 2018-09-17 12:12:37 +00:00
Felix S. Klock II
3a07d3dbd6 On nightly with NLL, suggest #![feature(bind_by_move_pattern_guards)] when it might fix the code. 2018-09-17 13:46:50 +02:00
Felix S. Klock II
c50884c615 Tests for feature(bind_by_move_pattern_guards).
Apparently copyright notices are no longer necessary apparently.
(See #43498 and #53654.)
2018-09-17 13:46:50 +02:00
csmoe
2fb6585f33 add test for float/integer 2018-09-17 14:26:58 +08:00