Commit Graph

110398 Commits

Author SHA1 Message Date
ljedrz
672b7682b0 sort unused unsafe blocks by Span instead of NodeId 2020-04-16 14:53:09 +02:00
Wesley Wiser
9666d31bcf Respond to code review feedback
- Remove reads of indirect `Place`s
- Add comments explaining what the algorithm does
2020-04-16 08:34:37 -04:00
ljedrz
d167408cb4 simplify unused unsafe block handling 2020-04-16 14:24:52 +02:00
Duddino
f36f78f571 Fixed issue with self: &Box<Self> 2020-04-16 14:05:57 +02:00
Guillaume Gomez
6b83d0851f Clean up E0520 explanation 2020-04-16 13:51:02 +02:00
Duddino
ad105ef9a4 ./x.py fmt 2020-04-16 13:23:01 +02:00
Duddino
da59b8ff65 fixed missing trait method suggests incorrect code (self parameter not named self) 2020-04-16 13:23:01 +02:00
Ralf Jung
69423bf049 test fast path offset reporting 2020-04-16 13:21:23 +02:00
Ralf Jung
0d01ce6a1b switch back to 'bytes' 2020-04-16 13:19:51 +02:00
bors
4e4d49d60f Auto merge of #70831 - sfackler:shrink-future-stack, r=matthewjasper
Remove a stack frame from .await calls

The stack frames when `.await`ing one async fn from another currently look like this:

```
  12: foo:🅱️:{{closure}}
             at src/main.rs:2
  13: <core::future::from_generator::GenFuture<T> as core::future::future::Future>::poll
             at /home/sfackler/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/src/libcore/future/mod.rs:66
  14: core::future::poll_with_context
             at /home/sfackler/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/src/libcore/future/mod.rs:84
  15: foo:🅰️:{{closure}}
             at src/main.rs:6
```

Since the move away from using TLS to pass the Context around, it's now easy to remove frame 14 by removing poll_with_context in favor of calling Future::poll directly. This still leaves the `GenFuture` frame, but that seems significantly harder to deal with.

It also improves diagnostics a bit since they no longer talk about the private poll_with_context function.
2020-04-16 09:13:07 +00:00
bors
534a41a329 Auto merge of #71173 - RalfJung:miri, r=RalfJung
bump Miri

Fixes https://github.com/rust-lang/rust/issues/71110
r? @ghost Cc @rust-lang/miri
2020-04-16 05:47:24 +00:00
bors
be895b2bb8 Auto merge of #71159 - topecongiro:rustfmt-1.4.14, r=Dylan-DPC
Bump rustfmt and rls

Close #71076. Close #71077.

r? @Xanewok
2020-04-16 02:10:29 +00:00
Ralf Jung
7fa2907e3f bump Miri 2020-04-16 01:14:59 +02:00
bors
ce1ab355c2 Auto merge of #71180 - Dylan-DPC:rollup-pscpg6q, r=Dylan-DPC
Rollup of 6 pull requests

Successful merges:

 - #69903 (Do not ICE in the face of invalid enum discriminant)
 - #70354 (Update RELEASES.md for 1.43.0)
 - #70774 (End cleanup on rustdoc-js tools)
 - #70990 (Improve rustdoc source code a bit)
 - #71145 (Add illumos triple)
 - #71166 (Clean up E0518 explanation)

Failed merges:

r? @ghost
2020-04-15 22:58:54 +00:00
Dylan DPC
41dc51ead8
Rollup merge of #71166 - GuillaumeGomez:cleanup-e0518, r=Dylan-DPC
Clean up E0518 explanation

r? @Dylan-DPC
2020-04-16 00:39:27 +02:00
Dylan DPC
905a920313
Rollup merge of #71145 - pfmooney:illumos-triple, r=nagisa
Add illumos triple

This fixes rust-lang/rust#55553 and adds support for `illumos` as a `target_os` on `x86_64`.  In addition to the compile spec and libstd additions, several library dependencies have been bumped in order to permit working builds of cargo and rustup for the new target.

Work originally started by @jasonbking, with subsequent additions by @pfmooney and @jclulow.
2020-04-16 00:39:25 +02:00
Dylan DPC
9433d899a7
Rollup merge of #70990 - GuillaumeGomez:rustdoc-cleanup, r=ollie27
Improve rustdoc source code a bit

Very small clean up. I realized that there were too many nested conditions whereas we could just use `and_then`.

r? @kinnison

cc @ollie27
2020-04-16 00:39:24 +02:00
Dylan DPC
f71b55d9b2
Rollup merge of #70774 - GuillaumeGomez:clean-rustdoc-js-tools, r=ollie27
End cleanup on rustdoc-js tools

