Commit Graph

141169 Commits

Author SHA1 Message Date
kadmin 845e4b5962 Change CopyNonOverlapping::codegen_ssa
Fixes copy_non_overlapping codegen_ssa to properly handle pointees,
and use bytes instead of elem count
2021-03-09 16:54:14 +00:00
kadmin 049045b100 Replace todos with impls
Changed to various implementations, copying the style of prior function calls in places I was
unsure of.

Also one minor style nit.
2021-03-09 16:54:14 +00:00
kadmin 982382dc03 Update cranelift 2021-03-09 16:54:14 +00:00
kadmin 6f60dd884e Update match branches
This updates all places where match branches check on StatementKind or UseContext.
This doesn't properly implement them, but adds TODOs where they are, and also adds some best
guesses to what they should be in some cases.
2021-03-09 16:54:13 +00:00
kadmin 37a6c04718 Update interpret step 2021-03-09 16:54:13 +00:00
kadmin 89f45ed9f3 Update match branches
This updates all places where match branches check on StatementKind or UseContext.
This doesn't properly implement them, but adds TODOs where they are, and also adds some best
guesses to what they should be in some cases.
2021-03-09 16:54:13 +00:00
kadmin 72c734d001 Update fmt and use of memcpy
I'm still not totally sure if this is the right way to implement the memcpy, but that portion
compiles correctly now. Now to fix the compile errors everywhere else :).
2021-03-09 16:54:13 +00:00
kadmin 0fdc07e197 Impl StatementKind::CopyNonOverlapping 2021-03-09 16:54:13 +00:00
flip1995 8e1ce480b9 Set Clippy authors to "The Rust Clippy Developers"
Clippy has grown enough, that putting specific people in the "authors"
field is warranted anymore.
2021-03-09 17:50:04 +01:00
Oli Scherer 62f2d72330 Bump tracing-tree dependency 2021-03-09 16:44:51 +00:00
Wesley Wiser 52d9792bc8 Update README.md to use the correct cmake version number
LLVM requires at least cmake 3.13.4 and cmake is only required to build
LLVM.

Also closes #42555
2021-03-09 11:03:52 -05:00
bjorn3 6b58ed225e Adjust for changed -Zmir-opt-level numbering 2021-03-09 16:45:55 +01:00
bjorn3 871874817b Lower GHA timeout to 60 min 2021-03-09 16:30:31 +01:00
bors 2b781c97b2 Auto merge of #6876 - giraffate:improve_doc_on_map_flatten, r=flip1995
Improve doc on `map_flatten`

Fix https://github.com/rust-lang/rust-clippy/issues/6870. It's because this doc lacks the description that this lint is also used for `Option`.

changelog: none
2021-03-09 15:18:16 +00:00
Takayuki Nakata e0f982bb3e Improve doc on map_flatten 2021-03-10 00:02:24 +09:00
bors 8a5f98a0e4 Auto merge of #6866 - anall:ice6840, r=flip1995
Fix ICE 6840 - make is_normalizable more strict

fixes #6840

make `is_normalizable` more strict, which should catch this ICE and related cases

changelog: Fix ICE in [`zero_sized_map_values`]
2021-03-09 14:58:24 +00:00
Andrea Nall 9707599714 add comment for when can be removed 2021-03-09 08:30:33 -06:00
bors 627e910fe5 Auto merge of #6868 - Jarcho:lang_item, r=flip1995
Don't assume lang items will exist.

~~Should fix lintcheck warnings caused by #6823~~
See below

changelog: None
2021-03-09 14:28:49 +00:00
bors 3ed0bccb70 Auto merge of #6873 - Y-Nak:refactor-casts-lint, r=flip1995
Refactor casts lint

Ref: #6724

Changes:
1. Separate the `casts` group from the `types` group.
2. Reorganize the lints of the `casts` group into their own modules.

Notes:
1. I didn't `fix` #6874 in order to maintain this PR as small as possible.

