]> git.lizzy.rs Git - rust.git/log
rust.git
6 years agofind and highlight the `&` or `'_` in `region_name`
Niko Matsakis [Sat, 7 Jul 2018 23:53:52 +0000 (19:53 -0400)]
find and highlight the `&` or `'_` in `region_name`

6 years agoAuto merge of #52132 - Mark-Simulacrum:rollup, r=Mark-Simulacrum
bors [Sat, 7 Jul 2018 16:21:28 +0000 (16:21 +0000)]
Auto merge of #52132 - Mark-Simulacrum:rollup, r=Mark-Simulacrum

Rollup of 3 pull requests

Successful merges:

 - #52087 (Update musl to 1.1.19 and add patch to fix tls issue)
 - #52107 (removed redundant header file import in rustllvm.h)
 - #52131 (Ship clippy in manifests)

Failed merges:

r? @ghost

6 years agoRollup merge of #52131 - Mark-Simulacrum:ship-clippy, r=kennytm
Mark Rousskov [Sat, 7 Jul 2018 14:27:02 +0000 (08:27 -0600)]
Rollup merge of #52131 - Mark-Simulacrum:ship-clippy, r=kennytm

Ship clippy in manifests

cc @Manishearth
r? @kennytm

6 years agoRollup merge of #52107 - PramodBisht:feature/52105, r=rkruppe
Mark Rousskov [Sat, 7 Jul 2018 14:27:01 +0000 (08:27 -0600)]
Rollup merge of #52107 - PramodBisht:feature/52105, r=rkruppe

removed redundant header file import in rustllvm.h

fix #52105
removed redundant header file import in rustllvm.h
cc @wqweto

6 years agoRollup merge of #52087 - malbarbo:musl-1.1.19, r=alexcrichton
Mark Rousskov [Sat, 7 Jul 2018 14:27:00 +0000 (08:27 -0600)]
Rollup merge of #52087 - malbarbo:musl-1.1.19, r=alexcrichton

Update musl to 1.1.19 and add patch to fix tls issue

This fixes https://github.com/rust-lang/rust/issues/48967

6 years agoShip clippy in manifests
Mark Rousskov [Sat, 7 Jul 2018 14:17:24 +0000 (08:17 -0600)]
Ship clippy in manifests

6 years agoAuto merge of #52109 - michaelwoerister:ir-objs, r=alexcrichton
bors [Sat, 7 Jul 2018 14:09:49 +0000 (14:09 +0000)]
Auto merge of #52109 - michaelwoerister:ir-objs, r=alexcrichton

When doing linker-plugin based LTO, write LLVM bitcode obj-files instead of embedding the bitcode into the regular object file.

