]> git.lizzy.rs Git - rust.git/log
rust.git
5 years agotweak pinning projections
Ralf Jung [Wed, 20 Feb 2019 17:28:12 +0000 (18:28 +0100)]
tweak pinning projections

5 years agotweaks
Ralf Jung [Wed, 20 Feb 2019 08:45:28 +0000 (09:45 +0100)]
tweaks

5 years agoexpand Unpin example
Ralf Jung [Tue, 19 Feb 2019 20:27:48 +0000 (21:27 +0100)]
expand Unpin example

5 years agoimprove wording
Ralf Jung [Tue, 19 Feb 2019 20:25:39 +0000 (21:25 +0100)]
improve wording

5 years agoimprove linked list -> drop transition
Ralf Jung [Tue, 19 Feb 2019 20:23:53 +0000 (21:23 +0100)]
improve linked list -> drop transition

5 years agoplease the mericless tidy, oh tidy
Ralf Jung [Tue, 19 Feb 2019 20:18:56 +0000 (21:18 +0100)]
please the mericless tidy, oh tidy

5 years agomention interaction with Deref in intro
Ralf Jung [Tue, 19 Feb 2019 20:12:48 +0000 (21:12 +0100)]
mention interaction with Deref in intro

5 years agoexamples
Ralf Jung [Tue, 19 Feb 2019 19:54:31 +0000 (20:54 +0100)]
examples

5 years agorewrite pin module intro
Ralf Jung [Tue, 19 Feb 2019 19:50:16 +0000 (20:50 +0100)]
rewrite pin module intro

5 years agomore work on projections and RefCell example
Ralf Jung [Tue, 19 Feb 2019 19:26:42 +0000 (20:26 +0100)]
more work on projections and RefCell example

5 years agoseparate section for doubly-linked list, reword projections intro
Ralf Jung [Tue, 19 Feb 2019 19:17:20 +0000 (20:17 +0100)]
separate section for doubly-linked list, reword projections intro

5 years agoApply suggestions from code review
Ralf Jung [Tue, 19 Feb 2019 18:50:43 +0000 (19:50 +0100)]
Apply suggestions from code review

Co-Authored-By: RalfJung <post@ralfj.de>
5 years agoapply some of the feedback
Ralf Jung [Tue, 19 Feb 2019 18:46:33 +0000 (19:46 +0100)]
apply some of the feedback

5 years agoimprove Pin documentation
Ralf Jung [Tue, 19 Feb 2019 12:08:46 +0000 (13:08 +0100)]
improve Pin documentation

5 years agoAuto merge of #58503 - varkor:const-generics-hir, r=petrochenkov
bors [Tue, 19 Feb 2019 00:46:12 +0000 (00:46 +0000)]
Auto merge of #58503 - varkor:const-generics-hir, r=petrochenkov

Add const generics to the HIR

Split out from https://github.com/rust-lang/rust/pull/53645.

cc @yodaldevoid

r? @eddyb

5 years agoAuto merge of #58543 - jonas-schievink:bumpstrap, r=pietroalbini
bors [Mon, 18 Feb 2019 22:03:41 +0000 (22:03 +0000)]
Auto merge of #58543 - jonas-schievink:bumpstrap, r=pietroalbini

Bump the bootstrap compiler

This compiler includes https://github.com/rust-lang/rust/pull/58501, which fixes an annoying ICE while working on rustc itself.

r? @pietroalbini

5 years agoAuto merge of #58549 - pietroalbini:fix-docker-ci-hash, r=Mark-Simulacrum
bors [Mon, 18 Feb 2019 17:34:14 +0000 (17:34 +0000)]
Auto merge of #58549 - pietroalbini:fix-docker-ci-hash, r=Mark-Simulacrum

ci: fix docker cache hash collision

#58416 uncovered a bug in our caching for docker images: if the image `foo` pulls files from the image `bar` and a file in `bar` changed, the hash of `foo` will be the same even though it should be different. In that PR's case, `dist-i686-linux` pulls scripts from `dist-x86_64-linux`, and the PR only changed those scripts, causing an hash collision for `dist-i686-linux`.

We have to fix this, since the image will be rebuilt every time bors switches from testing master to testing beta/stable (and when it switches back), making CI way more painful than it currently is.

The approach used by this PR is to just include all the files in `src/ci/docker` in the hash. It's a bit heavy-handed and it will cause a rebuild of all the images every time a single image changes, but it's the best I can think of.

r? @Mark-Simulacrum
cc @alexcrichton @kennytm