---
changelog: none
2021-03-09 12:43:20 +00:00
bjorn3 eefe1ede82 Update config name for latest rust-analyzer 2021-03-09 12:52:43 +01:00
bjorn3 9adb139356 Add rustc_private=true to the package metadata for rust-analyzer 2021-03-09 12:46:04 +01:00
bjorn3 826189ef51 Some clippy fixes 2021-03-09 12:37:39 +01:00
Yoshitomo Nakanishi 9e631da454 Move ptr_as_ptr to its own module 2021-03-09 20:18:25 +09:00
Ian Jackson 11ca64401a Always compile the fragile wait status test cases, just run them conditionally
Co-authored-by: David Tolnay <dtolnay@gmail.com>
2021-03-09 10:53:03 +00:00
Ömer Sinan Ağacan 98fbc09f02 Allow calling *const methods on *mut values
Fixes #80258
2021-03-09 13:40:08 +03:00
bors 3a5d45f68c Auto merge of #82929 - m-ou-se:rollup-7fwrewh, r=m-ou-se
Rollup of 8 pull requests

Successful merges:

 - #81127 (Improve sift_down performance in BinaryHeap)
 - #81879 (Added #[repr(transparent)] to core::cmp::Reverse)
 - #82048 (or-patterns: disallow in `let` bindings)
 - #82731 (Bump libc dependency of std to 0.2.88.)
 - #82799 (Add regression test for #75525)
 - #82841 (Change x64 size checks to not apply to x32.)
 - #82883 (Update Cargo)
 - #82887 (Update CONTRIBUTING.md)

Failed merges:

r? `@ghost`
`@rustbot` modify labels: rollup
2021-03-09 09:43:55 +00:00
bjorn3 8f62149d07 Rustup to rustc 1.52.0-nightly (8f349be27 2021-03-08) 2021-03-09 10:16:43 +01:00
bjorn3 6ef48e9cb4 Sync from rust 4b9f5cc4c1 2021-03-09 10:10:40 +01:00
Mara Bos 74de9db0ce Rollup merge of #82887 - henryboisdequin:improve-contributing-md, r=joshtriplett
Update CONTRIBUTING.md

Fixes #77215

As mentioned in #77215, the current CONTRIBUTING.md links to the rustc-dev-guide.
Even though the rustc-dev-guide has lots of useful information for contributors,
one is already confused by reading the first line of the current CONTRIBUTING.md.

> To get started, read the [Getting Started] guide in the [rustc-dev-guide].

This line tells the contributor to go and read the rustc-dev-guide. What is
the rustc-dev-guide? What does rustc even mean? These are some of the
questions that went into my head when reading this line as a first-time
contributor. By explaining what the rustc-dev-guide is and some platforms
to get help, a new contributor understands what the first step is and the process
is much clearer. The `About the [rustc-dev-guide]` section explains what
the rustc-dev-guide is, what rustc is, and the purpose out of reading the
guide. The `Getting help` section points the user to some places where
they can get help, find a mentor, and introduce themselves.
2021-03-09 09:05:27 +00:00
Mara Bos bf1580279e Rollup merge of #82883 - Aaron1011:update-cargo, r=ehuss
Update Cargo

Output of `git log --oneline  c68432f1e..970bc67c3`:

