]> git.lizzy.rs Git - rust.git/log
rust.git
5 years agoAuto merge of #54251 - varkor:silence-bad_style, r=Manishearth
bors [Tue, 16 Oct 2018 18:01:41 +0000 (18:01 +0000)]
Auto merge of #54251 - varkor:silence-bad_style, r=Manishearth

Make `bad_style` a silent alias for `nonstandard_style`

Now only `nonstandard_style` is suggested in `rustc -W help`, but `bad_style` will not produce a warning. Closes #41646.

r? @Manishearth

5 years agoAuto merge of #54937 - alexcrichton:update-stdsimd, r=nikomatsakis
bors [Tue, 16 Oct 2018 15:16:12 +0000 (15:16 +0000)]
Auto merge of #54937 - alexcrichton:update-stdsimd, r=nikomatsakis

Update stdsimd submodule

Should hopefully bring documentation for wasm intrinsics online!

5 years agoAuto merge of #55067 - ljedrz:generic_iterator_related_improvements, r=petrochenkov
bors [Tue, 16 Oct 2018 07:04:10 +0000 (07:04 +0000)]
Auto merge of #55067 - ljedrz:generic_iterator_related_improvements, r=petrochenkov

A few iterator-related improvements

- typeck: don't collect into a vector when unnecessary
- create only one vector when winnowing candidates
- change a cloning map to `into_iter`

5 years agoAuto merge of #55023 - euclio:llvm-error-handler, r=cuviper
bors [Tue, 16 Oct 2018 02:06:26 +0000 (02:06 +0000)]
Auto merge of #55023 - euclio:llvm-error-handler, r=cuviper

Exit with code 101 on fatal codegen errors

Fixes #54992.

This PR installs a custom fatal error handler that prints the error from LLVM and exits with 101. There should be no visible change in the output from LLVM. This allows distinguishing a fatal LLVM error with a compilation error by exit code.

This PR also modifies the LLVM codegen backend to ICE instead of emitting a fatal error when encountering a LLVM worker thread panic for the same reason.

r? @cuviper

5 years agoAuto merge of #55095 - Manishearth:rollup, r=Manishearth
bors [Mon, 15 Oct 2018 19:50:50 +0000 (19:50 +0000)]
Auto merge of #55095 - Manishearth:rollup, r=Manishearth

Rollup of 11 pull requests

Successful merges:

 - #54820 (Closes #54538: `unused_patterns` lint)
 - #54963 (Cleanup rustc/session)
 - #54991 (add test for #23189)
 - #55025 (Add missing lifetime fragment specifier to error message.)
 - #55047 (doc: make core::fmt::Error example more simple)
 - #55048 (Don't collect to vectors where unnecessary)
 - #55060 (clarify pointer add/sub function safety concerns)
 - #55062 (Make EvalContext::step public again)
 - #55066 (Fix incorrect link in println! documentation)
 - #55081 (Deduplicate tests)
 - #55088 (Update rustc documentation link)

Failed merges:

r? @ghost

5 years agoRollup merge of #55088 - juchiast:master, r=varkor
Manish Goregaokar [Mon, 15 Oct 2018 17:15:23 +0000 (10:15 -0700)]
Rollup merge of #55088 - juchiast:master, r=varkor

Update rustc documentation link

link: http://manishearth.github.io/rust-internals-docs/rustc/
link: https://doc.rust-lang.org/nightly/nightly-rustc/rustc/
5 years agoRollup merge of #55081 - sinkuu:dedup_test, r=Manishearth
Manish Goregaokar [Mon, 15 Oct 2018 17:15:22 +0000 (10:15 -0700)]
Rollup merge of #55081 - sinkuu:dedup_test, r=Manishearth

Deduplicate tests