Fixes #70689.

It removes a lot of code, which is pretty nice. :3

We now only have one entry point and a small set of options.

r? @ollie27
2020-04-16 00:39:22 +02:00
Dylan DPC
3c6e1936bc
Rollup merge of #70354 - XAMPPRocky:master, r=Mark-Simulacrum
Update RELEASES.md for 1.43.0

### [Rendered](https://github.com/XAMPPRocky/rust/blob/master/RELEASES.md)

r? @Mark-Simulacrum

cc @rust-lang/release
2020-04-16 00:39:17 +02:00
Dylan DPC
03707b5671
Rollup merge of #69903 - estebank:icemation, r=oli-obk
Do not ICE in the face of invalid enum discriminant

Fix #67377.

r? @pnkfelix
2020-04-16 00:39:13 +02:00
Matthias Krüger
3837df2992 don't clone types that are copy (clippy::clone_on_copy) 2020-04-16 00:17:38 +02:00
Matthias Krüger
139c646251 Fix clippy warnings
clippy::{filter_next,single_char_pattern,unit_arg,identity_conversion,nonminimal_bool}
2020-04-15 23:38:48 +02:00
Vytautas Astrauskas
738ebcfb6a Remove now unnecessary resolve_maybe_global_alloc. 2020-04-15 14:05:14 -07:00
Rakshith Ravi
abe5973b9d Inlined everything into a single trait and trait impl 2020-04-16 01:19:51 +05:30
bors
d2230290f7 Auto merge of #71139 - matthiaskrgr:submodule_upd, r=Dylan-DPC
submodules: update clippy from af5940b7 to d236b30a

Changes:
````
rustup https://github.com/rust-lang/rust/pull/70643
Explain panic on `E0463` in integration tests
Temporarily disable rustfmt integration test
Cleanup: Use rustc's is_proc_macro_attr
Cleanup: Use our `sym!` macro more
Fixes #5405: redundant clone false positive with arrays
update lints
verbose_bit_mask: fix bit mask used in docs
Update documentation for new_ret_no_self
````

Fixes #71114
2020-04-15 19:47:56 +00:00
Wesley Wiser
da8f3bbf32 Directly modify the used_locals vec
Fixes perf regression in `optimized_mir` query
2020-04-15 14:58:54 -04:00
Wesley Wiser
de3cf6e8a4 Run SimplifyLocals iteratively until we get to a fixedpoint 2020-04-15 14:58:53 -04:00
Matthias Krüger
fada4b24b2 submodules: update clippy from af5940b7 to 6651c1b9
Changes:
````
Rename dummy_hir_id -> parent_hir_id
rustup https://github.com/rust-lang/rust/pull/71116
Change default many single char names threshold
Better precedence case management + more tests
Use only check_expr with parent expr and precedence
Check for Deref trait impl + add fixed version
Report using stmts and expr + tests
Global rework + fix imports
Working basic dereference clip
Add test for zero single char names
Make the single char threshold strict inequality
large_enum_variant: Report sizes of variants
Refactor: Use rustc's `match_def_path`
deps: bump compiletest-rs from 0.4 to 0.5
rustup https://github.com/rust-lang/rust/pull/70643
Explain panic on `E0463` in integration tests
Temporarily disable rustfmt integration test
result_map_unit_fn: Fix incorrect UI tests
Cleanup: Use rustc's is_proc_macro_attr
Cleanup: Use our `sym!` macro more
Fixes #5405: redundant clone false positive with arrays
Disallow bit-shifting in `integer_arithmetic` lint
update lints
cargo dev fmt
Make use of Option/Result diagnostic items
Make use of some existing diagnostic items
Say that diagnostic items are preferred over paths
verbose_bit_mask: fix bit mask used in docs
Update documentation for new_ret_no_self
Update doc generation script
Add lint on large const arrays
Make the epsilon note spanless
Split check_fn function
Indicate when arrays are compared in error message
Make epsilon note spanless when comparing arrays
Add float cmp const tests for arrays
Add float cmp tests for arrays
Handle constant arrays with single value
Don't show comparison suggestion for arrays
Allow for const arrays of zeros
Handle evaluating constant index expression
Add handling of float arrays to miri_to_const
Update stderr of float_cmp test
Update field names in is_float
Add tests for float in array comparison
Add lint when comparing floats in an array
````