970bc67c3 (HEAD, origin/master, origin/auto-cargo, origin/HEAD) Auto merge of #9243 - wickerwaka:configurable-env-doc, r=ehuss
4d7a29b75 Document the configurable-env usntable option
f7a7a3f91 Auto merge of #9229 - alexcrichton:fix-borrow-mut, r=ehuss
3f2ece7a9 Fix a `BorrowMut` error when stdout is closed
7441e8c23 Auto merge of #8825 - Aaron1011:feature/report-future-incompat, r=ehuss
139ed73f5 Add future-incompat tracking issue number.
9ea350368 Fix some minor formatting issues.
f03d47ce4 Address review comments
6177c6584 Implement future incompatibility report support
c69409658 Auto merge of #9022 - nagisa:nagisa/manifest_path, r=alexcrichton
548300b20 Add the path to the manifest in json output
99e714c05 Auto merge of #9230 - kornelski:nobinaries, r=alexcrichton
61a31bc5f Auto merge of #9236 - kornelski:track-assert, r=Eh2406
3f7f0942c track_caller on custom assert functions
6977dee10 Explain `cargo install` is not for libraries
e4aebf0a0 Auto merge of #9231 - joshtriplett:clear-to-eol-if-color, r=alexcrichton
b219f0eb7 Auto merge of #9181 - jyn514:computer-says-no, r=ehuss
0b1816578 Remove unhelpful link to Cargo book
ea46f5ce3 Use ANSI clear-to-EOL if color is force-enabled
a6394bcc1 Remove unnecessary `config` argument to `Features::add`
3a86ecf2d Fix TODO about nightly features
09677c83c Be less unix-centric in error messages
ecfdced0d Fix test that assumed tests always were run on the stable channel
eba541994 Update comment in build_script_env
a5720117f Make `nightly_features_allowed` a field instead of a function
169b09ce7 Compute `enable_nightly_features` once instead of on each call
8fc86e155 Remove unused thread_locals
4b096beae Fix `masquerade_as_nightly_cargo` in work threads
e56417c8c Suggest RUSTC_BOOTSTRAP=crate instead of RUSTC_BOOTSTRAP=1
418129dae Downgrade error to a warning when `RUSTC_BOOTSTRAP` is set or this is the nightly channel
6c422a2c0 Restrict RUSTC_BOOTSTRAP in build.rs
2021-03-09 09:05:25 +00:00
Mara Bos bb9542b016 Rollup merge of #82841 - hvdijk:x32, r=joshtriplett
Change x64 size checks to not apply to x32.

Rust contains various size checks conditional on target_arch = "x86_64", but these checks were never intended to apply to x86_64-unknown-linux-gnux32. Add target_pointer_width = "64" to the conditions.
2021-03-09 09:05:24 +00:00
Mara Bos a315442729 Rollup merge of #82799 - bugadani:codegen-tests, r=nagisa
Add regression test for #75525
2021-03-09 09:05:23 +00:00
Mara Bos ba63a84acc Rollup merge of #82731 - de-vri-es:bump-libc-for-std, r=Mark-Simulacrum
Bump libc dependency of std to 0.2.88.