This PR makes the compiler emit LLVM bitcode object files instead of regular object files with the IR embed when compiling for linker-plugin-based LTO. The reasoning for switching the strategy is this:
- Embedding bitcode in a section of the object file actually makes us save bitcode twice in rlibs and Rust dylibs, once for linker-based LTO and once for rustc-based LTO. That's a waste of space.
- When compiling for plugin-based LTO, one usually has no use for the machine code also present in the object file. Generating it is a waste of time.
- When compiling for plugin-based LTO, `rustc` will skip running ThinLTO because the linker will do that anyway. This has the side effect of then generating poorly optimized machine code, which makes it even less useful (and may lead to users not knowing why their code is slow instead of getting an error).
- Not having machine code available makes it impossible for the linker to silently fall back to not inlining stuff across language boundaries.
- This is what Clang does and according to [the documentation](https://llvm.org/docs/BitCodeFormat.html#native-object-file-wrapper-format) is the better supported option.
- The current behavior (minus the runtime performance problems) is still available via `-Z embed-bitcode` (we might want to do this for `libstd` at some point).

r? @alexcrichton

6 years agoAuto merge of #51993 - TheDarkula:master, r=oli-obk
bors [Sat, 7 Jul 2018 09:09:43 +0000 (09:09 +0000)]
Auto merge of #51993 - TheDarkula:master, r=oli-obk

Omitted the walks in visit_expr() and visit_stmt()

@oli-obk

6 years agoAuto merge of #52037 - lqd:skipping-regionless-types, r=nikomatsakis
bors [Sat, 7 Jul 2018 07:06:14 +0000 (07:06 +0000)]
Auto merge of #52037 - lqd:skipping-regionless-types, r=nikomatsakis

NLL Liveness: Skip regionless types when visiting free regions

The tuple-stress benchmark exercises the liveness constraint generation code for types which do not have regions

Closes #52027

6 years agoremoved redundant header file import in rustllvm.h
Pramod Bisht [Fri, 6 Jul 2018 10:37:07 +0000 (16:07 +0530)]
removed redundant header file import in rustllvm.h

6 years agoAuto merge of #52123 - Mark-Simulacrum:rollup, r=Mark-Simulacrum
bors [Sat, 7 Jul 2018 03:55:28 +0000 (03:55 +0000)]
Auto merge of #52123 - Mark-Simulacrum:rollup, r=Mark-Simulacrum

Rollup of 9 pull requests

Successful merges:

 - #51901 (Rc: remove unused allocation and fix segfault in Weak::new())
 - #52058 (Use of unimplemented!() causing ICE with NLL)
 - #52067 (Visit the mir basic blocks in reverse-postfix order)
 - #52083 (Dont run ast borrowck on mir mode)
 - #52099 (fix typo in stable `--edition` error message)
 - #52103 (Stabilize rc_downcast)
 - #52104 (Remove unnecessary feature gate.)
 - #52117 (Dedupe filetime)
 - #52120 (ARM: expose the "mclass" target feature)

Failed merges:

r? @ghost

6 years agoRollup merge of #52120 - japaric:mclass, r=alexcrichton
Mark Rousskov [Sat, 7 Jul 2018 03:29:20 +0000 (21:29 -0600)]
Rollup merge of #52120 - japaric:mclass, r=alexcrichton

ARM: expose the "mclass" target feature

This let us differentiate, in conditional compilation context, between ARM Cortex-M targets, like
the `thumbv*` targets, and other ARM targets, like the ARM Cortex-A Linux targets.

r? @alexcrichton
cc @gnzlbg
cc rust-lang-nursery/stdsimd#437

6 years agoRollup merge of #52117 - Eijebong:filetime, r=alexcrichton
Mark Rousskov [Sat, 7 Jul 2018 03:29:19 +0000 (21:29 -0600)]
Rollup merge of #52117 - Eijebong:filetime, r=alexcrichton

Dedupe filetime

6 years agoRollup merge of #52104 - tmccombs:repr_trans_stable, r=Mark-Simulacrum
Mark Rousskov [Sat, 7 Jul 2018 03:29:18 +0000 (21:29 -0600)]
Rollup merge of #52104 - tmccombs:repr_trans_stable, r=Mark-Simulacrum

Remove unnecessary feature gate.

To fix a warning.

6 years agoRollup merge of #52103 - tmccombs:rc_downcast, r=Mark-Simulacrum
Mark Rousskov [Sat, 7 Jul 2018 03:29:17 +0000 (21:29 -0600)]
Rollup merge of #52103 - tmccombs:rc_downcast, r=Mark-Simulacrum

Stabilize rc_downcast

Fixes #44608

6 years agoRollup merge of #52099 - zackmdavis:and_the_case_of_the_typ, r=oli-obk
Mark Rousskov [Sat, 7 Jul 2018 03:29:16 +0000 (21:29 -0600)]
Rollup merge of #52099 - zackmdavis:and_the_case_of_the_typ, r=oli-obk

fix typo in stable `--edition` error message

(diff is self-explanatory)

6 years agoRollup merge of #52083 - spastorino:dont-run-ast-borrowck-on-mir-mode, r=nikomatsakis
Mark Rousskov [Sat, 7 Jul 2018 03:29:14 +0000 (21:29 -0600)]
Rollup merge of #52083 - spastorino:dont-run-ast-borrowck-on-mir-mode, r=nikomatsakis

Dont run ast borrowck on mir mode

r? @nikomatsakis

6 years agoRollup merge of #52067 - csmoe:issue-51167, r=nikomatsakis
Mark Rousskov [Sat, 7 Jul 2018 03:29:13 +0000 (21:29 -0600)]
Rollup merge of #52067 - csmoe:issue-51167, r=nikomatsakis

Visit the mir basic blocks in reverse-postfix order

cc #51167
r? @nikomatsakis

6 years agoRollup merge of #52058 - davidtwco:issue-51345, r=nikomatsakis
Mark Rousskov [Sat, 7 Jul 2018 03:29:12 +0000 (21:29 -0600)]
Rollup merge of #52058 - davidtwco:issue-51345, r=nikomatsakis

Use of unimplemented!() causing ICE with NLL

Fixes #51345.

r? @nikomatsakis

6 years agoRollup merge of #51901 - rust-lang:weak-unboxing, r=alexcrichton
Mark Rousskov [Sat, 7 Jul 2018 03:29:11 +0000 (21:29 -0600)]
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

6 years agoAuto merge of #51656 - soc:topic/fix-home-dir, r=SimonSapin
bors [Sat, 7 Jul 2018 01:51:08 +0000 (01:51 +0000)]
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.

6 years agoGeneral fixes and cleanup.
Meade Kincke [Fri, 6 Jul 2018 22:23:12 +0000 (23:23 +0100)]
General fixes and cleanup.

6 years agoOmitted the walk in visit_expr()
Meade Kincke [Mon, 2 Jul 2018 17:09:47 +0000 (18:09 +0100)]
Omitted the walk in visit_expr()

6 years agoFix is_dangling import when Arc is #[cfg]’ed out
Simon Sapin [Fri, 6 Jul 2018 23:44:57 +0000 (01:44 +0200)]
Fix is_dangling import when Arc is #[cfg]’ed out

6 years agoAdd some unit tests for dangling Weak references
Simon Sapin [Fri, 6 Jul 2018 17:30:09 +0000 (19:30 +0200)]
Add some unit tests for dangling Weak references

6 years agoAdd a test for Weak::new() not crashing for uninhabited types
Simon Sapin [Wed, 27 Jun 2018 19:36:29 +0000 (21:36 +0200)]
Add a test for Weak::new() not crashing for uninhabited types

6 years agoRc: remove unused allocation from Weak::new()
Simon Sapin [Wed, 27 Jun 2018 16:09:21 +0000 (18:09 +0200)]
Rc: remove unused allocation from Weak::new()

Same as https://github.com/rust-lang/rust/pull/50357

6 years agoUse an aligned dangling pointer in Weak::new, rather than address 1
Simon Sapin [Fri, 29 Jun 2018 13:43:34 +0000 (15:43 +0200)]
Use an aligned dangling pointer in Weak::new, rather than address 1

6 years agoAuto merge of #52021 - nikomatsakis:nll-region-errors, r=estebank
bors [Fri, 6 Jul 2018 23:36:16 +0000 (23:36 +0000)]
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

6 years agoARM: expose the "mclass" target feature
Jorge Aparicio [Fri, 6 Jul 2018 22:12:03 +0000 (17:12 -0500)]
ARM: expose the "mclass" target feature

6 years agoDeprecate `std::env::home_dir` and fix incorrect documentation
Simon Ochsenreither [Thu, 5 Jul 2018 15:32:09 +0000 (17:32 +0200)]
Deprecate `std::env::home_dir` and fix incorrect documentation

6 years agoDedupe filetime
Bastien Orivel [Fri, 6 Jul 2018 20:52:40 +0000 (22:52 +0200)]
Dedupe filetime

6 years agoAuto merge of #51757 - nielx:fix/haiku-fixes, r=nagisa
bors [Fri, 6 Jul 2018 20:05:23 +0000 (20:05 +0000)]
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.

6 years agoAuto merge of #52018 - flip1995:rfc2103, r=oli-obk
bors [Fri, 6 Jul 2018 18:03:46 +0000 (18:03 +0000)]
Auto merge of #52018 - flip1995:rfc2103, r=oli-obk

Implementation of tool lints.

Tracking issue: #44690

6 years agoAuto merge of #52010 - toidiu:ak-crossCrateOutlives, r=nikomatsakis
bors [Fri, 6 Jul 2018 16:01:25 +0000 (16:01 +0000)]
Auto merge of #52010 - toidiu:ak-crossCrateOutlives, r=nikomatsakis

Fix: infer outlives requirements across crates

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

6 years agoAuto merge of #51894 - mikhail-m1:8636, r=nikomatsakis
bors [Fri, 6 Jul 2018 12:54:45 +0000 (12:54 +0000)]
Auto merge of #51894 - mikhail-m1:8636, r=nikomatsakis

fix for issue #8636

r? @nikomatsakis

Fix #8636

also fixes #42291

6 years agoRemove CrossLangLto::NoLink which does not have a use case anymore.
Michael Woerister [Fri, 6 Jul 2018 12:08:40 +0000 (14:08 +0200)]
Remove CrossLangLto::NoLink which does not have a use case anymore.

6 years agoWhen doing linker-plugin based LTO, write LLVM bitcode obj-files
Michael Woerister [Fri, 6 Jul 2018 11:58:25 +0000 (13:58 +0200)]
When doing linker-plugin based LTO, write LLVM bitcode obj-files
instead of embedding the bitcode into the regular object file.

6 years agoAuto merge of #51677 - nrc:update, r=kennytm
bors [Fri, 6 Jul 2018 10:55:02 +0000 (10:55 +0000)]
Auto merge of #51677 - nrc:update, r=kennytm

Update RLS and Rustfmt

r? @Mark-Simulacrum

6 years agotweak comment
Niko Matsakis [Fri, 6 Jul 2018 10:33:38 +0000 (06:33 -0400)]
tweak comment

6 years agoAuto merge of #51953 - japaric:atomic-load-store, r=alexcrichton
bors [Fri, 6 Jul 2018 08:59:22 +0000 (08:59 +0000)]
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

6 years agoUpdate RLS, Rustfmt, Cargo, and Clippy
Nick Cameron [Fri, 6 Jul 2018 00:34:00 +0000 (12:34 +1200)]
Update RLS, Rustfmt, Cargo, and Clippy

6 years agoRemove unnecessary feature gate.
Thayne McCombs [Fri, 6 Jul 2018 07:06:17 +0000 (01:06 -0600)]
Remove unnecessary feature gate.

To fix a warning.

6 years agoStabilize rc_downcast
Thayne McCombs [Fri, 6 Jul 2018 07:00:40 +0000 (01:00 -0600)]
Stabilize rc_downcast

Fixes #44608

6 years agoAuto merge of #52088 - kennytm:rollup, r=kennytm
bors [Fri, 6 Jul 2018 06:48:12 +0000 (06:48 +0000)]
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:

6 years agoRollup merge of #52096 - d-e-s-o:fix-typo, r=sfackler
kennytm [Fri, 6 Jul 2018 05:02:40 +0000 (13:02 +0800)]
Rollup merge of #52096 - d-e-s-o:fix-typo, r=sfackler

Fix typo in cell.rs

6 years agoRollup merge of #52093 - alexcrichton:update-issue, r=kennytm
kennytm [Fri, 6 Jul 2018 05:02:06 +0000 (13:02 +0800)]
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

6 years agoRollup merge of #52063 - mark-i-m:docs_link, r=kennytm
kennytm [Fri, 6 Jul 2018 00:51:07 +0000 (08:51 +0800)]
Rollup merge of #52063 - mark-i-m:docs_link, r=kennytm

Add a link to the rustc docs

6 years agoRollup merge of #52055 - crlf0710:patch-3, r=Mark-Simulacrum
kennytm [Fri, 6 Jul 2018 00:50:29 +0000 (08:50 +0800)]
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).