5 years agoci: fix docker cache hash collision
Pietro Albini [Sun, 17 Feb 2019 21:24:13 +0000 (22:24 +0100)]
ci: fix docker cache hash collision

Before this commit the hash used to cache docker images was calculated
from the image's files and the files in the scripts/ directory. This
worked fine when all the files used by an image were in those
directories, but some images pull files from other images, causing hash
collisions in some cases.

This commit changes the hash to include the files of all the docker
images, causing a rebuild of all the images when a single one changes.
That's a bit heavy-handed, but we have no way to track which files an
image pulls in and hash collisions are really painful to deal with.

5 years agoAuto merge of #58541 - kennytm:fix-publish-toolstate-py-again, r=oli-obk
bors [Mon, 18 Feb 2019 08:37:18 +0000 (08:37 +0000)]
Auto merge of #58541 - kennytm:fix-publish-toolstate-py-again, r=oli-obk

publish_toolstate.py: further fix the runtime errors

The regex was missing a `,`, causing `relevant_pr_match` to become None and set the PR number to -1 and assigned the new issue to `@<unknown user>`. This causes the 422 error when creating the issue due to invalid assignee and unable to leave the tool-is-broken comment since PR -1 does not exist.

The default user names are now also changed to @ghost to prevent the 422 error in case anything goes wrong again.

5 years agoAuto merge of #58373 - RalfJung:maybe-uninit, r=gnzlbg
bors [Mon, 18 Feb 2019 02:56:18 +0000 (02:56 +0000)]
Auto merge of #58373 - RalfJung:maybe-uninit, r=gnzlbg

update stdsimd and remove now-unused MaybeUninit::into_inner

That's a huge diff for stdsimd... Cc @gnzlbg @alexcrichton

5 years agoBump the bootstrap compiler
Jonas Schievink [Sun, 17 Feb 2019 17:14:32 +0000 (18:14 +0100)]
Bump the bootstrap compiler

5 years agopublish_toolstate.py: further fix the runtime errors
kennytm [Sun, 17 Feb 2019 15:19:47 +0000 (23:19 +0800)]
publish_toolstate.py: further fix the runtime errors

The regex was missing a `,`, causing `relevant_pr_match` to become None
and set the PR number to -1 and assigned the new issue to
`@<unknown user>`. This causes the 422 error when creating the issue due
to invalid assignee and unable to leave the tool-is-broken comment since
PR -1 does not exist.

The default user names are now also changed to @ghost to prevent the
422 error in case anything goes wrong again.

5 years agoAuto merge of #58416 - cuviper:dist-linux-gcc, r=alexcrichton
bors [Sun, 17 Feb 2019 14:29:33 +0000 (14:29 +0000)]
Auto merge of #58416 - cuviper:dist-linux-gcc, r=alexcrichton

[CI] Update GCC in the dist-linux builders

Upstream LLVM is planning to raise their minimum toolchain requirements, so they may start using C++14 features. This new policy has already landed in the form of a "soft" error.
http://lists.llvm.org/pipermail/llvm-dev/2019-February/130117.html

For GCC, they will require at least version 5.1. This PR moves our crosstool-ng builders to their max GCC 5.2, with a few small patches to fix compatibility. The dist-x86_64-linux builder is updated to GCC 5.5 and LLVM/Clang 8.0.0-rc2, which also affects dist-i686-linux sharing the same scripts.

r? @alexcrichton

5 years agoupdate stdsimd
Ralf Jung [Sun, 17 Feb 2019 10:22:04 +0000 (11:22 +0100)]
update stdsimd

5 years agoAuto merge of #58495 - kennytm:rollup, r=kennytm
bors [Sun, 17 Feb 2019 07:34:48 +0000 (07:34 +0000)]
Auto merge of #58495 - kennytm:rollup, r=kennytm

Rollup of 19 pull requests

Successful merges:

 - #57929 (Rustdoc remove old style files)
 - #57981 (Fix #57730)
 - #58074 (Stabilize slice_sort_by_cached_key)
 - #58196 (Add specific feature gate error for const-unstable features)
 - #58293 (Remove code for updating copyright years in generate-deriving-span-tests)
 - #58306 (Don't default on std crate when manipulating browser history)
 - #58359 (librustc_mir: use ? in impl_snapshot_for! macro)
 - #58395 (Instant::checked_duration_since)
 - #58429 (fix Box::into_unique effecitvely transmuting to a raw ptr)
 - #58433 (Update which libcore/liballoc tests Miri ignores, and document why)
 - #58438 (Use posix_spawn_file_actions_addchdir_np when possible)
 - #58440 (Whitelist the ARM v6 target-feature)
 - #58448 (rustdoc: mask `compiler_builtins` docs)
 - #58468 (split MaybeUninit into several features, expand docs a bit)
 - #58479 (compile-pass test for #53606)
 - #58489 (Fix runtime error in generate-keyword-tests)
 - #58496 (Fix documentation for std::path::PathBuf::pop)
 - #58509 (Notify myself when Clippy toolstate changes)
 - #58521 (Fix tracking issue for error iterators)