This PR bumps the `libc` dependency of `std` to 0.2.88. This will fix `TcpListener::accept` for Android on x86 platforms (https://github.com/rust-lang/libc/commit/31a2777d8f72db9eb3c3105f13afa94a47ca90d5).

This will really finally fix https://github.com/rust-lang/rust/issues/82400 for the main branch :)

r? ``@JohnTitor``
2021-03-09 09:05:22 +00:00
Mara Bos 824662d78a Rollup merge of #82048 - mark-i-m:or-pat-type-ascription, r=petrochenkov
or-patterns: disallow in `let` bindings

~~Blocked on https://github.com/rust-lang/rust/pull/81869~~

Disallows top-level or-patterns before type ascription. We want to reserve this syntactic space for possible future generalized type ascription.

r? ``@petrochenkov``
2021-03-09 09:05:20 +00:00
Mara Bos 0d97f9b22a Rollup merge of #82048 - mark-i-m:or-pat-type-ascription, r=petrochenkov
or-patterns: disallow in `let` bindings

~~Blocked on https://github.com/rust-lang/rust/pull/81869~~

Disallows top-level or-patterns before type ascription. We want to reserve this syntactic space for possible future generalized type ascription.

r? ``@petrochenkov``
2021-03-09 09:05:20 +00:00
Mara Bos 0083e6c989 Rollup merge of #81879 - imbrem:make-reverse-repr-transparent, r=m-ou-se
Added #[repr(transparent)] to core::cmp::Reverse

I found casting from an `&T` to an `&Reverse<T>` potentially useful, but found that `Reverse` was not `#[repr(transparent)]`, so after asking about it [on Reddit](https://www.reddit.com/r/rust/comments/le60uv/make_stdcmpreverse_reprtransparent_and_add_a/), I decided to go ahead and make a pull request which simply adds the attribute to the struct.
2021-03-09 09:05:19 +00:00
Mara Bos c013dc01f1 Rollup merge of #81127 - hanmertens:binary_heap_sift_down_perf, r=dtolnay
Improve sift_down performance in BinaryHeap

Replacing `child < end - 1` with `child <= end.saturating_sub(2)` in `BinaryHeap::sift_down_range` (surprisingly) results in a significant speedup of `BinaryHeap::into_sorted_vec`. The same substitution can be done for `BinaryHeap::sift_down_to_bottom`, which causes a slight but probably statistically insignificant speedup for `BinaryHeap::pop`. It's interesting that benchmarks aside from `bench_into_sorted_vec` are barely affected, even those that do use `sift_down_*` methods internally.

| Benchmark                | Before (ns/iter) | After (ns/iter) | Speedup |
|--------------------------|------------------|-----------------|---------|
| bench_find_smallest_1000<sup>1</sup> | 392,617          | 385,200         |    1.02 |
| bench_from_vec<sup>1</sup>           | 506,016          | 504,444         |    1.00 |
| bench_into_sorted_vec<sup>1</sup>    | 476,869          | 384,458         |    1.24 |
| bench_peek_mut_deref_mut<sup>3</sup> | 518,753          | 519,792         |    1.00 |
| bench_pop<sup>2</sup>                | 446,718          | 444,409         |    1.01 |
| bench_push<sup>3</sup>               | 772,481          | 770,208         |    1.00 |

<sup>1</sup>: internally calls `sift_down_range`
<sup>2</sup>: internally calls `sift_down_to_bottom`
<sup>3</sup>: should not be affected
2021-03-09 09:05:18 +00:00
Yoshitomo Nakanishi 43c88c60c1 Move char_lit_as_u8 to its own module 2021-03-09 17:28:56 +09:00
Yoshitomo Nakanishi f33bb3d900 Move cast_ref_to_mut to its own module 2021-03-09 17:24:29 +09:00
Yoshitomo Nakanishi ebd1ec0e40 Move cast_ptr_alignment to its own module 2021-03-09 17:17:04 +09:00
Yoshitomo Nakanishi 9a24877e2c Move fn_to_numeric_cast_with_truncation to its own module 2021-03-09 17:16:10 +09:00
Yoshitomo Nakanishi 458f6d19d0 Move fn_to_numeric_cast to its own module 2021-03-09 17:16:10 +09:00
Yoshitomo Nakanishi 0dce9921fd Remove 'lint_numeric_casts' 2021-03-09 17:16:10 +09:00
Yoshitomo Nakanishi 9709993e41 Move unnecessary_cast to its own module 2021-03-09 17:16:07 +09:00
Yoshitomo Nakanishi a383e034dc Move cast_possible_wrap to its own module 2021-03-09 16:44:44 +09:00
Yoshitomo Nakanishi 0975031117 Move cast_sign_loss to its own module 2021-03-09 16:05:21 +09:00
Yoshitomo Nakanishi 0534bf4698 Move cast_possible_truncation to its own module 2021-03-09 16:05:20 +09:00
bors 727e5f133c Auto merge of #6869 - DJMcNab:rust-analyzer-private, r=phansch
Opt-in to rustc_private for `rust-analyzer`

rust-analyzer/rust-analyzer#7891

changelog: none

This will also help priroda and any other package which depends on the `miri` library crate.
2021-03-09 06:46:55 +00:00
Andrea Nall e812a8abde use .all instead of negative use of .any 2021-03-08 23:08:52 -06:00
Andrea Nall e322c773e3 use TyS::walk 2021-03-08 23:03:45 -06:00