6 years agoRollup merge of #52080 - oli-obk:dep_dedup_diagnostics, r=kennytm
kennytm [Thu, 5 Jul 2018 23:07:24 +0000 (07:07 +0800)]
Rollup merge of #52080 - oli-obk:dep_dedup_diagnostics, r=kennytm

Improve dependency deduplication diagnostics

r? @kennytm

this is obviously hard to test :laughing:

cc #52072

6 years agoRollup merge of #52073 - xfix:patch-7, r=oli-obk
kennytm [Thu, 5 Jul 2018 23:07:23 +0000 (07:07 +0800)]
Rollup merge of #52073 - xfix:patch-7, r=oli-obk

Add a punch card to weird expressions test

6 years agotypo-fix stable ed'n error: "an onlyavailable" → "and only available"
Zack M. Davis [Fri, 6 Jul 2018 04:52:07 +0000 (21:52 -0700)]
typo-fix stable ed'n error: "an onlyavailable" → "and only available"

6 years agorustc: Update tracking issue for wasm_import_module
Alex Crichton [Fri, 6 Jul 2018 01:16:17 +0000 (18:16 -0700)]
rustc: Update tracking issue for wasm_import_module

It's now https://github.com/rust-lang/rust/issues/52090

6 years agoFix typo in cell.rs
Daniel Mueller [Sun, 20 May 2018 03:40:11 +0000 (20:40 -0700)]
Fix typo in cell.rs

