Commit Graph

82102 Commits

Author SHA1 Message Date
ashtneoi
d6dbdee739 Remove incorrect space 2018-08-15 15:14:21 -07:00
ashtneoi
a583aa642e Remove unnecessary comment
Turns out I didn't read the original comment correctly and had some
confusion about how MIR uses temporaries.
2018-08-15 15:14:21 -07:00
ashtneoi
0a82abc47b Test patterns in tuples 2018-08-15 15:14:21 -07:00
ashtneoi
6cf4e14ac0 Coalesce var-is-not-Copy notes per move 2018-08-15 15:14:21 -07:00
ashtneoi
20ae08bda6 Dedup suggestions 2018-08-15 15:14:21 -07:00
ashtneoi
40b5118c8a Remove unnecessary underscore 2018-08-15 15:14:21 -07:00
ashtneoi
8135372ed1 Change TODOs to FIXMEs 2018-08-15 15:14:21 -07:00
ashtneoi
10aaba8dbe Make move errors more consistent with typeck errors 2018-08-15 15:14:21 -07:00
ashtneoi
701c74e067 Make move error suggestions clearer 2018-08-15 15:14:21 -07:00
ashtneoi
b05e9a7f77 Add backquotes around variable name 2018-08-15 15:14:21 -07:00
ashtneoi
8080bdf275 Fix move errors for index expressions
The suggestion logic gave up too early, which kept it from suggesting
borrowing index expressions.
2018-08-15 15:14:21 -07:00
ashtneoi
54ddb36ce7 Test move errors for index expressions 2018-08-15 15:14:21 -07:00
ashtneoi
1e87908c52 Accept whitespace between & and mut 2018-08-15 15:14:21 -07:00
ashtneoi
3a5812bdd9 Add more TODOs 2018-08-15 15:14:21 -07:00
ashtneoi
a05f82fd2d Suggest match ergonomics, not ref/ref mut 2018-08-15 15:14:21 -07:00
ashtneoi
7b10133297 Fix some random stuff 2018-08-15 15:10:43 -07:00
bors
d767ee1161 Auto merge of #53400 - GuillaumeGomez:rollup, r=GuillaumeGomez
Rollup of 8 pull requests

Successful merges:

 - #52453 (improve diagnostics for tests with custom return values)
 - #53271 (use ? to simplify `TransitiveRelation.maybe_map`)
 - #53279 (Extend documentation of `rustc_on_unimplemented`)
 - #53342 (fix error for unsized packed struct field)
 - #53344 (Add doc examples for std::alloc::{alloc,alloc_zeroed}.)
 - #53368 (Ignore test that fails on stage1)
 - #53388 (Fix links' color)
 - #53396 (Fix since of Iterator::flatten to be a proper semver)

Failed merges:

r? @ghost
2018-08-15 19:39:54 +00:00
Guillaume Gomez
b9a51ce2f6
Rollup merge of #53396 - matklad:fix-flatten-since, r=varkor
Fix since of Iterator::flatten to be a proper semver

r? @kennytm
2018-08-15 19:20:29 +02:00
Guillaume Gomez
7acfa8615a
Rollup merge of #53388 - GuillaumeGomez:fix-links-color, r=frewsxcv
Fix links' color

Fixes #53375.

Problem was coming from the minifier.

r? @frewsxcv
2018-08-15 19:20:28 +02:00
Guillaume Gomez
a9a67a3a76
Rollup merge of #53368 - matthewjasper:only-stage-2, r=varkor
Ignore test that fails on stage1

The error code is not emitted on stage1, so ignore this test there.
2018-08-15 19:20:26 +02:00
Guillaume Gomez
25839dd9c6
Rollup merge of #53344 - frewsxcv:frewsxcv-doc-ptr, r=ollie27
Add doc examples for std::alloc::{alloc,alloc_zeroed}.

None
2018-08-15 19:20:25 +02:00
Guillaume Gomez
6bea743d56
Rollup merge of #53342 - RalfJung:unsized-packed, r=cramertj
fix error for unsized packed struct field

