Commit Graph

110824 Commits

Author SHA1 Message Date
bors
b7bd7c1024 Auto merge of #71636 - Dylan-DPC:rollup-9gc24ak, r=Dylan-DPC
Rollup of 5 pull requests

Successful merges:

 - #71311 (On `FnDef` type annotation suggestion, use fn-pointer output)
 - #71488 (normalize field projection ty to fix broken MIR issue)
 - #71489 (Fix off by one in treat err as bug)
 - #71585 (remove obsolete comment)
 - #71634 (Revert #71372 ("Fix #! (shebang) stripping account space issue").)

Failed merges:

r? @ghost
2020-04-28 12:28:24 +00:00
Dylan DPC
6cad1e3006
Rollup merge of #71634 - eddyb:revert-71372, r=petrochenkov
Revert #71372 ("Fix #! (shebang) stripping account space issue").

While #71372 fixed some of the problems `#!`-stripping had, it introduced others:
* inefficient implementation (`.chars().filter(...).collect()` on the entire input file)
  * this also means the length returned isn't always correct, leading to e.g. #71471
* it ignores whitespace anywhere, stripping ` # ! ...` which isn't a valid shebang
  * the definition of "whitespace" it uses includes newlines, which means even `\n#\n!\n...` is stripped as a shebang (and anything matching the regex `\s*#\s*!\s*`, and not followed by `[`, really)
* it's backward-incompatible but didn't go through Crater

Now, #71487 is already open and will solve all of these issues. But for running Crater, and just in case #71487 takes a bit longer, I decided it's safer to just revert #71372.

This will also make #71372's diff clearer, as it will start again from the original whitespace-unaware version.

r? @petrochenkov
2020-04-28 13:12:17 +02:00
Dylan DPC
8e025db592
Rollup merge of #71585 - tshepang:obsolete-comment, r=Dylan-DPC
remove obsolete comment

Not sure if it's better to have an outdated comment or no comment at all (made obsolete by 2b9fea1300).
2020-04-28 13:12:15 +02:00
Dylan DPC
2b5325dbff
Rollup merge of #71489 - spastorino:fix-treat-err-as-bug-handling, r=eddyb
Fix off by one in treat err as bug

`-Ztreat-err-as-bug` doesn't work properly with delay_span_bug.

r? @eddyb
2020-04-28 13:12:14 +02:00
Dylan DPC
5aebbe9ea2
Rollup merge of #71488 - spastorino:normalize-ty-to-fix-broken-mir, r=eddyb
normalize field projection ty to fix broken MIR issue

Fixes #71344

r? @eddyb
2020-04-28 13:12:12 +02:00
Dylan DPC
d9c1f5cf4f
Rollup merge of #71311 - estebank:fn-type-param, r=varkor
On `FnDef` type annotation suggestion, use fn-pointer output

Address the last point in #71209.
2020-04-28 13:12:09 +02:00
Eduard-Mihai Burtescu
4d67c8da55 Revert "Rollup merge of #71372 - ayushmishra2005:shebang_stripping, r=estebank"
This reverts commit 46a8dcef5c, reversing
changes made to f28e3873c5.
2020-04-28 13:02:58 +03:00
bors
d7afaa7247 Auto merge of #71444 - RalfJung:test-async-no-opt, r=jonas-schievink
smoke-test for async fn with mir-opt-level=0

MIR opt levels heavily influence which MIR transformations run, and we barely test non-default opt levels. I am particularly worried about `async fn` lowering and how it might (not) work when the set of preceding MIR passes changes -- see https://github.com/rust-lang/rust/pull/70073.

This adds some basic smoke testing, where at least a few `async fn` `run-pass` test are ensured to also work with mir-opt-level=0.
2020-04-28 09:06:55 +00:00
Ralf Jung
3a129df39c also run some generator tests without MIR optimizations 2020-04-28 08:22:08 +02:00
bors
fb5615a477 Auto merge of #71292 - marmeladema:queries-local-def-id, r=eddyb
Convert more queries to use `LocalDefId`

This PR is based on commits in https://github.com/rust-lang/rust/pull/71215 and should partially solve #70853
2020-04-28 05:01:27 +00:00
bors
6db2094c90 Auto merge of #71606 - Xanewok:update-rls, r=Xanewok
Update RLS to unbreak toolstate

Breakage caused by https://github.com/rust-lang/rust/pull/71263.