6 years agoupdate run-pass test
Jorge Aparicio [Fri, 6 Jul 2018 01:18:19 +0000 (20:18 -0500)]
update run-pass test

6 years agoRollup merge of #52033 - zachrwolfe:outdated_value_comment, r=oli-obk
kennytm [Thu, 5 Jul 2018 23:07:21 +0000 (07:07 +0800)]
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.

6 years agoRollup merge of #52031 - RalfJung:arc, r=sfackler
kennytm [Thu, 5 Jul 2018 23:07:20 +0000 (07:07 +0800)]
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

6 years agoRollup merge of #52030 - bowbahdoe:patch-1, r=alexcrichton
kennytm [Thu, 5 Jul 2018 23:07:18 +0000 (07:07 +0800)]
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.

6 years agoRollup merge of #52019 - michaelwoerister:cross-lto-auto-plugin, r=alexcrichton
kennytm [Thu, 5 Jul 2018 23:07:17 +0000 (07:07 +0800)]
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

6 years agoRollup merge of #52016 - oli-obk:dedup_static_errors, r=estebank
kennytm [Thu, 5 Jul 2018 23:07:16 +0000 (07:07 +0800)]
Rollup merge of #52016 - oli-obk:dedup_static_errors, r=estebank

Deduplicate error reports for statics