It was really confusing to be told "only the last field of a struct may have a dynamically sized type" when only the last field *was* unsized.
2018-08-15 19:20:23 +02:00
Guillaume Gomez
8e4f2d115a
Rollup merge of #53279 - estebank:on-unimplemented-doc, r=GuillaumeGomez
Extend documentation of `rustc_on_unimplemented`
2018-08-15 19:20:22 +02:00
Guillaume Gomez
b941c8e7fb
Rollup merge of #53271 - llogiq:simplify-maybe-map, r=joshtriplett
use ? to simplify `TransitiveRelation.maybe_map`

I think this looks much clearer than the original.
2018-08-15 19:20:21 +02:00
Guillaume Gomez
d8815cfe7d
Rollup merge of #52453 - srijs:fix-52436, r=TimNN
improve diagnostics for tests with custom return values

This is an attempt at getting the ball rolling to improve the diagnostics for test functions that return custom `impl Termination` values (see #52436).

An alternative could be to use `eprintln!`, but including this in the panic message felt nicely consistent with how failing test assertions would be reported.

Let me know what you think!
2018-08-15 19:20:19 +02:00
bors
d679b57a3a Auto merge of #53164 - davidtwco:issue-52663-span-decl-captured-variables, r=nikomatsakis
Provide span for declaration of captured variables

Part of #52663.

r? @nikomatsakis
2018-08-15 17:03:39 +00:00
Aleksey Kladov
1a0d3f0979 Fix since of Iterator::flatten to be a proper semver 2018-08-15 19:28:42 +03:00
bors
0f4b4987cd Auto merge of #53237 - overdrivenpotato:wasm-export-table, r=alexcrichton
Export WASM table by default

This allows loading a rust-generated `.wasm` binary in a host and using the exported table much like the `memory` export.
2018-08-15 14:40:46 +00:00
Guillaume Gomez
cf5ee8f59b Fix links' color 2018-08-15 15:07:07 +02:00
bors
5db71dbae8 Auto merge of #53133 - Zoxc:gen-int, r=eddyb
Record adjustments and original type for expressions in the generator interior

Fixes https://github.com/rust-lang/rust/issues/50878 and https://github.com/rust-lang/rust/issues/52398.

r? @eddyb
2018-08-15 12:02:00 +00:00
bors
18a4c38a1d Auto merge of #53367 - ehuss:update-cargo, r=alexcrichton
Update cargo

- Update transitioning url (rust-lang/cargo#5889)
- Resolve some clippy lint warnings (rust-lang/cargo#5884)
- Don't kill child processes on normal exit on Windows (rust-lang/cargo#5887)
- fix a bunch of clippy warnings (rust-lang/cargo#5876)
- Add support for rustc's --error-format short (rust-lang/cargo#5879)
- Support JSON with rustdoc. (rust-lang/cargo#5878)
- Fix rustfmt instructions in CONTRIBUTING.md (rust-lang/cargo#5880)
- Allow `cargo run` in workspaces. (rust-lang/cargo#5877)
- Change target filters in workspaces. (rust-lang/cargo#5873)
- Improve verbose console and log for finding git repo in package check (rust-lang/cargo#5858)
- Meta rename (rust-lang/cargo#5871)
- fetch: skip target tests when cross_compile is disabled (rust-lang/cargo#5870)
- Fully capture rustc and rustdoc output when -Zcompile-progress is passed (rust-lang/cargo#5862)
- Fix test --example docs. (rust-lang/cargo#5867)
- Add a feature to build a vendored OpenSSL (rust-lang/cargo#5865)
2018-08-15 09:08:35 +00:00
Ralf Jung
2fd2f9cfaf fix error for unsized packed struct field 2018-08-15 10:53:26 +02:00
bors
81cfaad030 Auto merge of #53212 - sunjay:nll-raw-cast, r=nikomatsakis
NLL - Prevent where clauses from extending the lifetime of bindings

Fixes https://github.com/rust-lang/rust/issues/53123

r? @nikomatsakis
2018-08-15 06:54:18 +00:00
Eric Huss
9730871773 Update cargo 2018-08-14 22:24:41 -07:00
bors
afd0a2f249 Auto merge of #52716 - tromey:rustup-lldb, r=alexcrichton
Add lldb to the build

This optionally adds lldb (and clang, which it needs) to the build.

Because rust uses LLVM 7, and because clang 7 is not yet released, a
recent git master version of clang is used.

The lldb that is used includes the Rust plugin.

lldb is only built when asked for, or when doing a nightly build on
macOS.  Only macOS is done for now due to difficulties with the Python
dependency.
2018-08-15 02:52:08 +00:00
Corey Farwell
d1193bf95e Add doc examples for std::alloc::{alloc,alloc_zeroed}. 2018-08-14 21:32:11 -04:00
Tom Tromey
6e3a4f4ddd Add lldb to the build
This optionally adds lldb (and clang, which it needs) to the build.

Because rust uses LLVM 7, and because clang 7 is not yet released, a
recent git master version of clang is used.

The lldb that is used includes the Rust plugin.

lldb is only built when asked for, or when doing a nightly build on
macOS.  Only macOS is done for now due to difficulties with the Python
dependency.
2018-08-14 18:59:23 -06:00
bors
fa23350a46 Auto merge of #52928 - Mark-Simulacrum:borrowck-cleanup, r=cramertj
(old) borrowck cleanup

Primarily moves dataflow code based on CFG to borrowck; this is mostly so we don't forget to delete it once it becomes unused after we fully move to MIR borrowck.
2018-08-15 00:37:52 +00:00
bors
5bb2094d89 Auto merge of #52936 - felixrabe:patch-1, r=alexcrichton
Document #39364 – Panic in mpsc::Receiver::recv_timeout

I can still reproduce #39364 with the example code at https://github.com/rust-lang/rust/issues/39364#issuecomment-320637702.

I'm opening this PR in an attempt to document this bug as a known issue in [libstd/sync/mpsc/mod.rs](https://github.com/rust-lang/rust/blob/master/src/libstd/sync/mpsc/mod.rs).

Inputs very much welcome. ([Nightly docs for `recv_timeout`.](https://doc.rust-lang.org/nightly/std/sync/mpsc/struct.Receiver.html?search=#method.recv_timeout))
2018-08-14 22:22:18 +00:00
Matthew Jasper
0e43e6fef2 Ignore test that fails on stage1 2018-08-14 22:42:16 +01:00
bors
67390c0c31 Auto merge of #53361 - Manishearth:clippyup, r=nrc
Update clippy

r? @kennytm @nrc
2018-08-14 19:38:45 +00:00
Manish Goregaokar
f4017a8453 Update clippy 2018-08-14 11:29:00 -07:00
bors
a5733050de Auto merge of #53354 - kennytm:rollup, r=kennytm
Rollup of 11 pull requests

Successful merges:

 - #53112 (pretty print BTreeSet)
 - #53208 (Don't panic on std::env::vars() when env is null.)
 - #53226 (driver: set the syntax edition in phase 1)
 - #53229 (Make sure rlimit is only ever increased)
 - #53233 (targets: aarch64: Add bare-metal aarch64 target)
 - #53239 (rustc_codegen_llvm: Restore the closure env alloca hack for LLVM 5.)
 - #53246 (A few cleanups)
 - #53257 (Idiomatic improvements to IP method)
 - #53274 (Remove statics field from CodegenCx)
 - #53290 (Make LLVM emit assembly comments with -Z asm-comments)
 - #53317 (Mark prior failure to avoid ICE)
2018-08-14 17:24:18 +00:00
David Wood
5532e9dec5
Improved how upvars are detected when presenting errors using prefixes. 2018-08-14 18:38:57 +02:00
kennytm
8e7f69af9c
Rollup merge of #53317 - estebank:abolish-ice, r=oli-obk
Mark prior failure to avoid ICE

Fix #53251
2018-08-14 23:59:17 +08:00
kennytm
47f66e7372
Rollup merge of #53290 - whitequark:fix-35741, r=nagisa
Make LLVM emit assembly comments with -Z asm-comments

Fixes #35741, and makes `-Z asm-comments` actually do something useful.

Before:
```
	.section	.text.main,"ax",@progbits
	.globl	main
	.p2align	4, 0x90
	.type	main,@function
main:
	.cfi_startproc
	pushq	%rax
	.cfi_def_cfa_offset 16
	movslq	%edi, %rax
	leaq	_ZN1t4main17he95a7d4f1843730eE(%rip), %rdi
	movq	%rsi, (%rsp)
	movq	%rax, %rsi
	movq	(%rsp), %rdx
	callq	_ZN3std2rt10lang_start17h3121da83b2bc3697E
	movl	%eax, %ecx
	movl	%ecx, %eax
	popq	%rcx
	.cfi_def_cfa_offset 8
	retq
.Lfunc_end8:
	.size	main, .Lfunc_end8-main
	.cfi_endproc
```

After:
```
	.section	.text.main,"ax",@progbits
	.globl	main                    # -- Begin function main
	.p2align	4, 0x90
	.type	main,@function
main:                                   # @main
	.cfi_startproc
# %bb.0:
	pushq	%rax
	.cfi_def_cfa_offset 16
	movslq	%edi, %rax
	leaq	_ZN1t4main17he95a7d4f1843730eE(%rip), %rdi
	movq	%rsi, (%rsp)            # 8-byte Spill
	movq	%rax, %rsi
	movq	(%rsp), %rdx            # 8-byte Reload
	callq	_ZN3std2rt10lang_start17h3121da83b2bc3697E
	movl	%eax, %ecx
	movl	%ecx, %eax
	popq	%rcx
	.cfi_def_cfa_offset 8
	retq
.Lfunc_end8:
	.size	main, .Lfunc_end8-main
	.cfi_endproc
                                        # -- End function
```
2018-08-14 23:59:16 +08:00
kennytm
e862efa65d
Rollup merge of #53274 - bjorn3:remove_statics_field, r=nagisa
Remove statics field from CodegenCx

It doesnt seem to be used anywhere.
2018-08-14 23:59:15 +08:00
kennytm
11484c6a6a
Rollup merge of #53257 - faern:ip-method-idiomatic-improvement, r=TimNN
Idiomatic improvements to IP method

Since match ergonomics and slice patterns are stable this might be more idiomatic modern Rust implementations of these methods? Or well, slice patterns with `..` are not stabilized yet, so maybe we want to specify all fields but with `_`?
2018-08-14 23:59:13 +08:00
kennytm
e77d9955a0
Rollup merge of #53246 - ljedrz:cleanup_various, r=kennytm
A few cleanups

- change `skip(1).next()` to `nth(1)`
- collapse some `if-else` expressions
- remove a few explicit `return`s
- remove an unnecessary field name
- dereference once instead of matching on multiple references
- prefer `iter().enumerate()` to indexing with `for`
- remove some unnecessary lifetime annotations
- use `writeln!()` instead of `write!()`+`\n`
- remove redundant parentheses
- shorten some enum variant names
- a few other cleanups suggested by `clippy`
2018-08-14 23:59:12 +08:00
kennytm
764755b0b0
Rollup merge of #53239 - cuviper:llvm5-closure-alloca, r=eddyb
rustc_codegen_llvm: Restore the closure env alloca hack for LLVM 5.

This hack was removed in #50949, but without it I found that building
`std` with full debuginfo would print many LLVM `DW_OP_LLVM_fragment`
errors, then die `LLVM ERROR: Failed to strip malformed debug info`.

It doesn't seem to be a problem for LLVM 6, so we can re-enable the hack
just for older LLVM.

This reverts commit da579ef75e.
Fixes #53204.
r? @eddyb
2018-08-14 23:59:11 +08:00