bors
49e1ec0995
Auto merge of #83736 - JohnTitor:fix-unsafe_block_in_unsafe_fn-stabilized-version, r=jyn514
...
Fix the `unsafe_block_in_unsafe_fn`s stabilized version
Fixes #83735
2021-04-01 05:34:54 +00:00
Yuki Okushi
fe9c4fbb9e
Fix the unsafe_block_in_unsafe_fns stabilized version
2021-04-01 10:56:51 +09:00
Yuki Okushi
b5782bad74
Catch a bad placeholder type error for statics in externs
2021-04-01 10:45:42 +09:00
Yuki Okushi
539242a07b
Add a suggestion when using a type alias instead of trait alias
2021-04-01 09:53:46 +09:00
Dylan DPC
1ef52ac5f5
Rollup merge of #83711 - JohnTitor:more-friendly-unknown-target-error, r=davidtwco
...
Clarify `--print target-list` is a rustc's option
Fixes #68238
2021-04-01 02:41:47 +02:00
b-naber
3194b26ab0
prevent very long compilation runtimes in LateBoundRegionNameCollector
2021-03-31 23:28:01 +02:00
JohnTitor
82c6709d6f
Clarify --print target-list is a rustc's option
2021-04-01 01:59:50 +09:00
Camille GILLOT
f3dde45d2a
Enable debugging the dep-graph without debug-assertions.
...
It may also be useful in these cases,
and some CI configurations test without debug assertions.
2021-03-31 17:12:06 +02:00
Jack Huey
7108918db6
Cleanups and comments
2021-03-31 10:16:37 -04:00
Jack Huey
0c98dc66fd
Fix tests and AstConv -> dyn AstConv
2021-03-31 10:16:37 -04:00
Jack Huey
4ff65ec782
Fmt and test revert
2021-03-31 10:16:37 -04:00
Jack Huey
8ad7e5685e
Fix new problem from rebase and a little cleanup
2021-03-31 10:16:37 -04:00
Jack Huey
6d5efa9f04
Add var to BoundRegion. Add query to get bound vars for applicable items.
2021-03-31 10:16:37 -04:00
Jack Huey
666859a6f8
Make late and late_anon regions track the bound var position
2021-03-31 10:15:56 -04:00
Jack Huey
84f82d348c
Revert explicit lifetimes
2021-03-31 10:15:56 -04:00
Jack Huey
30187c81f6
Track bound vars
2021-03-31 10:15:27 -04:00
Jack Huey
62a49c3bb8
Add tcx lifetime to Binder
2021-03-31 10:13:57 -04:00
Jack Huey
74851f4cf3
count bound vars
2021-03-31 10:11:47 -04:00
Jack Huey
97a22a4f9c
Add u32 for bound variables to Binder
2021-03-31 10:05:32 -04:00
Jack Huey
4955d755d3
Some rebinds and dummys
2021-03-31 10:05:32 -04:00
Oli Scherer
d139968d19
bail out early when substituting mir constants that don't need substituting
2021-03-31 10:40:45 +00:00
Oli Scherer
4e8edfb5c2
Forward some layouts to prevent recomputation
2021-03-31 10:40:45 +00:00
Oli Scherer
dbacfbc368
Add a new normalization query just for mir constants
2021-03-31 10:40:42 +00:00
Oli Scherer
c7c39ce6d0
We should never see unevaluated type-level constants after monomorphization unless errors occurred
2021-03-31 09:13:45 +00:00
Oli Scherer
1d56b8a2bc
Make unevaluated DefId rendering deterministic
2021-03-31 09:13:45 +00:00
Aman Arora
e78fac5601
Handle the case of partially captured drop type
2021-03-31 04:40:31 -04:00
bors
a5029ac0ab
Auto merge of #83684 - cjgillot:csp, r=petrochenkov
...
Remove hir::CrateItem.
The crate span is exactly the crate module's inner span. There is no need to store it twice.
2021-03-31 08:34:40 +00:00
Hameer Abbasi
c3ec0add8b
Add allocation information to undefined behaviour errors.
2021-03-31 07:21:08 +00:00
bjorn3
5773e51678
Inline a few methods
2021-03-31 09:19:29 +02:00
bors
2a32abbcde
Auto merge of #83681 - jyn514:blanket-impls-tweaks, r=Aaron1011
...
rustdoc: Only look at blanket impls in `get_blanket_impls`
The idea here is that all the work in 16156fb278/compiler/rustc_middle/src/ty/trait_def.rs (L172-L186) doesn't matter for `get_blanket_impls` - Rustdoc will already pick up on those blocks when it documents the item.
2021-03-31 05:47:22 +00:00
bors
6ff482bde5
Auto merge of #83666 - Amanieu:instrprof-order, r=tmandry
...
Run LLVM coverage instrumentation passes before optimization passes
This matches the behavior of Clang and allows us to remove several
hacks which were needed to ensure functions weren't optimized away
before reaching the instrumentation pass.
Fixes #83429
cc `@richkadel`
r? `@tmandry`
2021-03-31 03:20:33 +00:00
hi-rustin
8f77356249
give full path of constraint in suggest_constraining_type_param
...
revert file
bless with nll mode
2021-03-31 09:47:31 +08:00
Dylan DPC
7d888d100f
Rollup merge of #83654 - JohnTitor:issue-83606, r=estebank
...
Do not emit a suggestion that causes the E0632 error
Fixes #83606
2021-03-31 01:14:46 +02:00
Camille GILLOT
9d8f833e05
Remove hir::CrateItem.
2021-03-30 20:31:06 +02:00
bors
926ec1cb8b
Auto merge of #83639 - osa1:issue83638, r=estebank
...
Replace tabs in err messages before rendering
This is done in other call sites, but was missing in one place.
Fixes #83638
2021-03-30 17:07:19 +00:00
bjorn3
8331dbe6d0
Add an Mmap wrapper to rustc_data_structures
...
This wrapper implements StableAddress and falls back to directly reading
the file on wasm32
2021-03-30 18:57:03 +02:00
Joshua Nelson
6f06b761b9
Only look at blanket impls in get_blanket_impls
2021-03-30 12:28:33 -04:00
Camille GILLOT
8ee9322c10
Also profile finishing the encoding.
2021-03-30 18:10:08 +02:00
Camille GILLOT
df24315ddf
Adjust profiling.
2021-03-30 18:10:08 +02:00
Camille GILLOT
fe89f3236c
Address review.
2021-03-30 18:10:08 +02:00
Camille GILLOT
65a8681a17
Add documentation.
2021-03-30 18:10:07 +02:00
Camille GILLOT
c5c935af92
Simplify tracking the encoder state.
2021-03-30 18:10:07 +02:00
Camille GILLOT
e1c99e5fcc
Remove the parallel version.
2021-03-30 18:10:06 +02:00
Camille GILLOT
8208872fa2
Fix parallel compiler.
2021-03-30 18:10:06 +02:00
Camille GILLOT
cfe786e5e0
Fix tests.
...
Avoid invoking queries inside `check_paths`, since we are holding a lock
to the reconstructed graph.
2021-03-30 18:10:06 +02:00
Camille GILLOT
39b306a53d
Do not allocate in decoder.
2021-03-30 18:10:05 +02:00
Camille GILLOT
6bfaf3a9cb
Stream the dep-graph to a file.
2021-03-30 18:09:59 +02:00
Dylan DPC
5b467787b6
Rollup merge of #83667 - estebank:cool-bears-hot-tip, r=lcnr
...
Suggest box/pin/arc ing receiver on method calls
_Extracted from https://fasterthanli.me/articles/pin-and-suffering_
2021-03-30 11:34:30 +02:00
bjorn3
cab940e848
Merge two consecutive tcx.analysis() calls
2021-03-30 09:19:46 +02:00
bors
a0e229abad
Auto merge of #83649 - bjorn3:dedup_providers, r=petrochenkov
...
Don't duplicate the extern providers once for each crate
This should give a small perf improvement for small crates by avoiding a memcpy of a pretty big struct for each loaded crate. In addition would be useful for replacing the sequential `CrateNum` everywhere with the hash based `StableCrateId` introduced in #81635 , which would allow avoiding remapping of `CrateNum`'s when loading crate metadata. While this PR is not strictly needed for that, it is necessary to prevent a performance loss due to it.
I think this duplication was done in https://github.com/rust-lang/rust/pull/40008 (which introduced the query system) to make it possible to compile multiple crates in a single session in the future. I think this is unlikely to be implemented any time soon. In addition this PR can easily be reverted if necessary to implement this.
2021-03-30 06:22:29 +00:00