fixes #51970

6 years agoRollup merge of #52005 - alexcrichton:update-llvm-for-wasm, r=kennytm
kennytm [Thu, 5 Jul 2018 23:07:15 +0000 (07:07 +0800)]
Rollup merge of #52005 - alexcrichton:update-llvm-for-wasm, r=kennytm

Update LLVM to bring in a wasm codegen fix

Closes #51986

6 years agoAuto merge of #51861 - GuillaumeGomez:prevent-some-markdown-short-doc, r=QuietMisdreavus
bors [Fri, 6 Jul 2018 00:36:34 +0000 (00:36 +0000)]
Auto merge of #51861 - GuillaumeGomez:prevent-some-markdown-short-doc, r=QuietMisdreavus

Prevent some markdown transformation on short docblocks

Before:

<img width="1440" alt="screen shot 2018-06-28 at 01 46 01" src="https://user-images.githubusercontent.com/3050060/42005762-7d533bbe-7a76-11e8-8361-027886803399.png">

After:

<img width="1440" alt="screen shot 2018-06-28 at 01 46 02" src="https://user-images.githubusercontent.com/3050060/42005768-81bd59a0-7a76-11e8-819b-9b4be72579d6.png">

This is only performed on short doc blocks, not on plain ones. Not all transformations are prevented (you still have a few like urls, code blocks, etc...).

cc @nical

r? @QuietMisdreavus

6 years agoUpdate musl to 1.1.19 and add patch to fix tls issue
Marco A L Barbosa [Thu, 5 Jul 2018 22:53:36 +0000 (19:53 -0300)]
Update musl to 1.1.19 and add patch to fix tls issue

6 years agoRollup merge of #51793 - GuillaumeGomez:search-result-hover, r=QuietMisdreavus
kennytm [Thu, 5 Jul 2018 23:07:11 +0000 (07:07 +0800)]
Rollup merge of #51793 - GuillaumeGomez:search-result-hover, r=QuietMisdreavus

Fix variant background color on hover in search results

Fixes #51792.

<img width="1440" alt="screen shot 2018-06-26 at 00 37 24" src="https://user-images.githubusercontent.com/3050060/41879313-60ecf3be-78d9-11e8-9986-21af529ab758.png">

r? @QuietMisdreavus

6 years agoRollup merge of #51619 - mksully22:ppc64le_rust, r=alexcrichton
kennytm [Thu, 5 Jul 2018 23:07:10 +0000 (07:07 +0800)]
Rollup merge of #51619 - mksully22:ppc64le_rust, r=alexcrichton

rust: add initial changes to support powerpc64le musl

Initial changes to support rustc building on ppc64le with musl. A PR was also submitted to libc component https://github.com/rust-lang/libc/pull/1023 to add changes to libc musl definitions.

A PR was submitted on Alpine https://github.com/alpinelinux/aports/pull/4549 with equivalent temporary patches for building on Alpine for now.

As a verification test a github project was put together to build ppc64le versions of rustc, rust-stdlib, and cargo on Alpine, https://github.com/mksully22/ppc64le_alpine_rust_1.26.2

