Commit graph

21441 commits

Author SHA1 Message Date
kennytm
82cdbf1d3a
Rollup merge of #52507 - estebank:infer-type, r=nikomatsakis
Reword when `_` couldn't be inferred

r? @nikomatsakis
2018-07-22 22:10:11 +08:00
Oliver Schneider
233a6e13ca
Use correct exclusion comment 2018-07-22 14:44:17 +02:00
David Wood
c64db0078a
Fallback to general error handling in ICE cases. 2018-07-22 12:53:55 +01:00
David Wood
571eec627c
Improved closure errors. 2018-07-22 12:49:35 +01:00
David Wood
24c5751197
Classify aggregate rvalues as assignments. 2018-07-22 12:23:53 +01:00
bors
d3b3bc5767 Auto merge of #52368 - GuillaumeGomez:intra_doc_link_resolution_failure-documented, r=QuietMisdreavus
Add "self" intra-link support

Fixes #49583.

r? @QuietMisdreavus
2018-07-22 10:48:15 +00:00
bors
aeca042f84 Auto merge of #52359 - matthewjasper:combine-move-error-reporting, r=pnkfelix
[NLL] Small move error reporting improvements

* Use a MirBorrowckContext when reporting errors to be more uniform with other error reporting
* Add a special message for the case of trying to move from capture variables in `Fn` and `FnMut` closures.

part of #51028
2018-07-22 08:52:05 +00:00
bors
3d51086303 Auto merge of #52394 - estebank:println, r=oli-obk
Improve suggestion for missing fmt str in println

Avoid using `concat!(fmt, "\n")` to improve the diagnostics being
emitted when the first `println!()` argument isn't a formatting string
literal.

