Commit Graph

80618 Commits

Author SHA1 Message Date
Mark Rousskov
54a440b469
Rollup merge of #52083 - spastorino:dont-run-ast-borrowck-on-mir-mode, r=nikomatsakis
Dont run ast borrowck on mir mode

r? @nikomatsakis
2018-07-06 21:29:14 -06:00
Mark Rousskov
ec6bba319b
Rollup merge of #52067 - csmoe:issue-51167, r=nikomatsakis
Visit the mir basic blocks in reverse-postfix order

cc #51167
r? @nikomatsakis
2018-07-06 21:29:13 -06:00
Mark Rousskov
b71b92199c
Rollup merge of #52058 - davidtwco:issue-51345, r=nikomatsakis
Use of unimplemented!() causing ICE with NLL

Fixes #51345.

r? @nikomatsakis
2018-07-06 21:29:12 -06:00
Mark Rousskov
9b3ec57c16
Rollup merge of #51901 - rust-lang:weak-unboxing, r=alexcrichton
Rc: remove unused allocation and fix segfault in Weak::new()

Same as https://github.com/rust-lang/rust/pull/50357 did for `Arc`.

Fixes https://github.com/rust-lang/rust/issues/48493
2018-07-06 21:29:11 -06:00
csmoe
b9c6dba5c4 extend where clauses 2018-07-07 11:02:47 +08:00
bors
99b0ddb88a Auto merge of #51656 - soc:topic/fix-home-dir, r=SimonSapin
Deprecate `std::env::home_dir` and fix incorrect documentation

Compare `std::env::home_dir`s claim:

> Returns the value of the 'HOME' environment variable if it is set and not equal to the empty string.

... with its actual behavior:

```
std::env::set_var("HOME", "");
println!("{:?}", std::env::var_os("HOME")); // Some("")
println!("{:?}", std::env::home_dir());     // Some("")
```

The implementation is incorrect in two cases:
- `$HOME` is set, but empty.
- An entry for the user exists in `/etc/passwd`, but it's `pw_dir` is empty.

In both cases Rust considers an empty string to be a valid home directory. This contradicts the documentation, and is wrong in general.
2018-07-07 01:51:08 +00:00
Meade Kincke
f629eb3595 General fixes and cleanup. 2018-07-07 01:09:09 +01:00
Meade Kincke
75bc0649b8 Omitted the walk in visit_expr() 2018-07-07 01:09:09 +01:00
Simon Sapin
67202b8b68 Fix is_dangling import when Arc is #[cfg]’ed out 2018-07-07 01:44:57 +02:00
Simon Sapin
5717d99d1b Add some unit tests for dangling Weak references 2018-07-07 01:41:30 +02:00
Simon Sapin
21526c5403 Add a test for Weak::new() not crashing for uninhabited types 2018-07-07 01:41:30 +02:00
Simon Sapin
41730b7e2e Rc: remove unused allocation from Weak::new()
Same as https://github.com/rust-lang/rust/pull/50357
2018-07-07 01:41:30 +02:00
Simon Sapin
6e2c49ff0e Use an aligned dangling pointer in Weak::new, rather than address 1 2018-07-07 01:41:30 +02:00
bors
a178cba9f1 Auto merge of #52021 - nikomatsakis:nll-region-errors, r=estebank
refactor and cleanup region errors for NLL

This is a WIP commit. It simplifies some of the code from https://github.com/rust-lang/rust/pull/51536 and extends a few more steps towards the errors that @davidtwco and I were shooting for. These are intended as a replacement for the general "unable to infer lifetime" messages -- one that is actually actionable. We're certainly not there yet, but the overall shape hopefully gets a bit clearer.

I'm thinking about trying to open up an internals thread to sketch out the overall plan and perhaps discuss how to get the wording right, which special cases to handle, etc.

r? @estebank
cc @davidtwco
2018-07-06 23:36:16 +00:00
Jorge Aparicio
b7047bb89f ARM: expose the "mclass" target feature 2018-07-06 18:28:38 -05:00
Simon Ochsenreither
0afc16a039 Deprecate std::env::home_dir and fix incorrect documentation 2018-07-07 01:28:37 +02:00
Bastien Orivel
933c299443 Dedupe filetime 2018-07-06 22:52:40 +02:00
bors
e06c875442 Auto merge of #51757 - nielx:fix/haiku-fixes, r=nagisa
Haiku: several smaller fixes to build and run rust on Haiku