Fixes #71114
2020-04-15 20:56:28 +02:00
Wesley Wiser
7c0802b341 Remove other Rvalues 2020-04-15 14:53:41 -04:00
Wesley Wiser
0e0a71a393 Add test case 2020-04-15 14:34:23 -04:00
Esteban Küber
f47c4ffdfa Do not ICE in the face of invalid enum discriminant 2020-04-15 10:22:51 -07:00
Amanieu d'Antras
ce83b49d16 Deprecate the asm! macro 2020-04-15 18:09:00 +01:00
Amanieu d'Antras
c4ca63885e Update parking_lot dependency to avoid use of deprecated asm! 2020-04-15 17:46:29 +01:00
Amanieu d'Antras
3475be336f Update stdarch submodule to use llvm_asm! instead of asm! 2020-04-15 17:46:29 +01:00
Vytautas Astrauskas
9e46807cff Add function eval_maybe_thread_local_static_const that allows handling thread locals without touching debug info; address other PR comments. 2020-04-15 09:28:57 -07:00
Felix S. Klock II
d05ae3a375 Incorporated review feedback:
Renamed the struct to make it a little clearer that it doesn't just hold one
imports map. (I couldn't bring myself to write it as `ThinLTOImportsExports`
though, mainly since the exports map is literally derived from the imports map
data.) Added some doc to the struct too.

Revised comments to add link to the newer issue that discusses why the exports
are relevant.

Renamed a few of the methods so that the two character difference is more
apparent (because 1. the method name is shorter and, perhaps more importantly,
the changed characters now lie at the beginning of the method name.)
2020-04-15 12:28:01 -04:00
Vytautas Astrauskas
2960a6cf04 Clarify the comments explaining the purpose of resolve_maybe_global_alloc. 2020-04-15 09:25:21 -07:00
Vytautas Astrauskas
7e6dbd2b7f Address reviewers' comments: replace resolve_thread_local_allocation_id with resolve_maybe_global_alloc, clarify comments. 2020-04-15 09:25:21 -07:00
Vytautas Astrauskas
c53210c550 Make the necessary changes to support concurrency in Miri. 2020-04-15 09:25:21 -07:00
bors
835428c35d Auto merge of #71172 - pietroalbini:update-tool-maintainers, r=pietroalbini
Update tool maintainers

Centril is taking a break from the project.
2020-04-15 16:23:48 +00:00
Pietro Albini
6b455281c6
update tool maintainers 2020-04-15 18:19:02 +02:00
Ralf Jung
818bef5558 don't specify log base in big-O 2020-04-15 17:07:13 +02:00
Ralf Jung
88612e3657 big-O notation: parenthesis, multiplication and backticks 2020-04-15 14:33:45 +02:00
Guillaume Gomez
0fcdefb559 Clean up E0518 explanation 2020-04-15 14:20:40 +02:00
Ralf Jung
9ee4d1aadc reword Miri validity errors: undefined -> uninitialized 2020-04-15 13:38:07 +02:00
Wesley Wiser
8da26e0366 Use call instead of invoke for functions that cannot unwind
The `FnAbi` now knows if the function is allowed to unwind. If a
function isn't allowed to unwind, we can use a `call` instead of an
`invoke`.

This resolves an issue when calling LLVM intrinsics which cannot unwind
LLVM will generate an error if you attempt to invoke them so we need to
ignore cleanup blocks in codegen and generate a call instead.
2020-04-15 05:45:21 -04:00
Duddino
fbc4168d80 Provide better compiler output when using ? on Option in fn returning Result and vice-versa 2020-04-15 10:58:12 +02:00
bors
df768c5c8f Auto merge of #71162 - Centril:rollup-jzg6ykc, r=Centril
Rollup of 4 pull requests

Successful merges:

 - #70891 (unit rvalue, use constant `()` instead of tuple)
 - #71030 (rustc_target: Refactor target specifications related to Windows and UEFI)
 - #71100 (Miri: expand frame hooks)
 - #71116 (Entirely remove `DUMMY_HIR_ID`)

Failed merges:

r? @ghost
2020-04-15 07:11:22 +00:00
Mazdak Farrokhzad
7341cad3f3
Rollup merge of #71116 - marmeladema:dummy-hir-id-removal, r=eddyb
Entirely remove `DUMMY_HIR_ID`

Some helpers functions have been introduced to deal with (buggy) cases
where either a `NodeId` or a `DefId` do not have a corresponding `HirId`.
Those cases are tracked in issue #71104.
2020-04-15 09:10:05 +02:00
Mazdak Farrokhzad
8da59521e1
Rollup merge of #71100 - RalfJung:miri-frame-hook, r=oli-obk
Miri: expand frame hooks

This is needed to make https://github.com/rust-lang/miri/pull/1330 work.

r? @oli-obk @eddyb
2020-04-15 09:10:03 +02:00