Fix #52347.
2018-07-22 06:52:48 +00:00
Scott McMurray
c9482f724f Only run the test on x86_64
Smaller platforms don't merge the loads the same way.
2018-07-21 23:13:51 -07:00
Esteban Küber
9369b52b0f Do not suggest using to_owned() on &str += &str 2018-07-21 22:33:32 -07:00
Scott McMurray
e6fc62a1ef Don't use SIMD in mem::swap for types smaller than the block size
LLVM isn't able to remove the alloca for the unaligned block in the SIMD tail in some cases, so doing this helps SRoA work in cases where it currently doesn't.  Found in the `replace_with` RFC discussion.
2018-07-21 21:43:37 -07:00
Zack M. Davis
6c50ee5abc dead-code lint: say "constructed" for structs
This is a sequel to November 2017's #46103 / 1a9dc2e9. It had been
reported (more than once—at least #19140, #44083, and #44565) that the
"never used" language was confusing for enum variants that were "used"
as match patterns, so the wording was changed to say never
"constructed" specifically for enum variants. More recently, the same
issue was raised for structs (#52325). It seems consistent to say
"constructed" here, too, for the same reasons.

We considered using more specific word "called" for unused functions
and methods (while we declined to do this in #46103, the rationale
given in the commit message doesn't actually make sense), but it turns
out that Cargo's test suite expects the "never used" message, and
maybe we don't care enough even to make a Cargo PR over such a petty
and subjective wording change.

This resolves #52325.
2018-07-21 18:30:33 -07:00
Esteban Küber
118b0f9a02 Fix tidy by adding new feature gate test 2018-07-21 17:58:05 -07:00
Esteban Küber
915ff0b969 fix logic bug 2018-07-21 17:17:49 -07:00
Guillaume Gomez
88f2643679 Add "self" intra-link support 2018-07-22 00:22:30 +02:00
bors
874dec25ed Auto merge of #52115 - Dylan-DPC:feature/nll-liveness-regions, r=nikomatsakis
only compute liveness for variables whose types include regions

Closes #52034

r? @nikomatsakis
2018-07-21 21:01:17 +00:00
Oliver Schneider
555a7b4e35
don't spawn processes on wasm 2018-07-21 22:59:40 +02:00
Esteban Küber
83a8af50bb Suggest space separated format str literal 2018-07-21 12:16:06 -07:00
Vadim Petrochenkov
79b5ebf576 Attach deprecation lint proc_macro_derive_resolution_fallback to a specific node id 2018-07-21 22:07:34 +03:00
bors
d9416587a4 Auto merge of #51959 - tmandry:make-implied-outlives-query, r=nikomatsakis
Turn implied_outlives_bounds into a query

Right now all this does is remove the error reporting in `implied_outlives_bounds`, which seems to work. Farming out full tests to Travis.

For #51649. That issue is deferred so not sure what's next.

r? @nikomatsakis
2018-07-21 18:51:13 +00:00
Matthew Jasper
d34924d824 update tests 2018-07-21 18:40:46 +01:00
Matthew Jasper
12412749ab Add specific message when moving from upvars in a non-FnOnce closure 2018-07-21 18:40:46 +01:00
Niko Matsakis
4fd5aed551 do not overwrite child def-id in place but rather remove/insert
When inserting a node N into the tree of impls, we sometimes find than
an existing node C should be replaced with N. We used to overwrite C
in place with the new def-id N -- but since the lists of def-ids are
separated by simplified type, that could lead to N being inserted in
the wrong place. This meant we might miss conflicts. We are now not
trying to be so smart -- we remove C and then add N later.
2018-07-21 19:07:47 +03:00
bors
942b384d61 Auto merge of #52405 - matthewjasper:mutability-errors, r=pnkfelix
[NLL] Mutability errors

cc #51028
cc #51170
cc #46559
Closes #46629

* Better explain why the place is immutable ("immutable item" is gone)
* Distinguish &T and *const T
* Use better spans when a mutable borrow is for a closure capture

r? @pnkfelix
2018-07-21 14:37:45 +00:00
dylan_DPC
0770ff0500 delete tests 2018-07-21 19:46:41 +05:30
Niko Matsakis
0d8f3b3628 we now get 2 extra mismatched type errors
These new errors actually seem a *tad* clearer than the old one, so
that's good, but now there are 3. Maybe call it a wash?
2018-07-21 15:56:49 +03:00
Niko Matsakis
596ff12432 add regression test for #52078
Fixes #52078
2018-07-21 15:56:47 +03:00
bors
ef9781358d Auto merge of #52555 - petrochenkov:mresfact, r=alexcrichton
resolve: Some renaming, refactoring and comments

Commits are self-descriptive.
The only functional change is 34bf2f572e that tightens shadowing rules for macro paths (makes the second and third cases in `test/ui/imports/glob-shadowing.rs` an error).
2018-07-21 10:30:11 +00:00
bors
17eb392cef Auto merge of #52535 - alexcrichton:update-stdsimd, r=Mark-Simulacrum
Update stdsimd to undo an accidental stabilization

Closes #52403
2018-07-21 06:26:18 +00:00
dylan_DPC
7db3324340 remove unwanted tests and a reference to it in comments 2018-07-21 11:42:44 +05:30
Alex Crichton
d77defcca1 Update stdsimd to undo an accidental stabilization
Closes #52403
2018-07-20 22:34:09 -07:00
bors
f8f6e7c04d Auto merge of #52536 - alexcrichton:attr-spans, r=nikomatsakis
proc_macro: Preserve spans of attributes on functions

This commit updates the tokenization of items which are subsequently passed to
`proc_macro` to ensure that span information is preserved on attributes as much
as possible. Previously this area of the code suffered from #43081 where we
haven't actually implemented converting an attribute to to a token tree yet, but
a local fix was possible here.

Closes #47941
2018-07-21 04:19:15 +00:00
Esteban Küber
8b59fbc951 fix grep test looking for newline 2018-07-20 15:37:49 -07:00
kennytm
863ed13c6c
Rollup merge of #52539 - alexcrichton:two-attrs, r=petrochenkov
rustc: Fix two custom attributes with custom derive

This commit fixes an issue where multiple custom attributes could not be fed
into a custom derive in some situations with the `use_extern_macros` feature
enabled. The problem was that the macro expander didn't consider that it was
making progress when we were deducing that attributes should be lumped in with
custom derive invocations.

The fix applied here was to track in the expander if our attribute is changing
(getting stashed away elsewhere and replaced with a new invocation). If it is
swapped then it's considered progress, otherwise behavior should remain the
same.

Closes #52525
2018-07-21 04:08:10 +08:00
kennytm
63da8122fb
Rollup merge of #52527 - ljedrz:cleanup_13973, r=oli-obk
Remove duplicate E0396 tests

Resolves FIXME #13973 (erroneously marked as #13972). A test for E0396 already exists in `test/ui/const-deref-ptr.rs`.
2018-07-21 04:08:09 +08:00
kennytm
1ed1b13090
Rollup merge of #52526 - ljedrz:cleanup_18800, r=alexcrichton
Enable run-pass/sepcomp-lib-lto.rs on Android

#18800 is fixed, so it should be safe to restore this test.
2018-07-21 04:08:07 +08:00
Matthew Jasper
a06b2433fc Update tests for new NLL mutability errors 2018-07-20 20:01:15 +01:00
Oliver Schneider
297ad72f12
Add trailing newline 2018-07-20 19:55:16 +02:00
Oliver Schneider
92fad0fa9e Add test 2018-07-20 19:35:08 +02:00
Esteban Küber
70e7e7d409 Fix new test 2018-07-20 09:17:55 -07:00
Esteban Küber
e1ef8ba142 Reword when _ couldn't be inferred 2018-07-20 09:17:18 -07:00
QuietMisdreavus
d3569d2da8 add failure-status to rustdoc doctest ui test 2018-07-20 10:13:38 -05:00
QuietMisdreavus
d965371d86 normalize test output so it can be run from repo root 2018-07-20 10:13:38 -05:00
QuietMisdreavus
ffbd2b931e update stdout file with test path normalization 2018-07-20 10:13:38 -05:00
QuietMisdreavus
41e7ac16c4 report doctest compile failures correctly 2018-07-20 10:13:38 -05:00
QuietMisdreavus
33654195a1 add ui test for failing doctest 2018-07-20 10:13:38 -05:00
Oliver Schneider
e93635325b Properly scope label resolution 2018-07-20 16:18:22 +02:00
bors
509cbf3e8e Auto merge of #52498 - oli-obk:const_prop, r=nikomatsakis
Const propagate casts

fixes #49760

So... This fixes the original issue about the missing warnings.

But our test suite contains fun things like

```rust
fn foo() {}
assert_eq!(foo as i16, foo as usize as i16);
```

Which, will result in

> a raw memory access tried to access part of a pointer value as raw bytes

on both sides of the assertion. Because well... that's exactly what's going on! We're ripping out 16 bits of a pointer.
2018-07-20 13:22:36 +00:00
Kyle Simpson
0603a731f4 Add test case for #50865 regression. 2018-07-20 14:12:57 +01:00
Felix S. Klock II
f153be6258 For some reason, on my linux box, using -Zverbose here is causing a linker failure.
Rather than try to work out what was happening, I just removed the flag because
I see no reason for it to be on this test.
2018-07-20 14:26:44 +02:00