6 years agoAuto merge of #51732 - GuillaumeGomez:cmd-line-lint-rustdoc, r=QuietMisdreavus
bors [Thu, 5 Jul 2018 22:28:53 +0000 (22:28 +0000)]
Auto merge of #51732 - GuillaumeGomez:cmd-line-lint-rustdoc, r=QuietMisdreavus

Add command line lint manipulation in rustdoc

Fixes #50082.

r? @QuietMisdreavus

6 years ago#[cfg(target_has_atomic_cas)] -> #[cfg(target_has_atomic = "cas")]
Jorge Aparicio [Thu, 5 Jul 2018 21:44:13 +0000 (16:44 -0500)]
#[cfg(target_has_atomic_cas)] -> #[cfg(target_has_atomic = "cas")]

6 years agoenable Atomic*.{load,store} for ARMv6-M / MSP430
Jorge Aparicio [Sat, 30 Jun 2018 19:56:08 +0000 (14:56 -0500)]
enable Atomic*.{load,store} for ARMv6-M / MSP430

closes #45085

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

6 years agoAuto merge of #51917 - alexcrichton:update, r=Mark-Simulacrum
bors [Thu, 5 Jul 2018 20:25:00 +0000 (20:25 +0000)]
Auto merge of #51917 - alexcrichton:update, r=Mark-Simulacrum

Update crates in `Cargo.lock`

This is a "hopefully routine" update of our crates.io-based crates in
`Cargo.lock`, and let's see how it fares on CI...

6 years agoDo not run AST borrowck when -Zborrowck=mir
Santiago Pastorino [Thu, 5 Jul 2018 18:14:34 +0000 (15:14 -0300)]
Do not run AST borrowck when -Zborrowck=mir

6 years agoAdd command line lint manipulation in rustdoc
Guillaume Gomez [Sat, 23 Jun 2018 13:09:21 +0000 (15:09 +0200)]
Add command line lint manipulation in rustdoc

6 years agoAuto merge of #51599 - GuillaumeGomez:reduce-search-index, r=QuietMisdreavus
bors [Thu, 5 Jul 2018 18:21:25 +0000 (18:21 +0000)]
Auto merge of #51599 - GuillaumeGomez:reduce-search-index, r=QuietMisdreavus

reduce search-index size

Reduce size of `search-index.js` of around 16%:

Going from `2996785` bytes to `2545583`.

r? @QuietMisdreavus

6 years agoAddress review comments
Oliver Schneider [Thu, 5 Jul 2018 17:30:06 +0000 (19:30 +0200)]
Address review comments

6 years agoOnly display difference of features, not all features
Oliver Schneider [Thu, 5 Jul 2018 17:02:43 +0000 (19:02 +0200)]
Only display difference of features, not all features

6 years agoVertical list of tools to check
Oliver Schneider [Thu, 5 Jul 2018 16:48:56 +0000 (18:48 +0200)]
Vertical list of tools to check

6 years agoUpdate Cargo.lock dependencies
Alex Crichton [Mon, 2 Jul 2018 16:33:16 +0000 (09:33 -0700)]
Update Cargo.lock dependencies

Run `cargo update` and let's see how far we can get!

6 years agoAuto merge of #52012 - oli-obk:clippy, r=kennytm
bors [Thu, 5 Jul 2018 11:44:08 +0000 (11:44 +0000)]
Auto merge of #52012 - oli-obk:clippy, r=kennytm

Update the clippy submodule

6 years agoUpdate the clippy submodule
Oliver Schneider [Tue, 3 Jul 2018 08:53:32 +0000 (10:53 +0200)]
Update the clippy submodule

6 years agofix for issue #8636
Mikhail Modin [Wed, 4 Jul 2018 06:45:01 +0000 (07:45 +0100)]
fix for issue #8636

6 years agoAdd a punch card to weird expressions test
Konrad Borowski [Thu, 5 Jul 2018 10:07:33 +0000 (12:07 +0200)]
Add a punch card to weird expressions test

6 years agoAuto merge of #51967 - varkor:const-body-break-continue, r=estebank
bors [Thu, 5 Jul 2018 09:40:08 +0000 (09:40 +0000)]
Auto merge of #51967 - varkor:const-body-break-continue, r=estebank

Fix various issues with control-flow statements inside anonymous constants