This PR combines three small patches that help Rust build and run on the Haiku platform. These patches do not intend to impact other platforms.
2018-07-06 20:05:23 +00:00
Matt Brubeck
cdff2f3b30 impl Clone for Box<CStr>, Box<OsStr>, Box<Path>
Implements #51908.
2018-07-06 12:57:47 -07:00
bors
3ea16c3493 Auto merge of #52018 - flip1995:rfc2103, r=oli-obk
Implementation of tool lints.

Tracking issue: #44690
2018-07-06 18:03:46 +00:00
bors
062a416dd4 Auto merge of #52010 - toidiu:ak-crossCrateOutlives, r=nikomatsakis
Fix: infer outlives requirements across crates

Fixes https://github.com/rust-lang/rust/issues/51858
2018-07-06 16:01:25 +00:00
csmoe
88f475c808 suggests with whole macro call 2018-07-06 22:31:55 +08:00
bors
50302821c4 Auto merge of #51894 - mikhail-m1:8636, r=nikomatsakis
fix for issue #8636

r? @nikomatsakis

Fix #8636

also fixes #42291
2018-07-06 12:54:45 +00:00
Michael Woerister
4a269642c9 Remove CrossLangLto::NoLink which does not have a use case anymore. 2018-07-06 14:08:40 +02:00
Michael Woerister
72df804d8e When doing linker-plugin based LTO, write LLVM bitcode obj-files
instead of embedding the bitcode into the regular object file.
2018-07-06 13:58:25 +02:00
bors
ded86ccc2c Auto merge of #51677 - nrc:update, r=kennytm
Update RLS and Rustfmt

r? @Mark-Simulacrum
2018-07-06 10:55:02 +00:00
csmoe
a6d4d2b945 refactor 2018-07-06 18:44:42 +08:00
Niko Matsakis
6d0644c65a
tweak comment 2018-07-06 06:33:38 -04:00
bors
0072c95aff Auto merge of #51953 - japaric:atomic-load-store, r=alexcrichton
enable Atomic*.{load,store} for ARMv6-M / MSP430

closes #45085

as proposed in https://github.com/rust-lang/rust/issues/45085#issuecomment-384825434

this commit adds an `atomic_cas` target option and extends the `#[cfg(target_has_atomic)]`
attribute to enable a subset of the `Atomic*` API on architectures that don't support atomic CAS
natively, like MSP430 and ARMv6-M.

r? @alexcrichton
2018-07-06 08:59:22 +00:00
Nick Cameron
7717705c35 Update RLS, Rustfmt, Cargo, and Clippy 2018-07-06 20:58:21 +12:00
Thayne McCombs
15a196ec36 Remove unnecessary feature gate.
To fix a warning.
2018-07-06 01:06:17 -06:00
Thayne McCombs
7fbc3895e3 Stabilize rc_downcast
Fixes #44608
2018-07-06 01:00:40 -06:00
bors
4d9fa2326e Auto merge of #52088 - kennytm:rollup, r=kennytm
Rollup of 14 pull requests

Successful merges:

 - #51619 (rust: add initial changes to support powerpc64le musl)
 - #51793 (Fix variant background color on hover in search results)
 - #52005 (Update LLVM to bring in a wasm codegen fix)
 - #52016 (Deduplicate error reports for statics)
 - #52019 ([cross-lang-lto] Allow the linker to choose the LTO-plugin (which is useful when using LLD))
 - #52030 (Any docs preposition change)
 - #52031 (Strenghten synchronization in `Arc::is_unique`)
 - #52033 ([Gardening] Update outdated comments: ByVal -> Scalar)
 - #52055 (Include VS 2017 in error message.)
 - #52063 (Add a link to the rustc docs)
 - #52073 (Add a punch card to weird expressions test)
 - #52080 (Improve dependency deduplication diagnostics)
 - #52093 (rustc: Update tracking issue for wasm_import_module)
 - #52096 (Fix typo in cell.rs)