* [`ui/lifetimes/lifetime-errors/ex3-both-anon-regions-both-are-structs-4`](https://github.com/rust-lang/rust/blob/0c665e20db6c61de8f741bca3ca7660e679885c0/src/test/ui/lifetimes/lifetime-errors/ex3-both-anon-regions-both-are-structs-4.rs)
and [`ex3-both-anon-regions-both-are-structs-3`](https://github.com/rust-lang/rust/blob/0c665e20db6c61de8f741bca3ca7660e679885c0/src/test/ui/lifetimes/lifetime-errors/ex3-both-anon-regions-both-are-structs-3.rs)
* [`ui/lint/lint-group-style`](https://github.com/rust-lang/rust/blob/0c665e20db6c61de8f741bca3ca7660e679885c0/src/test/ui/lint/lint-group-style.rs) and [`lint-group-nonstandard-style`](https://github.com/rust-lang/rust/blob/0c665e20db6c61de8f741bca3ca7660e679885c0/src/test/ui/lint/lint-group-nonstandard-style.rs)

5 years agoRollup merge of #55066 - iaz3:patch-1, r=sfackler
Manish Goregaokar [Mon, 15 Oct 2018 17:15:21 +0000 (10:15 -0700)]
Rollup merge of #55066 - iaz3:patch-1, r=sfackler

Fix incorrect link in println! documentation

The eprintln! link was incorrectly linking to eprint! instead

5 years agoRollup merge of #55062 - bjorn3:ecx-step-public, r=oli-obk
Manish Goregaokar [Mon, 15 Oct 2018 17:15:20 +0000 (10:15 -0700)]
Rollup merge of #55062 - bjorn3:ecx-step-public, r=oli-obk

Make EvalContext::step public again

This is needed for priroda

Fixes #55061

5 years agoRollup merge of #55060 - jannic:patch-1, r=joshtriplett
Manish Goregaokar [Mon, 15 Oct 2018 17:15:19 +0000 (10:15 -0700)]
Rollup merge of #55060 - jannic:patch-1, r=joshtriplett

clarify pointer add/sub function safety concerns

Ralf Jung made the same changes to the offset functions' documentation
in commit fb089156. As add/sub just call offset, the same limitation
applies here, as well.

I did not copy the whole explanation ("In particular, the resulting pointer may *not* be used to access a different allocated object [...]") because I'd consider that as being too repetitive. The documentation of add/sub already refers to the offset function, so people interested in the details can look it up, there.
But changing 'an object' to 'the same object' is a small change which improves clarity a lot.

5 years agoRollup merge of #55048 - ljedrz:begone_vecc, r=estebank
Manish Goregaokar [Mon, 15 Oct 2018 17:15:17 +0000 (10:15 -0700)]
Rollup merge of #55048 - ljedrz:begone_vecc, r=estebank

Don't collect to vectors where unnecessary

This removes 3 vector allocations and a call to `cloned()`.

5 years agoRollup merge of #55047 - tshepang:simple, r=alexcrichton
Manish Goregaokar [Mon, 15 Oct 2018 17:15:16 +0000 (10:15 -0700)]
Rollup merge of #55047 - tshepang:simple, r=alexcrichton

doc: make core::fmt::Error example more simple

5 years agoRollup merge of #55025 - ehuss:missing-lifetime-err-msg, r=petrochenkov
Manish Goregaokar [Mon, 15 Oct 2018 17:15:15 +0000 (10:15 -0700)]
Rollup merge of #55025 - ehuss:missing-lifetime-err-msg, r=petrochenkov

Add missing lifetime fragment specifier to error message.

A very minor issue, `lifetime` was missing from the error list.
I left `literal` in the list, even though it is unstable. It looks like it may stabilize soon anyways.

5 years agoRollup merge of #54991 - euclio:issue-23189, r=tmandry
Manish Goregaokar [Mon, 15 Oct 2018 17:15:13 +0000 (10:15 -0700)]
Rollup merge of #54991 - euclio:issue-23189, r=tmandry

add test for #23189

Fixes #23189

5 years agoRollup merge of #54963 - ljedrz:cleanup_rustc_session, r=varkor
Manish Goregaokar [Mon, 15 Oct 2018 17:15:12 +0000 (10:15 -0700)]
Rollup merge of #54963 - ljedrz:cleanup_rustc_session, r=varkor

Cleanup rustc/session

- improve allocations
- improve common patterns
- use `to_owned` when no string conversion is needed
- move `const`s up to improve readability
- whitespace & formatting improvements

5 years agoRollup merge of #54820 - kleimkuhler:issue-54538-unused_patterns-lint, r=nikomatsakis
Manish Goregaokar [Mon, 15 Oct 2018 17:15:11 +0000 (10:15 -0700)]
Rollup merge of #54820 - kleimkuhler:issue-54538-unused_patterns-lint, r=nikomatsakis

Closes #54538: `unused_patterns` lint

Closes #54538

r? @nikomatsakis

5 years agoAuto merge of #54858 - nikomatsakis:universes-refactor-2, r=scalexm
bors [Mon, 15 Oct 2018 16:46:55 +0000 (16:46 +0000)]
Auto merge of #54858 - nikomatsakis:universes-refactor-2, r=scalexm

second round of refactorings for universes

A second round of (what I believe to be) "no functional change" refactorings, taken from my universes branch.

r? @scalexm

5 years agoremove the sub/super terminology for universes
Niko Matsakis [Mon, 8 Oct 2018 11:17:36 +0000 (07:17 -0400)]
remove the sub/super terminology for universes

Instead, we talk about:

- creating the "next" universe
- universes "extending" one another
- and `u1.can_name(u2)`, meaning that `u1` contains all names from `u2`

5 years agopacify the mercilous tidy with rustfmt
Niko Matsakis [Mon, 8 Oct 2018 10:59:37 +0000 (06:59 -0400)]
pacify the mercilous tidy with rustfmt

5 years agoremove dead iterator code
Niko Matsakis [Fri, 28 Sep 2018 19:52:54 +0000 (15:52 -0400)]
remove dead iterator code

5 years agohide `SmallCanonicalVarValues` in `OriginalQueryValues` struct
Niko Matsakis [Wed, 26 Sep 2018 19:49:41 +0000 (15:49 -0400)]
hide `SmallCanonicalVarValues` in `OriginalQueryValues` struct

5 years agoconvert `UniverseIndex` into a `newtype_index!`
Niko Matsakis [Wed, 26 Sep 2018 17:55:54 +0000 (13:55 -0400)]
convert `UniverseIndex` into a `newtype_index!`

5 years agomake `UniverseIndex` hashable, rename "sub-" to "superuniverse"
Niko Matsakis [Wed, 26 Sep 2018 16:27:01 +0000 (12:27 -0400)]
make `UniverseIndex` hashable, rename "sub-" to "superuniverse"

The only name was silly. U1 can contain everything from U0 *plus* more
things.

5 years agocontrol canonicalization with a trait vs bools
Niko Matsakis [Wed, 26 Sep 2018 14:18:33 +0000 (10:18 -0400)]
control canonicalization with a trait vs bools

5 years agoAuto merge of #54917 - varkor:unused-which, r=cramertj
bors [Mon, 15 Oct 2018 14:16:45 +0000 (14:16 +0000)]
Auto merge of #54917 - varkor:unused-which, r=cramertj

Unused result warning: "X which must" ↦ "X that must"

Address a little grammatical faux pas in the unused result warning.

5 years agointroduce `canonical_var_for_region` helper fn
Niko Matsakis [Tue, 25 Sep 2018 18:53:50 +0000 (14:53 -0400)]
introduce `canonical_var_for_region` helper fn

5 years agotype_op/mod.rs: rustfmt
Niko Matsakis [Mon, 24 Sep 2018 19:32:07 +0000 (15:32 -0400)]
type_op/mod.rs: rustfmt

5 years agorename `QueryResult` to `QueryResponse`
Niko Matsakis [Mon, 24 Sep 2018 19:27:47 +0000 (15:27 -0400)]
rename `QueryResult` to `QueryResponse`

`Result` really sounds like the rustc result type

5 years agobundle up "canonical instantiation" with infcx creation
Niko Matsakis [Mon, 24 Sep 2018 19:15:25 +0000 (15:15 -0400)]
bundle up "canonical instantiation" with infcx creation

5 years agocanonicalizer.rs: rustfmt
Niko Matsakis [Fri, 5 Oct 2018 17:00:53 +0000 (13:00 -0400)]
canonicalizer.rs: rustfmt

5 years agoAuto merge of #55084 - matthiaskrgr:clippy, r=oli-obk
bors [Mon, 15 Oct 2018 10:31:48 +0000 (10:31 +0000)]
Auto merge of #55084 - matthiaskrgr:clippy, r=oli-obk

submodules: update clippy from 9d337313 to 5afdf8b7

Should fix toolstate.

Changes:

````
fix for rustc master
mem_forget: fix syntax error in code sample
explicit_counter_loop fix #3308 false positive
new_ret_no_self test remove tool lints cfg flag
Added new_ret_no_self exception to clippy to pass dogfood tests
Removed new_ret_no_self tests from method.rs
new_ret_no_self correctly lint impl return
Removed unused variables
new_ret_no_self fix false positive for impl trait return with associated type self
new_ret_no_self corrected panic and added test stderr
new_ret_no_self added positive test cases
Fix some more `stutter` warnings
unused unit lint
Install Windows SDK 10.0 on travis
cmp_owned refactor
cmp_owned correct error message if rhs is deref
Add a comment reminding to update README if the default changes
Specify which categories are enabled by default
Only run markdown linter on linux
Move Travis Windows build to allowed failures
Add Travis windows build
Fix `doc_markdown` lints
Fix `stutter` lints
Fix `similar_names` warnings
cmp_owned current suggestion for multiple deref
cmp_owned add test for multiple dereference
Corrected single-character string constant used as pattern found in dogfood test
Fixes 3289, cmp_owned wording and false positive
````

5 years agoUpdate rustc documentation link
Do Duy [Mon, 15 Oct 2018 08:54:29 +0000 (15:54 +0700)]
Update rustc documentation link

5 years agorustc/session: move consts up to improve readability
ljedrz [Wed, 10 Oct 2018 13:35:56 +0000 (15:35 +0200)]
rustc/session: move consts up to improve readability

5 years agorustc/session: use to_owned when no string conversion is needed
ljedrz [Wed, 10 Oct 2018 13:34:07 +0000 (15:34 +0200)]
rustc/session: use to_owned when no string conversion is needed

5 years agorustc/session: improve common patterns
ljedrz [Wed, 10 Oct 2018 13:33:10 +0000 (15:33 +0200)]
rustc/session: improve common patterns

5 years agorustc/session: improve allocations
ljedrz [Wed, 10 Oct 2018 13:30:53 +0000 (15:30 +0200)]
rustc/session: improve allocations

5 years agorustc/session: whitespace & formatting improvements
ljedrz [Wed, 10 Oct 2018 13:24:31 +0000 (15:24 +0200)]
rustc/session: whitespace & formatting improvements

5 years agoAuto merge of #55064 - RalfJung:miri-update, r=oli-obk
bors [Mon, 15 Oct 2018 06:36:23 +0000 (06:36 +0000)]
Auto merge of #55064 - RalfJung:miri-update, r=oli-obk

update miri

This pulls in the changes in miri to actually enable validation. So, the rustc test suite will let us know if anything we cover regresses in that regard. :)

r? @oli-obk

5 years agosubmodules: update clippy from 9d337313 to 5afdf8b7
Matthias Krüger [Mon, 15 Oct 2018 04:50:56 +0000 (06:50 +0200)]
submodules: update clippy from 9d337313 to 5afdf8b7

Changes:

````
fix for rustc master
mem_forget: fix syntax error in code sample
explicit_counter_loop fix #3308 false positive
new_ret_no_self test remove tool lints cfg flag
Added new_ret_no_self exception to clippy to pass dogfood tests
Removed new_ret_no_self tests from method.rs
new_ret_no_self correctly lint impl return
Removed unused variables
new_ret_no_self fix false positive for impl trait return with associated type self
new_ret_no_self corrected panic and added test stderr
new_ret_no_self added positive test cases
Fix some more `stutter` warnings
unused unit lint
Install Windows SDK 10.0 on travis
cmp_owned refactor
cmp_owned correct error message if rhs is deref
Add a comment reminding to update README if the default changes
Specify which categories are enabled by default
Only run markdown linter on linux
Move Travis Windows build to allowed failures
Add Travis windows build
Fix `doc_markdown` lints
Fix `stutter` lints
Fix `similar_names` warnings
cmp_owned current suggestion for multiple deref
cmp_owned add test for multiple dereference
Corrected single-character string constant used as pattern found in dogfood test
Fixes 3289, cmp_owned wording and false positive
````

5 years agoAuto merge of #55024 - alexcrichton:wasm-simd-by-val, r=estebank
bors [Mon, 15 Oct 2018 02:48:24 +0000 (02:48 +0000)]
Auto merge of #55024 - alexcrichton:wasm-simd-by-val, r=estebank

rustc: Allow targets to specify SIMD args are by-val

The upcoming SIMD support in the wasm target is unique from the other
platforms where it's either unconditionally available or not available,
there's no halfway where a subsection of the program can use it but no
other parts of the program can use it. In this world it's valid for wasm
SIMD args to always be passed by value and there's no need to pass them
by reference.

This commit adds a new custom target specification option
`simd_types_indirect` which defaults to `true`, but the wasm backend
disables this and sets it to `false`.

5 years agoDeduplicate tests
Shotaro Yamada [Mon, 15 Oct 2018 00:29:17 +0000 (09:29 +0900)]
Deduplicate tests

* `ui/lifetimes/lifetime-errors/ex3-both-anon-regions-both-are-structs-4`
and `ex3-both-anon-regions-both-are-structs-3`
* `ui/lint/lint-group-style` and `lint-group-nonstandard-style`

5 years agoAuto merge of #55008 - ljedrz:cleanup_rustc_driver, r=estebank
bors [Mon, 15 Oct 2018 00:18:27 +0000 (00:18 +0000)]
Auto merge of #55008 - ljedrz:cleanup_rustc_driver, r=estebank

Cleanup rustc/driver

- improve/remove allocations
- simplify `profile::trace::cons*`
- don't sort `base` if it only has one element
- use `Cow<str>` where applicable
- use `unwrap_or_else` with function calls
- remove an explicit `return`, add an explicit `None`
- remove lifetimes from `const`s
- improve common patterns
- improve macro calls
- whitespace & formatting fixes

5 years agoAuto merge of #55046 - wesleywiser:no_virtual_call_inlining, r=varkor
bors [Sun, 14 Oct 2018 21:50:23 +0000 (21:50 +0000)]
Auto merge of #55046 - wesleywiser:no_virtual_call_inlining, r=varkor

[mir-inlining] Don't inline virtual calls

5 years agoremove unnecessary emphasis in doc comment
Jan Niehusmann [Sun, 14 Oct 2018 20:23:33 +0000 (20:23 +0000)]
remove unnecessary emphasis in doc comment

During review of the previous commit, @joshtriplett noticed that
the emphasis on 'the same' is unnecessary. For consistency, remove it
on the offset() functions, as well.

5 years agoclarify pointer add/sub function safety concerns
Jan Niehusmann [Sun, 14 Oct 2018 08:06:36 +0000 (08:06 +0000)]
clarify pointer add/sub function safety concerns

Ralf Jung made the same changes to the offset functions' documentation
in commit fb089156. As add/sub just call offset, the same limitation
applies here, as well.

Removed emphasis on review request by @joshtriplett

5 years agoAuto merge of #55032 - oli-obk:the_early_unwrap_gets_the_panic, r=Mark-Simulacrum
bors [Sun, 14 Oct 2018 18:06:20 +0000 (18:06 +0000)]
Auto merge of #55032 - oli-obk:the_early_unwrap_gets_the_panic, r=Mark-Simulacrum

Check the invariant for `principal` inside the method

r? @Mark-Simulacrum

5 years ago[mir-inlining] Don't inline virtual calls
Wesley Wiser [Fri, 12 Oct 2018 01:28:20 +0000 (21:28 -0400)]
[mir-inlining] Don't inline virtual calls

Prior to this change, the test case would output `1` instead of `2` like
it should.

5 years agoUnused result warning: "X which must" ↦ "X that must"
varkor [Mon, 8 Oct 2018 19:36:50 +0000 (20:36 +0100)]
Unused result warning: "X which must" ↦ "X that must"

5 years agochange a cloning map to into_iter
ljedrz [Sun, 14 Oct 2018 12:30:27 +0000 (14:30 +0200)]
change a cloning map to into_iter

5 years agocreate only one vector when winnowing candidates
ljedrz [Sun, 14 Oct 2018 12:17:32 +0000 (14:17 +0200)]
create only one vector when winnowing candidates

5 years agoAuto merge of #55055 - matthiaskrgr:bump_beta, r=Mark-Simulacrum
bors [Sun, 14 Oct 2018 14:24:19 +0000 (14:24 +0000)]
Auto merge of #55055 - matthiaskrgr:bump_beta, r=Mark-Simulacrum

bump bootstrap compiler to rustc beta 2018-10-13

beta was switched to bootstrap from stable 1.29.2 since 1.29.2 got the aliasing bug workaround.
For extra sanity we should probably bootstrap from a beta that was built with these fixed applied in the host compiler.

5 years agoFix incorrect link in println! documentation
Diana [Sun, 14 Oct 2018 12:14:21 +0000 (08:14 -0400)]
Fix incorrect link in println! documentation

The eprintln! link was incorrectly linking to eprint! instead

5 years agotypeck: don't collect to a vector when unnecessary
ljedrz [Sun, 14 Oct 2018 12:10:54 +0000 (14:10 +0200)]
typeck: don't collect to a vector when unnecessary

5 years agoAuto merge of #55051 - matthiaskrgr:dist_msg, r=Mark-Simulacrum
bors [Sun, 14 Oct 2018 11:56:09 +0000 (11:56 +0000)]
Auto merge of #55051 - matthiaskrgr:dist_msg, r=Mark-Simulacrum

boostrap: dist: if a file cannot be installed because it does not exist, print its name in the error message.

5 years agoAdd comment about step being used by priroda
bjorn3 [Sun, 14 Oct 2018 09:50:05 +0000 (11:50 +0200)]
Add comment about step being used by priroda

5 years agoupdate miri
Ralf Jung [Sun, 14 Oct 2018 09:33:50 +0000 (11:33 +0200)]
update miri

5 years agoAuto merge of #55015 - dsciarra:underscores-constant-names, r=petrochenkov
bors [Sun, 14 Oct 2018 09:28:19 +0000 (09:28 +0000)]
Auto merge of #55015 - dsciarra:underscores-constant-names, r=petrochenkov

Support underscore as constant name

Issue: #54912

5 years agoMake EvalContext::step public again
bjorn3 [Sun, 14 Oct 2018 09:10:41 +0000 (11:10 +0200)]
Make EvalContext::step public again

Fixes #55061

5 years agoSupport underscore as constant name
Donato Sciarra [Thu, 11 Oct 2018 22:34:26 +0000 (00:34 +0200)]
Support underscore as constant name

Issue: 54912

5 years agoAuto merge of #55049 - tshepang:fix, r=withoutboats
bors [Sun, 14 Oct 2018 06:40:17 +0000 (06:40 +0000)]
Auto merge of #55049 - tshepang:fix, r=withoutboats

doc: fix sentence structure in std::fmt

5 years agoDon't collect to vectors where unnecessary
ljedrz [Sat, 13 Oct 2018 18:51:25 +0000 (20:51 +0200)]
Don't collect to vectors where unnecessary

5 years agoAuto merge of #55018 - euclio:issue-24421, r=alexcrichton
bors [Sun, 14 Oct 2018 01:53:28 +0000 (01:53 +0000)]
Auto merge of #55018 - euclio:issue-24421, r=alexcrichton

add test for #24421

Fixes #24421.

Also removes a README which points to a non-existent directory.

5 years agoAuto merge of #55017 - memoryruins:add-tests, r=alexcrichton
bors [Sat, 13 Oct 2018 23:22:15 +0000 (23:22 +0000)]
Auto merge of #55017 - memoryruins:add-tests, r=alexcrichton

Add tests for issues #54966 and #52240

Closes #54966
Closes #52240

5 years agobump bootstrap compiler to rustc beta 2018-10-13
Matthias Krüger [Sat, 13 Oct 2018 22:47:24 +0000 (00:47 +0200)]
bump bootstrap compiler to rustc beta 2018-10-13

beta was switched to bootstrap from stable 1.29.2 since 1.29.2 got the aliasing bug workaround.
For extra sanity we should probably bootstrap from a beta that was built with these fixed appied in the host compiler.

5 years agoboostrap: dist: if a file cannot be installed because it does not exist, print its...
Matthias Krüger [Sat, 13 Oct 2018 21:33:10 +0000 (23:33 +0200)]
boostrap: dist: if a file cannot be installed because it does not exist, print its name in the error message.

5 years agoAuto merge of #54916 - matthiaskrgr:submodules_update, r=oli-obk
bors [Sat, 13 Oct 2018 19:43:36 +0000 (19:43 +0000)]
Auto merge of #54916 - matthiaskrgr:submodules_update, r=oli-obk

submodules: update clippy, rls and cargo, fix toolstate

rustfmt update failed because of different rustc-ap-syntax versions.

fix clippy toolstate failure

Fixes #54697

5 years agodoc: fix sentence structure in std::fmt
Tshepang Lekhonkhobe [Sat, 13 Oct 2018 19:20:36 +0000 (21:20 +0200)]
doc: fix sentence structure in std::fmt

5 years agobootstrap: update clippy license locations which changed due to relicensing.
Matthias Krüger [Sat, 13 Oct 2018 18:38:49 +0000 (20:38 +0200)]
bootstrap: update clippy license locations which changed due to relicensing.

5 years agoAlso adjust rustdoc to the principal changes
Oliver Scherer [Sat, 13 Oct 2018 17:41:27 +0000 (19:41 +0200)]
Also adjust rustdoc to the principal changes

5 years agodoc: make core::fmt::Error example more simple
Tshepang Lekhonkhobe [Sat, 13 Oct 2018 17:28:18 +0000 (19:28 +0200)]
doc: make core::fmt::Error example more simple

5 years agosubmodules: update cargo from ad6e5c00 to 5dbac988
Matthias Krüger [Mon, 8 Oct 2018 19:05:14 +0000 (21:05 +0200)]
submodules: update cargo from ad6e5c00 to 5dbac988

Changes:

Switch to use crates-io as the registry name and don't include publish when registry is not specified
fix redundant pkgid generation
validate some basic properties of a valid resolve
Detail dep name in invalid version error
Fix dashes in rename dependencies.
Bump flate2 to 1.0.3
Add default in config document
Add support for providing a default registry
Add support for registry to new and init
use impl Iterator instead of custom types in `source`
let jetbrains reorder some impls to match the definition
use impl Iterator instead of custom types in resolver and graph
remove Graph::sort as it is unused
fmt
Bump libgit2-sys to 0.7.9
Switch to use registry
Allow registry option for cargo install.
Second attempt at fixing msys terminal width.
Try to improve "version not found" error
Fix typo

5 years agosubmodules: update rls from 15d4d4a to 440a985
Matthias Krüger [Thu, 11 Oct 2018 12:03:21 +0000 (14:03 +0200)]
submodules: update rls from 15d4d4a to 440a985

Changes:

Apply Clippy lints
Respect build_dir when creating external build plans
Fix Windows tests
Implement external build plan
Detect manifest diagnostic position for toml::de::Error
Fix std::sync hover doc expectation
Apply CI specific long timeout
Propagate cargo errors as manifest diagnostics
Add test for use statement function completions
Refactor cmd test `within_timeout`
Avoid stdout-writer/rls process exit race
Improve cmd test "no shutdown response" error message
Add RUST_BACKTRACE=1 to ci env
Improve cmd test timeout reliability
Fix use statement function suggestions
Revert "Revert "Remove "edition" Cargo feature (it's stable now)""
Add build_wait() tests
Automatically tune wait_to_build
Rework cmd tests

Fixes #54697

5 years agosubmodules: update clippy from 32b1d1fc to 9d337313
Matthias Krüger [Thu, 11 Oct 2018 11:53:32 +0000 (13:53 +0200)]
submodules: update clippy from 32b1d1fc to 9d337313

Changes:

Remove now-useless `allow(unknown_lints)`
Stabilize tool lints
Use `impl Iterator` in arg position in clippy_dev
Fix fn_to_numeric_cast_with_truncation suppression
Limit commutative assign op lint to primitive types
Clarify code
Fix #2937
Fix cast_possible_wrap and cast_sign_loss warnings
Fix cast_possible_truncation warnings
Fixes #2925 cmp_owned false positive
if_let_redundant_pattern_matching: use Span.to() instead of Span.with_hi() to fix crash.
Improve diagnostics in case of lifetime elision (closes #3284)
Fix items_after_statements for `const`s
Fix items_after_statements for sub-functions
Fix items_after_statements for `use` statements
Don't suggest cloned() for map Box deref
Fix excessive_precision false positive
Fix FP in `fn_to_numeric_cast_with_truncation`
new_without_default should not warn about unsafe new
fix command to manually test an example
Add license to README
Adding more detail to filter_map lint documentation.
additional people
Add license header to other files
Add license header to Rust files
Relicense clippy
Document relicensing process
Fix util/export.py to include lints from methods

5 years agoAuto merge of #55003 - zackmdavis:must_use_assoc_fn, r=varkor
bors [Sat, 13 Oct 2018 17:03:47 +0000 (17:03 +0000)]
Auto merge of #55003 - zackmdavis:must_use_assoc_fn, r=varkor

`#[must_use]` for associated functions is supposed to actually work

In the comments of (closed, defunct) pull request #54884, @Centril [noted that](https://github.com/rust-lang/rust/pull/54884#issuecomment-427626495) must-use annotations didn't work on an associated function (what other communities might call a "static method"). Subsequent logging revealed that in this case we have a `Def::Method`, whereas the lint pass was only matching on `Def::Fn`. (One could argue that those def-names are thereby misleading—must-use for `self`-ful methods have always worked—but documenting or reworking that can be left to another day.)

r? @varkor

5 years agoAuto merge of #54951 - alexcrichton:more-wasm-threads, r=sfackler
bors [Sat, 13 Oct 2018 14:28:48 +0000 (14:28 +0000)]
Auto merge of #54951 - alexcrichton:more-wasm-threads, r=sfackler

std: Implement TLS for wasm32-unknown-unknown

This adds an implementation of thread local storage for the
`wasm32-unknown-unknown` target when the `atomics` feature is
implemented. This, however, comes with a notable caveat of that it
requires a new feature of the standard library, `wasm-bindgen-threads`,
to be enabled.

Thread local storage for wasm (when `atomics` are enabled and there's
actually more than one thread) is powered by the assumption that an
external entity can fill in some information for us. It's not currently
clear who will fill in this information nor whose responsibility it
should be long-term. In the meantime there's a strategy being gamed out
in the `wasm-bindgen` project specifically, and the hope is that we can
continue to test and iterate on the standard library without committing
to a particular strategy yet.

As to the details of `wasm-bindgen`'s strategy, LLVM doesn't currently
have the ability to emit custom `global` values (thread locals in a
`WebAssembly.Module`) so we leverage the `wasm-bindgen` CLI tool to do
it for us. To that end we have a few intrinsics, assuming two global values:

* `__wbindgen_current_id` - gets the current thread id as a 32-bit
  integer. It's `wasm-bindgen`'s responsibility to initialize this
  per-thread and then inform libstd of the id. Currently `wasm-bindgen`
  performs this initialization as part of the `start` function.
* `__wbindgen_tcb_{get,set}` - in addition to a thread id it's assumed
  that there's a global available for simply storing a pointer's worth
  of information (a thread control block, which currently only contains
  thread local storage). This would ideally be a native `global`
  injected by LLVM, but we don't have a great way to support that right
  now.

To reiterate, this is all intended to be unstable and purely intended
for testing out Rust on the web with threads. The story is very likely
to change in the future and we want to make sure that we're able to do
that!

5 years agoAuto merge of #54997 - davidtwco:issue-54896, r=nagisa
bors [Sat, 13 Oct 2018 11:52:49 +0000 (11:52 +0000)]
Auto merge of #54997 - davidtwco:issue-54896, r=nagisa

The #[panic_handler] attribute can be applied to non-functions

Fixes #54896.

This commit extends the existing lang items functionality to assert
that the `#[lang_item]` attribute is only found on the appropriate item
for any given lang item. That is, language items representing traits
must only ever have their corresponding attribute placed on a trait, for
example.

r? @nagisa

5 years agoCheck the invariant for `principal` inside the method
Oliver Scherer [Sat, 13 Oct 2018 09:32:49 +0000 (11:32 +0200)]
Check the invariant for `principal` inside the method

5 years agoAuto merge of #54955 - RalfJung:miri-validate2, r=oli-obk
bors [Sat, 13 Oct 2018 09:20:48 +0000 (09:20 +0000)]
Auto merge of #54955 - RalfJung:miri-validate2, r=oli-obk

miri engine: Fix run-time validation

This fixes all false positives that came up when actually enabling this in miri.

r? @oli-obk

5 years agorustc/driver: whitespace & formatting fixes
ljedrz [Fri, 12 Oct 2018 12:36:10 +0000 (14:36 +0200)]
rustc/driver: whitespace & formatting fixes

5 years agorustc/driver: unwrap_or_else with function calls
ljedrz [Fri, 12 Oct 2018 12:35:07 +0000 (14:35 +0200)]
rustc/driver: unwrap_or_else with function calls

5 years agorustc/driver: remove explicit return, add explicit None
ljedrz [Fri, 12 Oct 2018 12:32:56 +0000 (14:32 +0200)]
rustc/driver: remove explicit return, add explicit None

5 years agorustc/driver: don't sort base if it only has one element
ljedrz [Fri, 12 Oct 2018 12:28:06 +0000 (14:28 +0200)]
rustc/driver: don't sort base if it only has one element

5 years agorustc/driver: remove lifetimes from consts
ljedrz [Fri, 12 Oct 2018 12:24:38 +0000 (14:24 +0200)]
rustc/driver: remove lifetimes from consts

5 years agorustc/driver: improve common patterns
ljedrz [Fri, 12 Oct 2018 12:21:56 +0000 (14:21 +0200)]
rustc/driver: improve common patterns

5 years agorustc/driver: use Cow<str> where applicable
ljedrz [Fri, 12 Oct 2018 12:16:06 +0000 (14:16 +0200)]
rustc/driver: use Cow<str> where applicable

5 years agorustc/driver: improve/remove allocations
ljedrz [Fri, 12 Oct 2018 12:14:03 +0000 (14:14 +0200)]
rustc/driver: improve/remove allocations

5 years agoupdate miri
Ralf Jung [Thu, 11 Oct 2018 08:18:31 +0000 (10:18 +0200)]
update miri

5 years agorun-time validation: accept undef in int arrays, as we do for ints
Ralf Jung [Fri, 12 Oct 2018 08:56:47 +0000 (10:56 +0200)]
run-time validation: accept undef in int arrays, as we do for ints

5 years agoaddress nits
Ralf Jung [Thu, 11 Oct 2018 11:13:14 +0000 (13:13 +0200)]
address nits

5 years agovalidation: accept pointers in integer arrays
Ralf Jung [Thu, 11 Oct 2018 09:15:30 +0000 (11:15 +0200)]
validation: accept pointers in integer arrays

5 years agoFix and test upvar name printing for validity
Ralf Jung [Thu, 11 Oct 2018 08:16:51 +0000 (10:16 +0200)]
Fix and test upvar name printing for validity

5 years agomake ENFORCE_VALIDITY a function
Ralf Jung [Thu, 11 Oct 2018 06:48:15 +0000 (08:48 +0200)]
make ENFORCE_VALIDITY a function

miri needs this extra flexibility

5 years agoforeign types: use size and align from layout
Ralf Jung [Wed, 10 Oct 2018 07:11:38 +0000 (09:11 +0200)]
foreign types: use size and align from layout

5 years agoseems like for generators we cannot access the freevars
Ralf Jung [Tue, 9 Oct 2018 20:44:20 +0000 (22:44 +0200)]
seems like for generators we cannot access the freevars

5 years agosize_and_align_of can return no result for extern types
Ralf Jung [Tue, 9 Oct 2018 20:41:41 +0000 (22:41 +0200)]
size_and_align_of can return no result for extern types

5 years agovalidate return value on stack pop
Ralf Jung [Tue, 9 Oct 2018 19:05:53 +0000 (21:05 +0200)]
validate return value on stack pop

5 years agocheck return type even for uninhabited case
Ralf Jung [Tue, 9 Oct 2018 16:16:27 +0000 (18:16 +0200)]
check return type even for uninhabited case

5 years agofix validation around transmuting copy_op
Ralf Jung [Tue, 9 Oct 2018 15:06:57 +0000 (17:06 +0200)]
fix validation around transmuting copy_op

5 years agoAuto merge of #54980 - zackmdavis:and_the_case_of_the_universal_call, r=oli-obk
bors [Sat, 13 Oct 2018 06:48:17 +0000 (06:48 +0000)]
Auto merge of #54980 - zackmdavis:and_the_case_of_the_universal_call, r=oli-obk

structured suggestion for E0223 ambiguous associated type

(routine (and when are we going to be done finding these, anyway?) but something that stuck out to me while glancing at #54970)

r? @estebank

5 years ago`#[must_use]` for associated functions is supposed to actually work
Zack M. Davis [Fri, 12 Oct 2018 06:10:37 +0000 (23:10 -0700)]
`#[must_use]` for associated functions is supposed to actually work

In the comments of (closed, defunct) pull request #54884, Mazdak
"Centril" Farrokhzad noted that must-use annotations didn't work on an
associated function (what other communities might call a "static
method"). Subsequent logging revealed that in this case we have a
`Def::Method`, whereas the lint pass was only matching on
`Def::Fn`. (One could argue that those def-names are thereby
misleading—must-use for self-ful methods have always worked—but
documenting or reworking that can be left to another day.)