Fixes #51761.
Fixes #51963 (and the host of other reported issues there).
(Might be easiest to review per commit, as they should be standalone.)

r? @estebank

6 years agoupdate test
csmoe [Thu, 5 Jul 2018 09:38:44 +0000 (17:38 +0800)]
update test

6 years agoAuto merge of #51936 - japaric:rust-lld, r=alexcrichton
bors [Thu, 5 Jul 2018 06:44:16 +0000 (06:44 +0000)]
Auto merge of #51936 - japaric:rust-lld, r=alexcrichton

rename rustc's lld to rust-lld

to not shadow the system installed LLD when linking with LLD.

Before:

- `-C linker=lld -Z linker-flavor=ld.lld` uses rustc's LLD
- It's not possible to use a system installed LLD that's named `lld`

With this commit:

- `-C linker=rust-lld -Z linker-flavor=ld.lld` uses rustc's LLD
- `-C linker=lld -Z linker-flavor=ld.lld` uses the system installed LLD

we don't offer guarantees about the availability of LLD in the rustc sysroot so we can rename the tool as long as we don't break the wasm32-unknown-unknown target which depends on it.

r? @alexcrichton we discussed this before

6 years agoin the second copy lld is already named rust-lld
Jorge Aparicio [Thu, 5 Jul 2018 04:10:10 +0000 (23:10 -0500)]
in the second copy lld is already named rust-lld

6 years agoAuto merge of #51938 - zackmdavis:and_the_case_of_the_leaking_desugar, r=estebank
bors [Thu, 5 Jul 2018 02:35:25 +0000 (02:35 +0000)]
Auto merge of #51938 - zackmdavis:and_the_case_of_the_leaking_desugar, r=estebank

in which we plug the crack where `?`-desugaring leaked into errors

Most of the time, it's not a problem that the types of the arm bodies in
a desugared-from-`?` match are different (that is, specifically: in `x?`
where x is a `Result<A, B>`, the `Ok` arm body is an `A`, whereas the
`Err` arm diverges to return a `Result<A, B>`), because they're being
assigned to different places. But in tail position, the types do need to
match, and our error message was explicitly referring to "match arms",
which is confusing when there's no `match` in the sweetly sugared
source.

It is not without some misgivings that we pollute the clarity-of-purpose
of `note_error_origin` with the suggestion to wrap with `Ok` (the other
branches are pointing out the odd-arm-out in the HIR that is the origin
of the error; the new branch that issues the `Ok` suggestion is serving
a different purpose), but it's the natural place to do it given that
we're already matching on `ObligationCauseCode::MatchExpressionArm {
arm_span, source }` there.

Resolves #51632.

6 years agoRemove rustc_mir_borrowck attribute and use rustc_mir instead
Santiago Pastorino [Wed, 4 Jul 2018 22:25:37 +0000 (19:25 -0300)]
Remove rustc_mir_borrowck attribute and use rustc_mir instead

6 years agoreverse_postorder
csmoe [Thu, 5 Jul 2018 01:06:04 +0000 (09:06 +0800)]
reverse_postorder

6 years agoAuto merge of #51964 - matthewjasper:unused-mut-mir-generation, r=nikomatsakis
bors [Thu, 5 Jul 2018 00:22:14 +0000 (00:22 +0000)]
Auto merge of #51964 - matthewjasper:unused-mut-mir-generation, r=nikomatsakis

[NLL] Fix various unused mut errors

Closes #51801
Closes #50897
Closes #51830
Closes #51904
cc #51918 - keeping this one open in case there are any more issues

This PR contains multiple changes. List of changes with examples of what they fix:

* Change mir generation so that the parameter variable doesn't get a name when a `ref` pattern is used as an argument
```rust
fn f(ref y: i32) {} // doesn't trigger lint
```
* Change mir generation so that by-move closure captures don't get first moved into a temporary.
```rust
let mut x = 0; // doesn't trigger lint
move || {
    x = 1;
};
```
* Treat generator upvars the same as closure upvars
```rust
let mut x = 0; // This mut is now necessary and is not linted against.
move || {
    x = 1;
    yield;
};
```

r? @nikomatsakis

6 years agoAdd a link to the rustc docs
mark [Wed, 4 Jul 2018 22:24:43 +0000 (17:24 -0500)]
Add a link to the rustc docs

6 years agoImprove comments.
David Wood [Wed, 4 Jul 2018 20:48:25 +0000 (21:48 +0100)]
Improve comments.

6 years agoEnsure that borrows wind up unactivated.
David Wood [Wed, 4 Jul 2018 20:35:38 +0000 (21:35 +0100)]
Ensure that borrows wind up unactivated.

6 years agoAuto merge of #51803 - lucasem:rustdoc-code-hash-escape, r=GuillaumeGomez
bors [Wed, 4 Jul 2018 20:21:01 +0000 (20:21 +0000)]
Auto merge of #51803 - lucasem:rustdoc-code-hash-escape, r=GuillaumeGomez

rustdoc codeblock hash escape

So that docstring text such as the following (in a code block) can be created ergonomically:

```rust
let s = "
    foo
    # bar
    baz