r? @ghost
2020-04-28 01:46:47 +00:00
marmeladema
1349272a6e Accept LocalDefId as key for check_impl_item_well_formed query 2020-04-27 23:58:11 +01:00
marmeladema
14119a2a05 Accept LocalDefId as key for check_trait_item_well_formed query 2020-04-27 23:58:11 +01:00
marmeladema
d9e5fa15ff Accept LocalDefId as key for check_item_well_formed query 2020-04-27 23:58:11 +01:00
marmeladema
c9f6ffc3b0 Change return type of entry_fn query to return a LocalDefId 2020-04-27 23:58:11 +01:00
marmeladema
3877f54000 Declare body_owner and subject_def_id as LocalDefId in RegionCtxt 2020-04-27 23:57:55 +01:00
marmeladema
91d5ab3fb1 Declare body_owner as LocalDefId in MemCategorizationContext 2020-04-27 23:55:41 +01:00
marmeladema
3c6e6ca729 Accept LocalDefId as key for check_mod_privacy query 2020-04-27 23:55:41 +01:00
marmeladema
49d0b727ea Accept LocalDefId as key for lint_mod query 2020-04-27 23:55:41 +01:00
marmeladema
9e3bb615d5 Accept LocalDefId as argument for mir_build::lint::check 2020-04-27 23:55:41 +01:00
marmeladema
eada4101a0 Accept LocalDefId as key for mir_validated query 2020-04-27 23:55:32 +01:00
bors
c354509343 Auto merge of #71620 - Dylan-DPC:rollup-9wgtisb, r=Dylan-DPC
Rollup of 7 pull requests

Successful merges:

 - #67841 (Add Read/Write::can_read/write_vectored)
 - #71524 (Minimize parameter of coerce_borrowed_pointer())
 - #71558 (Cleanup and document `-Z tls-model` )
 - #71578 (linkchecker: fix typo in main.rs)
 - #71596 (Fix broken link in `QPath` documentation)
 - #71604 (make recursive-zst test unleashed)
 - #71605 (No need to whitelist E0750 anymore)

Failed merges:

r? @ghost
2020-04-27 22:49:05 +00:00
marmeladema
6e930f72d0 Accept LocalDefId as key for mir_borrowck query 2020-04-27 21:50:18 +01:00
marmeladema
82823c0229 Return a FxHashSet<LocalDefId> from mir_keys query 2020-04-27 21:50:17 +01:00
marmeladema
82cc530431 Accept LocalDefId as keyt for names_imported_by_glob_use
and `maybe_unused_trait_import` queries
2020-04-27 21:50:17 +01:00
marmeladema
da975c318d Use LocalDefId for type_param_predicates query 2020-04-27 21:50:17 +01:00
marmeladema
f2f0478de7 Use LocalDefId in mir_built query 2020-04-27 21:50:17 +01:00
marmeladema
abd31ad6e8 Use LocalDefId in unsafety_check_result query 2020-04-27 21:50:17 +01:00
marmeladema
de7c9e753d Use LocalDefId in typeck_tables_of and used_trait_imports queries 2020-04-27 21:50:17 +01:00
Dylan DPC
c890912da1
Rollup merge of #71605 - GuillaumeGomez:remove-e0750-from-whitelist, r=Dylan-DPC
No need to whitelist E0750 anymore

Since #71304 has been fixed, no need to whitelist it anymore.

r? @Dylan-DPC
2020-04-27 22:15:11 +02:00
Dylan DPC
efed49b79d
Rollup merge of #71604 - RalfJung:unleash-recursive-zst, r=oli-obk
make recursive-zst test unleashed

Make sure we find this issue even without const qualification.

r? @oli-obk @ecstatic-morse
2020-04-27 22:15:09 +02:00
Dylan DPC
c1c46c751c
Rollup merge of #71596 - LeSeulArtichaut:patch-1, r=Dylan-DPC
Fix broken link in `QPath` documentation

r? @Dylan-DPC
2020-04-27 22:15:07 +02:00
Dylan DPC
f4e0431da0
Rollup merge of #71578 - ryzokuken:linkchecker, r=Dylan-DPC
linkchecker: fix typo in main.rs

Came across this while reading the file.
2020-04-27 22:15:06 +02:00
Dylan DPC
f81a41a86a
Rollup merge of #71558 - petrochenkov:tlsm, r=Amanieu
Cleanup and document `-Z tls-model`