5 years agoRollup merge of #58521 - sfackler:error-iter-issue, r=withoutboats
kennytm [Sun, 17 Feb 2019 06:54:00 +0000 (14:54 +0800)]
Rollup merge of #58521 - sfackler:error-iter-issue, r=withoutboats

Fix tracking issue for error iterators

5 years agoRollup merge of #58509 - phansch:add_myself_to_clippy_toolstate_maintainers, r=oli-obk
kennytm [Sat, 16 Feb 2019 15:46:32 +0000 (23:46 +0800)]
Rollup merge of #58509 - phansch:add_myself_to_clippy_toolstate_maintainers, r=oli-obk

Notify myself when Clippy toolstate changes

5 years agoRollup merge of #58496 - nathan:doc-std-path-pathbuf-pop, r=frewsxcv
kennytm [Sat, 16 Feb 2019 15:46:10 +0000 (23:46 +0800)]
Rollup merge of #58496 - nathan:doc-std-path-pathbuf-pop, r=frewsxcv

Fix documentation for std::path::PathBuf::pop

Closes #58474.

5 years agoRollup merge of #58395 - vi:checked_duration_since, r=dtolnay
kennytm [Sat, 16 Feb 2019 06:15:45 +0000 (14:15 +0800)]
Rollup merge of #58395 - vi:checked_duration_since, r=dtolnay

Instant::checked_duration_since

5 years agoRollup merge of #57929 - GuillaumeGomez:rustodc-remove-old-style-files, r=ollie27
kennytm [Sat, 16 Feb 2019 06:15:04 +0000 (14:15 +0800)]
Rollup merge of #57929 - GuillaumeGomez:rustodc-remove-old-style-files, r=ollie27

Rustdoc remove old style files

Reopening of #56577 (which I can't seem to reopen...).

I made the flag unstable so with this change, what was blocking the PR is now gone I assume.

5 years agoRollup merge of #58489 - xfix:fix-keyword-tests-runtime-error, r=alexcrichton
kennytm [Fri, 15 Feb 2019 16:56:04 +0000 (00:56 +0800)]
Rollup merge of #58489 - xfix:fix-keyword-tests-runtime-error, r=alexcrichton

Fix runtime error in generate-keyword-tests

The script was made unusable after removing license headers.

5 years agoRollup merge of #58479 - saleemjaffer:test_promote_evaluation_unused_result, r=oli-obk
kennytm [Fri, 15 Feb 2019 16:56:03 +0000 (00:56 +0800)]
Rollup merge of #58479 - saleemjaffer:test_promote_evaluation_unused_result, r=oli-obk

compile-pass test for #53606

fixes #53606

5 years agoAuto merge of #58477 - rust-lang:fix-publish-toolstate-syntax-error, r=oli-obk
bors [Sun, 17 Feb 2019 04:57:50 +0000 (04:57 +0000)]
Auto merge of #58477 - rust-lang:fix-publish-toolstate-syntax-error, r=oli-obk

Fix the syntax error in publish_toolstate.py

5 years agoFix tracking issue for error iterators
Steven Fackler [Sat, 16 Feb 2019 20:16:18 +0000 (12:16 -0800)]
Fix tracking issue for error iterators

5 years agoAdd a test for const parameter uppercase lint
varkor [Sat, 16 Feb 2019 13:04:15 +0000 (13:04 +0000)]
Add a test for const parameter uppercase lint

5 years agoDon't abort early when collecting const generics
varkor [Sat, 16 Feb 2019 13:03:58 +0000 (13:03 +0000)]
Don't abort early when collecting const generics

5 years agoCheck for Const param in collect
varkor [Sat, 16 Feb 2019 13:03:30 +0000 (13:03 +0000)]
Check for Const param in collect

5 years agoNotify myself when Clippy toolstate changes
Philipp Hansch [Sat, 16 Feb 2019 10:56:32 +0000 (11:56 +0100)]
Notify myself when Clippy toolstate changes