";
```

Such code in a docstring hide the <code>&nbsp;&nbsp;&nbsp;&nbsp;# bar</code> line.

Previously, using two consecutive hashes <code>&nbsp;&nbsp;&nbsp;&nbsp;## bar</code> would turn the line into _shown_ `# bar`, losing the leading whitespace. A line of code like <code>&nbsp;&nbsp;&nbsp;&nbsp;# bar</code> (such as in the example above) **could not be represented** in the docstring text.

This commit makes the two consecutive hashes not also trim the leading whitespace — the two hashes simply **escape** into a single hash and do not hide the line, leaving the rest of that line unaffected. The new docstring text to achieve the above code block is:

```rust
/// ```
/// let s = "
///     foo
///     ## bar
///     baz
/// ";
/// ```
```

6 years agoCorrectly handle an activation from dead code.
David Wood [Wed, 4 Jul 2018 19:08:15 +0000 (20:08 +0100)]
Correctly handle an activation from dead code.

6 years agoAuto merge of #51611 - QuietMisdreavus:slippery-macros, r=ollie27
bors [Wed, 4 Jul 2018 18:15:14 +0000 (18:15 +0000)]
Auto merge of #51611 - QuietMisdreavus:slippery-macros, r=ollie27

rustdoc: import cross-crate macros alongside everything else

The thrilling conclusion of the cross-crate macro saga in rustdoc! After https://github.com/rust-lang/rust/pull/51425 made sure we saw all the namespaces of an import (and prevented us from losing the `vec!` macro in std's documentation), here is the PR to handle cross-crate macro re-exports at the same time as everything else. This way, attributes like `#[doc(hidden)]` and `#[doc(no_inline)]` can be used to control how the documentation for these macros is seen, rather than rustdoc inlining every macro every time.

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

6 years agorustdoc book on codeblock hash escaping
Lucas Morales [Wed, 4 Jul 2018 12:56:31 +0000 (08:56 -0400)]
rustdoc book on codeblock hash escaping

6 years agoAuto merge of #51395 - SimonSapin:repr-transparent, r=SimonSapin
bors [Wed, 4 Jul 2018 16:21:42 +0000 (16:21 +0000)]
Auto merge of #51395 - SimonSapin:repr-transparent, r=SimonSapin

Add #[repr(transparent)] to some libcore types

* `UnsafeCell`
* `Cell`
* `NonZero*`
* `NonNull`
* `Unique`

CC https://github.com/rust-lang/rust/issues/43036

6 years agoShorten the line
CrLF0710 [Wed, 4 Jul 2018 15:36:51 +0000 (23:36 +0800)]
Shorten the line

Shorten the line to make tidy happy.

6 years agoInclude VS 2017 in error message.
CrLF0710 [Wed, 4 Jul 2018 14:49:35 +0000 (22:49 +0800)]
Include VS 2017 in error message.

Update error prompt message to indicate that VS 2017 is supported (for a while now).

6 years agoAuto merge of #51870 - nnethercote:reuse-DefsUsesVisitor, r=nikomatsakis
bors [Wed, 4 Jul 2018 14:12:14 +0000 (14:12 +0000)]
Auto merge of #51870 - nnethercote:reuse-DefsUsesVisitor, r=nikomatsakis

Reuse the `DefsUsesVisitor` in `simulate_block()`.

This avoids a bunch of allocations for the bitsets within it,
speeding up a number of NLL benchmarks, the best by 1%.

r? @nikomatsakis

6 years agoImproving span of unknown lint tool error message
flip1995 [Wed, 4 Jul 2018 12:25:33 +0000 (14:25 +0200)]
Improving span of unknown lint tool error message