r? @Amanieu
2020-04-27 22:15:04 +02:00
Dylan DPC
e2976c1371
Rollup merge of #71524 - ldm0:ptrparam, r=matthewjasper
Minimize parameter of coerce_borrowed_pointer()

Change last parameter of `coerce_borrowed_pointer()` from `TypeAndMut` to `Mutability` (similar to `coerce_unsafe_ptr()`), since the `TypeAndMut::ty` is never used directly in this function.
2020-04-27 22:15:01 +02:00
Dylan DPC
c4d9f42f6d
Rollup merge of #67841 - sfackler:can-vector, r=Amaneiu
Add Read/Write::can_read/write_vectored

When working with an arbitrary reader or writer, code that uses vectored
operations may end up being slower than code that copies into a single
buffer when the underlying reader or writer doesn't actually support
vectored operations. These new methods allow you to ask the reader or
witer up front if vectored operations are efficiently supported.

Currently, you have to use some heuristics to guess by e.g. checking if
the read or write only accessed the first buffer. Hyper is one concrete
example of a library that has to do this dynamically:
0eaf304644/src/proto/h1/io.rs (L582-L594)
2020-04-27 22:14:55 +02:00
bors
2d03399f53 Auto merge of #71200 - oli-obk:mir_bless, r=eddyb
Emit basic block info for stmts and terminators in MIR dumps only with -Zverbose

r? @eddyb

as per https://github.com/rust-lang/rust/pull/70755#discussion_r403419476
2020-04-27 19:36:46 +00:00
Esteban Kuber
432ab343f8
fix typo
Co-Authored-By: varkor <github@varkor.com>
2020-04-27 10:59:44 -07:00
Santiago Pastorino
3fe280451b
Add test for delay_span_bug and -Ztrear-err-as-bug 2020-04-27 13:05:11 -03:00
Oliver Scherer
a2fdc94686 Emit basic block ids for statements and terminators in MIR only in -Zverbose mode 2020-04-27 15:16:12 +02:00
Santiago Pastorino
230e40644b
Fix off by one error for delay_span_bug
delay_span_bug bumps error_count after checking treat_err_as_bug
2020-04-27 09:14:30 -03:00
Igor Matuszewski
f4ac42fb72 Update RLS to unbreak toolstate
Breakage caused by https://github.com/rust-lang/rust/pull/71263.
2020-04-27 14:14:18 +02:00
Steven Fackler
c68f23ff6d fix wasi 2020-04-27 04:50:03 -07:00
Ralf Jung
3bce639fc0 make recursive-zst test unleashed 2020-04-27 13:40:26 +02:00
Guillaume Gomez
116dca5d85 No need to whitelist E0750 anymore 2020-04-27 13:36:45 +02:00
bors
46ec74e60f Auto merge of #71268 - estebank:devectorize, r=eddyb
Remove some `Vec` allocations to improve performance

This claws back most of the performance lost in https://github.com/rust-lang/rust/pull/69745.
r? @eddyb
2020-04-27 10:00:05 +00:00
bors
d81f5597ac Auto merge of #70073 - wesleywiser:mir_opt_level_0, r=oli-obk
Don't run various MIR optimizations at mir-opt-level=0

Add missing checks for mir-opt-level to non-essential MIR passes.

I verified that this can still bootstrap even with these passes disabled.

r? @oli-obk cc @RalfJung
2020-04-27 07:04:46 +00:00
bors
ef71df106b Auto merge of #71600 - Dylan-DPC:rollup-7tvzi9n, r=Dylan-DPC
Rollup of 6 pull requests

Successful merges:

 - #68716 (Stabilize `Span::mixed_site`)
 - #71263 (Remove unused abs_path method from rustc_span::source_map::FileLoader)
 - #71409 (Point at the return type on `.into()` failure caused by `?`)
 - #71419 (add message for resolution failure because wrong namespace)
 - #71438 (Tweak some suggestions in `rustc_resolve`)
 - #71589 (remove Unique::from for shared pointer types)

Failed merges:

r? @ghost
2020-04-27 02:38:50 +00:00
Dylan DPC
cddbed0003
Rollup merge of #71589 - RalfJung:unique-no-shr, r=SimonSapin
remove Unique::from for shared pointer types

r? @SimonSapin
2020-04-27 03:26:18 +02:00
Dylan DPC
ac62dcef05
Rollup merge of #71438 - estebank:resolve-sugg-tiny, r=petrochenkov
Tweak some suggestions in `rustc_resolve`
2020-04-27 03:26:17 +02:00