Failed merges:
2018-07-06 06:48:12 +00:00
Niels Sascha Reedijk
90e32e2ac6 Haiku: work around the lack of setrlimit
By default, Haiku has the desired 16 MB stack, therefore in general
we do not have to spawn a new thread. The code has been written in
such a way that any changes in Haiku or in Rust will be adapted to.
2018-07-06 07:19:11 +02:00
kennytm
e6ddbabb59
Rollup merge of #52096 - d-e-s-o:fix-typo, r=sfackler
Fix typo in cell.rs
2018-07-06 13:02:40 +08:00
kennytm
1a8011f617
Rollup merge of #52093 - alexcrichton:update-issue, r=kennytm
rustc: Update tracking issue for wasm_import_module

It's now https://github.com/rust-lang/rust/issues/52090
2018-07-06 13:02:06 +08:00
kennytm
20e32ee61f
Rollup merge of #52063 - mark-i-m:docs_link, r=kennytm
Add a link to the rustc docs
2018-07-06 12:56:29 +08:00
kennytm
3c21349e07
Rollup merge of #52055 - crlf0710:patch-3, r=Mark-Simulacrum
Include VS 2017 in error message.

Update error prompt message to indicate that VS 2017 is supported (for a while now).
2018-07-06 12:56:26 +08:00
kennytm
f1a36fc29f
Rollup merge of #52080 - oli-obk:dep_dedup_diagnostics, r=kennytm
Improve dependency deduplication diagnostics

r? @kennytm

this is obviously hard to test 😆

cc #52072
2018-07-06 12:56:24 +08:00
kennytm
596d1a782d
Rollup merge of #52073 - xfix:patch-7, r=oli-obk
Add a punch card to weird expressions test
2018-07-06 12:56:23 +08:00
Zack M. Davis
bbfdea28cd typo-fix stable ed'n error: "an onlyavailable" → "and only available" 2018-07-05 21:52:07 -07:00
Alex Crichton
23fbfb57cf rustc: Update tracking issue for wasm_import_module
It's now https://github.com/rust-lang/rust/issues/52090
2018-07-05 21:27:27 -07:00
Daniel Mueller
fa7f7ac402
Fix typo in cell.rs 2018-07-05 21:18:12 -07:00
Jorge Aparicio
f9145d01e1 update run-pass test 2018-07-05 20:18:19 -05:00
kennytm
6d35505b9b
Rollup merge of #52033 - zachrwolfe:outdated_value_comment, r=oli-obk
[Gardening] Update outdated comments: ByVal -> Scalar

ByVal enum cases in mir::interpret::value were renamed to Scalar a while ago but comments still refer to the old names.
2018-07-06 08:49:25 +08:00
kennytm
b87b22e53c
Rollup merge of #52031 - RalfJung:arc, r=sfackler
Strenghten synchronization in `Arc::is_unique`

Previously, `is_unique` would not synchronize at all with a `drop` that returned
early because it was not the last reference, leading to a data race.

Fixes #51780

Unfortunately I have no idea how to add a test for this.

Cc @jhjourdan
2018-07-06 08:49:23 +08:00
kennytm
7ce7bf0e37
Rollup merge of #52030 - bowbahdoe:patch-1, r=alexcrichton
Any docs preposition change

This changes the docs referring to where a user should be wary of depending on "Any" trait impls from warning about relying on them "outside" of their code to warning about relying on them "inside" of their code.
2018-07-06 08:49:22 +08:00
kennytm
ffc453abf7
Rollup merge of #52019 - michaelwoerister:cross-lto-auto-plugin, r=alexcrichton
[cross-lang-lto] Allow the linker to choose the LTO-plugin (which is useful when using LLD)

This PR allows for not specifying an LTO-linker plugin but still let `rustc` invoke the linker with the correct plugin arguments. This is useful when using LLD which does not need the `-plugin` argument. Since LLD is the best linker for this scenario anyway, this change should improve ergonomics quite a bit.

r? @alexcrichton
2018-07-06 08:49:20 +08:00
kennytm
a4846aebd8
Rollup merge of #52016 - oli-obk:dedup_static_errors, r=estebank
Deduplicate error reports for statics

fixes #51970
2018-07-06 08:49:19 +08:00
kennytm
1568b5e6d7
Rollup merge of #52005 - alexcrichton:update-llvm-for-wasm, r=kennytm
Update LLVM to bring in a wasm codegen fix

Closes #51986
2018-07-06 08:49:18 +08:00