5 years agoRollup merge of #58468 - RalfJung:maybe-uninit-split, r=Centril
kennytm [Fri, 15 Feb 2019 16:56:00 +0000 (00:56 +0800)]
Rollup merge of #58468 - RalfJung:maybe-uninit-split, r=Centril

split MaybeUninit into several features, expand docs a bit

This splits the `maybe_uninit` feature gate into several:

* `maybe_uninit` for what we will hopefully stabilize soon-ish.
* `maybe_uninit_ref` for creating references into `MaybeUninit`, for which the rules are not yet clear.
* `maybe_uninit_slice` for handling slices of `MaybeUninit`, which needs more API design work.
* `maybe_uninit_array` for creating arrays of `MaybeUninit` using a macro (because we don't have https://github.com/rust-lang/rust/issues/49147 yet).

Is that an okay thing to do? The goal is to help people avoid APIs we do not want to stabilize yet. I used this to make sure rustc itself does not use `get_ref` and `get_mut`.

I also extended the docs to advise against uninitialized integers -- again this is something for which the rules are still being discussed.

5 years agoRollup merge of #58448 - euclio:missing-summaries, r=QuietMisdreavus
kennytm [Fri, 15 Feb 2019 16:55:59 +0000 (00:55 +0800)]
Rollup merge of #58448 - euclio:missing-summaries, r=QuietMisdreavus

rustdoc: mask `compiler_builtins` docs

Fixes #46783.

I wasn't able to fully confirm the underlying cause, but my theory is that functions in `compiler_builtins` were overwriting functions with the same names in libcore in the search index. Since the functions in `compiler_builtins` didn't have docs, that's why they weren't appearing in the results.

Masking the `compiler_builtins` crate fixes the search results. It appears that this crate was accidentally unmasked in #49503.

5 years agoRollup merge of #58440 - gnzlbg:v6, r=japaric
kennytm [Fri, 15 Feb 2019 16:55:58 +0000 (00:55 +0800)]
Rollup merge of #58440 - gnzlbg:v6, r=japaric

Whitelist the ARM v6 target-feature

5 years agoRollup merge of #58438 - cuviper:posix_spawn_file_actions_addchdir_np, r=alexcrichton
kennytm [Fri, 15 Feb 2019 16:55:56 +0000 (00:55 +0800)]
Rollup merge of #58438 - cuviper:posix_spawn_file_actions_addchdir_np, r=alexcrichton

Use posix_spawn_file_actions_addchdir_np when possible

This is a non-POSIX extension implemented in Solaris and in glibc 2.29.
With this we can still use `posix_spawn()` when `Command::current_dir()`
has been set, otherwise we fallback to `fork(); chdir(); exec()`.

5 years agoRollup merge of #58433 - RalfJung:miri-mark-tests, r=TimNN
kennytm [Fri, 15 Feb 2019 16:55:55 +0000 (00:55 +0800)]
Rollup merge of #58433 - RalfJung:miri-mark-tests, r=TimNN

Update which libcore/liballoc tests Miri ignores, and document why

5 years agoRollup merge of #58429 - RalfJung:box, r=TimNN
kennytm [Fri, 15 Feb 2019 16:55:54 +0000 (00:55 +0800)]
Rollup merge of #58429 - RalfJung:box, r=TimNN

fix Box::into_unique effecitvely transmuting to a raw ptr

Miri/Stacked Borrows treat `Box` specially: they assert that it is unique, and tag it appropriately. However, currently, `Box::into_inner` is not aware of that and returns a raw pointer (wrapped in a `Unique`) that carries the same tag as the box, meaning it carries a `Uniq` tag. This leads to all sorts of problems when people use the raw pointer they get out of the `Unique` type.

In the future, it'd be interesting to make `Unique` also carry some kind of uniqueness. In that case, something like this would instead be needed whenever a raw pointer is extracted from a `Unique`. However, that is out-of-scope for the current version of Stacked Borrows. So until then, this changes `into_unique` to perform a proper reference-to-raw-ptr-cast, which clears the tag.

5 years agoRollup merge of #58359 - taiki-e:impl_snapshot_for, r=oli-obk
kennytm [Fri, 15 Feb 2019 16:55:53 +0000 (00:55 +0800)]
Rollup merge of #58359 - taiki-e:impl_snapshot_for, r=oli-obk

librustc_mir: use ? in impl_snapshot_for! macro

5 years agoRollup merge of #58306 - GuillaumeGomez:crate-browser-history, r=QuietMisdreavus
kennytm [Fri, 15 Feb 2019 16:55:51 +0000 (00:55 +0800)]
Rollup merge of #58306 - GuillaumeGomez:crate-browser-history, r=QuietMisdreavus

Don't default on std crate when manipulating browser history

Fixes #58263.

r? @QuietMisdreavus

5 years agoRollup merge of #58293 - xfix:patch-16, r=Mark-Simulacrum
kennytm [Fri, 15 Feb 2019 16:55:50 +0000 (00:55 +0800)]
Rollup merge of #58293 - xfix:patch-16, r=Mark-Simulacrum

Remove code for updating copyright years in generate-deriving-span-tests

It's no longer necessary, as there is no license header anymore.

5 years agoRollup merge of #58196 - varkor:const-fn-feature-gate-error, r=oli-obk
kennytm [Fri, 15 Feb 2019 16:55:49 +0000 (00:55 +0800)]
Rollup merge of #58196 - varkor:const-fn-feature-gate-error, r=oli-obk

Add specific feature gate error for const-unstable features

Before:
```
error: `impl Trait` in const fn is unstable
 --> src/lib.rs:7:19
  |
7 | const fn foo() -> impl T {
  |                   ^^^^^^

error: aborting due to previous error
```

After:
```
error[E0723]: `impl Trait` in const fn is unstable (see issue #57563)
 --> src/lib.rs:7:19
  |
7 | const fn foo() -> impl T {
  |                   ^^^^^^
  = help: add #![feature(const_fn)] to the crate attributes to enable

error: aborting due to previous error
```

This improves the situation with https://github.com/rust-lang/rust/issues/57563. Fixes https://github.com/rust-lang/rust/issues/57544. Fixes https://github.com/rust-lang/rust/issues/54469.

r? @oli-obk

5 years agoRollup merge of #58074 - scottmcm:stabilize-sort_by_cached_key, r=SimonSapin
kennytm [Fri, 15 Feb 2019 16:55:47 +0000 (00:55 +0800)]
Rollup merge of #58074 - scottmcm:stabilize-sort_by_cached_key, r=SimonSapin

Stabilize slice_sort_by_cached_key

I was going to ask on the tracking issue (https://github.com/rust-lang/rust/issues/34447), but decided to just send this and hope for an FCP here.  The method was added last March by https://github.com/rust-lang/rust/pull/48639.

Signature: https://doc.rust-lang.org/std/primitive.slice.html#method.sort_by_cached_key
```rust
impl [T] {
    pub fn sort_by_cached_key<K, F>(&mut self, f: F)
        where F: FnMut(&T) -> K, K: Ord;
}
```

That's an identical signature to the existing `sort_by_key`, so I think the questions are just naming, implementation, and the usual "do we want this?".

The implementation seems to have proven its use in rustc at least, which many uses: https://github.com/rust-lang/rust/search?l=Rust&q=sort_by_cached_key

(I'm asking because it's exactly what I just needed the other day:
```rust
    all_positions.sort_by_cached_key(|&n|
        data::CITIES.iter()
            .map(|x| *metric_closure.get_edge(n, x.pos).unwrap())
            .sum::<usize>()
    );
```
since caching that key is a pretty obviously good idea.)

Closes #34447

5 years agoRollup merge of #57981 - Zoxc:fix-57979, r=nikomatsakis
kennytm [Fri, 15 Feb 2019 16:55:46 +0000 (00:55 +0800)]
Rollup merge of #57981 - Zoxc:fix-57979, r=nikomatsakis

Fix #57730

cc https://github.com/rust-lang/rust/pull/57730

r? @cramertj

5 years agoFix rebase issue
varkor [Fri, 15 Feb 2019 23:34:04 +0000 (23:34 +0000)]
Fix rebase issue

5 years agoUpdate tests
varkor [Fri, 15 Feb 2019 22:26:36 +0000 (22:26 +0000)]
Update tests

Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
5 years agoTake Const into account with nonstandard style lint
varkor [Fri, 15 Feb 2019 22:26:29 +0000 (22:26 +0000)]
Take Const into account with nonstandard style lint

Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
5 years agoDrive-by cleanup
varkor [Fri, 15 Feb 2019 22:26:05 +0000 (22:26 +0000)]
Drive-by cleanup

Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
5 years agoTake Const into account in HIR
varkor [Fri, 15 Feb 2019 22:25:42 +0000 (22:25 +0000)]
Take Const into account in HIR

Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
5 years agoAdd E0111
varkor [Fri, 15 Feb 2019 22:24:22 +0000 (22:24 +0000)]
Add E0111

Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
5 years agoAdd Const kind to rustdoc
varkor [Fri, 15 Feb 2019 22:24:00 +0000 (22:24 +0000)]
Add Const kind to rustdoc

Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
5 years agoMove const generic error from lowering to collect
varkor [Fri, 15 Feb 2019 22:22:54 +0000 (22:22 +0000)]
Move const generic error from lowering to collect

Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
5 years agoAdd pretty-printing for const generics
varkor [Fri, 15 Feb 2019 22:21:57 +0000 (22:21 +0000)]
Add pretty-printing for const generics

Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
5 years agoAdd Const kind to HIR
varkor [Fri, 15 Feb 2019 22:20:46 +0000 (22:20 +0000)]
Add Const kind to HIR

Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
5 years agoAuto merge of #57880 - Zoxc:error-on-cycle, r=michaelwoerister
bors [Fri, 15 Feb 2019 22:22:10 +0000 (22:22 +0000)]
Auto merge of #57880 - Zoxc:error-on-cycle, r=michaelwoerister

Always emit an error for a query cycle

r? @michaelwoerister

cc @nikomatsakis @wesleywiser

5 years agoFix documentation for std::path::PathBuf::pop
Nathan [Fri, 15 Feb 2019 17:19:15 +0000 (12:19 -0500)]
Fix documentation for std::path::PathBuf::pop

Closes #58474.

5 years agoAuto merge of #58406 - Disasm:rv64-support, r=nagisa
bors [Fri, 15 Feb 2019 16:20:12 +0000 (16:20 +0000)]
Auto merge of #58406 - Disasm:rv64-support, r=nagisa

Add riscv64{imac,gc}-unknown-none-elf targets

Previous attempt by @fintelia: https://github.com/rust-lang/rust/pull/58012

Related: https://github.com/rust-embedded/wg/issues/218

5 years agoFix runtime error in generate-keyword-tests
Konrad Borowski [Fri, 15 Feb 2019 13:48:21 +0000 (14:48 +0100)]
Fix runtime error in generate-keyword-tests

The script was made unusable after removing license headers.

5 years agoAuto merge of #58403 - eddyb:requalify, r=oli-obk
bors [Fri, 15 Feb 2019 12:15:17 +0000 (12:15 +0000)]
Auto merge of #58403 - eddyb:requalify, r=oli-obk

rustc_mir: split qualify_consts' "value qualification" bitflags into separate computations.

Prerequisite for computing those bits through a dataflow algorithm ~~(which I might do in this PR later)~~.

This PR should not change behavior overall, other than treating `simd_shuffle*` identically to `#[rustc_args_required_const]` (maybe we should just have `#[rustc_args_required_const]` on the intrinsic imports of `simd_shuffle*`? cc @gnzlbg)

cc @oli-obk @alexreg

5 years agocompile-pass test for #53606
Saleem Jaffer [Fri, 15 Feb 2019 08:52:17 +0000 (14:22 +0530)]
compile-pass test for #53606

5 years agoFix the syntax error in publish_toolstate.py
kennytm [Fri, 15 Feb 2019 06:26:27 +0000 (14:26 +0800)]
Fix the syntax error in publish_toolstate.py

5 years agoRemove `stolen`
John Kåre Alsaker [Wed, 13 Feb 2019 12:13:08 +0000 (13:13 +0100)]
Remove `stolen`

5 years agoAlways emit an error for a query cycle
John Kåre Alsaker [Thu, 24 Jan 2019 19:05:19 +0000 (20:05 +0100)]
Always emit an error for a query cycle

5 years agomake Centril happy
Ralf Jung [Thu, 14 Feb 2019 21:31:06 +0000 (22:31 +0100)]
make Centril happy

5 years agoWhitelist the ARM v8 target-feature
gnzlbg [Thu, 14 Feb 2019 21:00:33 +0000 (22:00 +0100)]
Whitelist the ARM v8 target-feature

5 years agosplit MaybeUninit into several features, expand docs a bit
Ralf Jung [Thu, 14 Feb 2019 19:00:16 +0000 (20:00 +0100)]
split MaybeUninit into several features, expand docs a bit

5 years agoAdd updated NLL tests
varkor [Thu, 14 Feb 2019 15:47:37 +0000 (15:47 +0000)]
Add updated NLL tests

5 years agoadd .stderr file
Niko Matsakis [Thu, 14 Feb 2019 15:26:02 +0000 (10:26 -0500)]
add .stderr file

5 years agoremove MaybeUninit::into_inner
Ralf Jung [Thu, 14 Feb 2019 15:21:21 +0000 (16:21 +0100)]
remove MaybeUninit::into_inner

5 years agoupdate stdsimd
Ralf Jung [Tue, 12 Feb 2019 08:01:49 +0000 (09:01 +0100)]
update stdsimd

5 years agofixed for libstd build
Ralf Jung [Mon, 11 Feb 2019 21:00:10 +0000 (22:00 +0100)]
fixed for libstd build

5 years agoadd missing feature flag
Ralf Jung [Mon, 11 Feb 2019 14:29:25 +0000 (15:29 +0100)]
add missing feature flag

5 years agoupdate stdsimd
Ralf Jung [Mon, 11 Feb 2019 14:24:38 +0000 (15:24 +0100)]
update stdsimd

5 years agoFix documentation typo
varkor [Tue, 5 Feb 2019 21:03:01 +0000 (22:03 +0100)]
Fix documentation typo

5 years agoUpdate const fn tests
varkor [Tue, 5 Feb 2019 20:27:44 +0000 (21:27 +0100)]
Update const fn tests

5 years agoAdd specific error for unstable const fn features
varkor [Tue, 5 Feb 2019 20:27:26 +0000 (21:27 +0100)]
Add specific error for unstable const fn features

5 years agorustc_mir: compute all the qualification bits separately in qualify_consts.
Eduard-Mihai Burtescu [Wed, 6 Feb 2019 15:18:42 +0000 (17:18 +0200)]
rustc_mir: compute all the qualification bits separately in qualify_consts.

5 years agorustc_mir: rename qualify_consts::Qualifier to ConstCx and keep in Checker as a field.
Eduard-Mihai Burtescu [Thu, 7 Feb 2019 01:45:37 +0000 (03:45 +0200)]
rustc_mir: rename qualify_consts::Qualifier to ConstCx and keep in Checker as a field.

5 years agorustc_mir: do not treat NEEDS_DROP as unexpected in qualify_consts.
Eduard-Mihai Burtescu [Wed, 6 Feb 2019 16:11:48 +0000 (18:11 +0200)]
rustc_mir: do not treat NEEDS_DROP as unexpected in qualify_consts.

5 years agorustc_mir: avoid having an Option around each local qualification in qualify_consts.
Eduard-Mihai Burtescu [Wed, 6 Feb 2019 01:08:43 +0000 (03:08 +0200)]
rustc_mir: avoid having an Option around each local qualification in qualify_consts.

5 years agorustc_mir: rename `Qualif::for_ty to `Qualif::any_value_of_ty`.
Eduard-Mihai Burtescu [Tue, 5 Feb 2019 17:46:43 +0000 (19:46 +0200)]
rustc_mir: rename `Qualif::for_ty to `Qualif::any_value_of_ty`.

5 years agorustc_mir: remove qualify_consts::Qualif::FN_ARGUMENT.
Eduard-Mihai Burtescu [Tue, 5 Feb 2019 11:24:49 +0000 (13:24 +0200)]
rustc_mir: remove qualify_consts::Qualif::FN_ARGUMENT.

5 years agorustc_mir: remove outdated `const fn` stability diagnostic.
Eduard-Mihai Burtescu [Tue, 5 Feb 2019 10:45:15 +0000 (12:45 +0200)]
rustc_mir: remove outdated `const fn` stability diagnostic.

5 years agorustc_mir: split qualify_consts' checking and value qualification.
Eduard-Mihai Burtescu [Tue, 5 Feb 2019 08:37:28 +0000 (10:37 +0200)]
rustc_mir: split qualify_consts' checking and value qualification.

5 years agorustc_mir: split off some qualify_consts::Checker fields into a State struct.
Eduard-Mihai Burtescu [Mon, 4 Feb 2019 21:24:20 +0000 (23:24 +0200)]
rustc_mir: split off some qualify_consts::Checker fields into a State struct.

5 years agorustc_mir: rename qualify_consts::Qualifier to Checker.
Eduard-Mihai Burtescu [Sat, 29 Sep 2018 08:56:26 +0000 (11:56 +0300)]
rustc_mir: rename qualify_consts::Qualifier to Checker.

5 years agoAuto merge of #58455 - Centril:rollup, r=Centril
bors [Thu, 14 Feb 2019 10:32:25 +0000 (10:32 +0000)]
Auto merge of #58455 - Centril:rollup, r=Centril

Rollup of 7 pull requests

Successful merges:

 - #58309 (Add more profiler events)
 - #58347 (Closure bounds fixes)
 - #58365 (Add an option to print the status of incremental tasks / dep nodes after running them)
 - #58371 (Check user type annotations for range patterns.)
 - #58378 (rustc: Implement incremental "fat" LTO)
 - #58407 (specify "upper camel case" in style lint)
 - #58449 (Notify @topecongiro when the state of rustfmt has changed)

Failed merges:

r? @ghost

5 years agoRollup merge of #58449 - topecongiro:rustfmt-toolstate, r=Centril
Mazdak Farrokhzad [Thu, 14 Feb 2019 07:24:18 +0000 (08:24 +0100)]
Rollup merge of #58449 - topecongiro:rustfmt-toolstate, r=Centril

Notify @topecongiro when the state of rustfmt has changed

I would like to get notified when the state of rustfmt has changed.
Context: I am currently a leader of the rustfmt working group.

cc @nrc do you still want to get notified?

5 years agoRollup merge of #58407 - euclio:upper-camel-case, r=estebank
Mazdak Farrokhzad [Thu, 14 Feb 2019 07:24:17 +0000 (08:24 +0100)]
Rollup merge of #58407 - euclio:upper-camel-case, r=estebank

specify "upper camel case" in style lint

Also, fix an issue where internal upper case letters were converted to
lower case.

Fixes #57319.

5 years agoRollup merge of #58378 - alexcrichton:incremental-lto, r=michaelwoerister
Mazdak Farrokhzad [Thu, 14 Feb 2019 07:24:15 +0000 (08:24 +0100)]
Rollup merge of #58378 - alexcrichton:incremental-lto, r=michaelwoerister

rustc: Implement incremental "fat" LTO

Currently the compiler will produce an error if both incremental
compilation and full fat LTO is requested. With recent changes and the
advent of incremental ThinLTO, however, all the hard work is already
done for us and it's actually not too bad to remove this error!

This commit updates the codegen backend to allow incremental full fat
LTO. The semantics are that the input modules to LTO are all produce
incrementally, but the final LTO step is always done unconditionally
regardless of whether the inputs changed or not. The only real
incremental win we could have here is if zero of the input modules
changed, but that's so rare it's unlikely to be worthwhile to implement
such a code path.

cc #57968
cc rust-lang/cargo#6643

5 years agoRollup merge of #58371 - davidtwco:issue-58299, r=arielb1
Mazdak Farrokhzad [Thu, 14 Feb 2019 07:24:14 +0000 (08:24 +0100)]
Rollup merge of #58371 - davidtwco:issue-58299, r=arielb1

Check user type annotations for range patterns.

Fixes #58299.

This PR builds on the fix from #58161 (which fixed miscompilation
caused by the introduction of `AscribeUserType` patterns for associated
constants) to start checking these patterns are well-formed for ranges
(previous fix just ignored them so that miscompilation wouldn't occur).

r? @arielb1

5 years agoRollup merge of #58365 - Zoxc:task-status, r=michaelwoerister
Mazdak Farrokhzad [Thu, 14 Feb 2019 07:24:13 +0000 (08:24 +0100)]
Rollup merge of #58365 - Zoxc:task-status, r=michaelwoerister

Add an option to print the status of incremental tasks / dep nodes after running them

r? @michaelwoerister

5 years agoRollup merge of #58347 - matthewjasper:closure-bounds-fixes, r=pnkfelix
Mazdak Farrokhzad [Thu, 14 Feb 2019 07:24:12 +0000 (08:24 +0100)]
Rollup merge of #58347 - matthewjasper:closure-bounds-fixes, r=pnkfelix

Closure bounds fixes

* Ensures that "nice region errors" are buffered so that they are sorted and migrated correctly.
* Propagates fewer constraints for closures (cc #58178)
* Propagate constraints from closures more precisely (#58127)

Closes #58127

r? @nikomatsakis

5 years agoRollup merge of #58309 - wesleywiser:add_more_profiler_events, r=michaelwoerister
Mazdak Farrokhzad [Thu, 14 Feb 2019 07:24:10 +0000 (08:24 +0100)]
Rollup merge of #58309 - wesleywiser:add_more_profiler_events, r=michaelwoerister

Add more profiler events

- Adds Start\Stop events for time spent loading incremental query results from disk.

- Adds Start\Stop events for time spent blocked waiting for queries to complete (when parallel queries are enabled).

r? @michaelwoerister