bjorn3
fa12fdbc29
Fix review comments
2021-01-23 17:55:39 +01:00
oli
b8727e2d60
Prevent query cycles during inlining
2021-01-23 16:51:22 +00:00
Camille GILLOT
97ee7c7e5a
Allow to query the HIR crate node.
2021-01-23 13:58:09 +01:00
Camille GILLOT
a185cdbc59
Iterate to encode def_kind.
2021-01-23 13:51:00 +01:00
Camille GILLOT
c58a6fa422
Iterate DefId to encode spans.
2021-01-23 13:44:02 +01:00
Camille GILLOT
064a351953
Infallible version of def_span.
2021-01-23 13:35:22 +01:00
bjorn3
a93dace55c
Never create an temporary PassMode::Direct when it is not a valid pass mode for a type
2021-01-23 10:30:39 +01:00
bjorn3
ba484de538
Move some code around
2021-01-23 10:30:39 +01:00
bjorn3
da0309c711
Use PassMode::Pair by default for Abi::ScalarPair for all abi's and in return position
...
Abi::ScalarPair is only ever used for types that don't have a stable
layout anyway so this doesn't break any FFI. It does however reduce the
amount of special casing on the abi outside of the code responsible for
abi specific adjustments to the pass mode.
2021-01-23 10:30:38 +01:00
pierwill
b29353af09
Edit rustc_middle::dep_graph module documentation
...
Co-authored-by: Joshua Nelson <joshua@yottadb.com>
Co-authored-by: Camelid <camelidcamel@gmail.com>
2021-01-22 15:15:05 -08:00
bors
f2de221b00
Auto merge of #81101 - tmiasko:combine-now, r=nagisa
...
Combine instructions immediately
2021-01-22 13:10:48 +00:00
Ömer Sinan Ağacan
e3faeb486a
mir: Improve size_of handling when arg is unsized
2021-01-21 22:17:05 +03:00
LeSeulArtichaut
933bb18956
Use rustc_type_ir::{IntTy,UintTy,FloatTy} instead of the
rustc_ast` ones in types
2021-01-18 21:09:23 +01:00
LeSeulArtichaut
0724573448
Move a few more types to rustc_type_ir
2021-01-18 21:06:12 +01:00
Tomasz Miąsko
508eec49e9
Combine instructions immediately
...
No functional changes intended
2021-01-18 13:15:27 +01:00
Ashley Mannix
d3cc598a02
Rollup merge of #81131 - pierwill:edit-rustc_middle-cast, r=varkor
...
Edit rustc_middle::ty::cast docs
Link to RFC 401 and add missing punctuation.
2021-01-18 21:53:40 +10:00
Ashley Mannix
d3ff9ac8e8
Rollup merge of #81100 - lcnr:encode_with_shorthand, r=oli-obk
...
prevent potential bug in `encode_with_shorthand`.
see https://rust-lang.zulipchat.com/#narrow/stream/233931-t-compiler.2Fmajor-changes/topic/Remove.20PredicateKind.20in.20favor.20of.20only.20Bin.E2.80.A6.20compiler-team.23397/near/223012169
2021-01-18 21:53:26 +10:00
bors
4253153db2
Auto merge of #80679 - jackh726:predicate-kind-take2, r=lcnr
...
Remove PredicateKind and instead only use Binder<PredicateAtom>
Originally brought up in https://github.com/rust-lang/rust/pull/76814#discussion_r546858171
r? `@lcnr`
2021-01-17 20:49:11 +00:00
pierwill
34debb640b
Edit rustc_middle::ty::cast docs
...
Link to RFC 401 and add missing punctuation.
2021-01-17 11:30:18 -08:00
Jack Huey
c4376ba24a
Whitespace and typo
2021-01-17 12:50:04 -05:00
Jack Huey
d797a85491
Add comment about Encodable/Decodable impl
2021-01-17 12:32:05 -05:00
Mara Bos
8f2ee87965
Rollup merge of #80983 - bjorn3:no_dup_is_dllimport_foreign_item, r=nagisa
...
Remove is_dllimport_foreign_item definition from cg_ssa
It overwrites the definition from rustc_metadata.
cc https://rust-lang.zulipchat.com/#narrow/stream/182449-t-compiler.2Fhelp/topic/query.20provided.20twice/near/218927806
Marked as draft to test if this breaks anything.
2021-01-17 12:24:51 +00:00
Mara Bos
19f97802ca
Rollup merge of #80635 - sexxi-goose:use-place-instead-of-symbol, r=nikomatsakis`
...
Improve diagnostics when closure doesn't meet trait bound
Improves the diagnostics when closure doesn't meet trait bound by modifying `TypeckResuts::closure_kind_origins` such that `hir::Place` is used instead of `Symbol`. Using `hir::Place` to describe which capture influenced the decision of selecting a trait a closure satisfies to (Fn/FnMut/FnOnce, Copy) allows us to show precise path in the diagnostics when `capture_disjoint_field` feature is enabled.
Closes rust-lang/project-rfc-2229/issues/21
r? ```@nikomatsakis```
2021-01-17 12:24:44 +00:00
Jack Huey
c76f47832a
Don't derive TyEncodable/TyDecodable for Binder
2021-01-17 04:13:51 -05:00
Jack Huey
674735b109
Impl EncodableWithShorthand for PredicateKind
2021-01-17 02:49:30 -05:00
Jack Huey
f2ed9a3a8c
Can't use EncodableWithShorthand for Predicate
2021-01-16 19:17:59 -05:00
Jack Huey
dcad9f1893
More review comments
2021-01-16 18:56:37 -05:00
Jack Huey
3dea68de1d
Review changes
2021-01-16 18:56:37 -05:00
Jack Huey
476bd53058
Cleanup
2021-01-16 18:50:34 -05:00
Jack Huey
e76476afe4
Cleanup
2021-01-16 18:40:47 -05:00
Jack Huey
876192e8cd
fold_with not super_fold_with in TypeFoldable impl for Predicate
2021-01-16 18:40:47 -05:00
Jack Huey
4cd6f85a07
Remove PredicateKind
2021-01-16 18:40:47 -05:00
Jack Huey
4cb3d6f983
Intermediate formatting and such
2021-01-16 18:40:47 -05:00
Jack Huey
8278314a8b
Remove PredicateKind::Atom
2021-01-16 18:40:47 -05:00
Bastian Kauschke
84b056d597
prevent potential bug in encode_with_shorthand
.
2021-01-17 00:34:54 +01:00
Aaron Hill
02952372c4
Implement Debug for DefIdForest
2021-01-16 17:56:32 -05:00
Aaron Hill
7afb32557d
Enforce that query results implement Debug
2021-01-16 17:53:02 -05:00
Bastian Kauschke
15f0921d0c
correctly deal with late-bound lifetimes in anon consts
2021-01-16 19:27:42 +01:00
Chris Pardy
2624b3e443
Improve diagnostics for Precise Capture
2021-01-15 19:39:24 -05:00
bors
fcbd305ee9
Auto merge of #80602 - tgnottingham:cratemetadata_you_aint_special, r=michaelwoerister
...
Remove DepKind::CrateMetadata and pre-allocation of DepNodes
Remove much of the special-case handling around crate metadata
dependency tracking by replacing `DepKind::CrateMetadata` and the
pre-allocation of corresponding `DepNodes` with on-demand invocation
of the `crate_hash` query.
2021-01-15 21:13:35 +00:00
Yuki Okushi
ce06df2e4a
Rollup merge of #81008 - tmiasko:generator-layout-err, r=tmandry
...
Don't ICE when computing a layout of a generator tainted by errors
Fixes #80998 .
2021-01-15 18:26:16 +09:00
Yuki Okushi
a584d87417
Rollup merge of #80944 - LingMan:map_or, r=nagisa
...
Use Option::map_or instead of `.map(..).unwrap_or(..)`
``@rustbot`` modify labels +C-cleanup +T-compiler
2021-01-15 18:26:14 +09:00
LingMan
a56bffb4f9
Use Option::map_or instead of .map(..).unwrap_or(..)
2021-01-14 19:23:59 +01:00
Mara Bos
9e9aba87af
Rollup merge of #80829 - jyn514:dep-constructor, r=michaelwoerister
...
Get rid of `DepConstructor`
This removes fully 235 unused functions.
Follow-up to https://github.com/rust-lang/rust/pull/80325#discussion_r548491999 .
r? ``@michaelwoerister``
cc ``@cjgillot``
2021-01-14 18:00:09 +00:00
bors
d03fe84169
Auto merge of #79328 - c410-f3r:hir-if, r=matthewjasper
...
Reintroduce hir::ExprKind::If
Basically copied and paste #59288/https://github.com/rust-lang/rust-clippy/pull/4080 with some modifications.
The vast majority of tests were fixed and now there are only a few remaining. Since I am still unable to figure out the missing pieces, any help with the following list is welcome.
- [ ] **Unnecessary `typeck` exception**: [Cheated on this one to make CI green.](https://github.com/rust-lang/rust/pull/79328/files#diff-3faee9ba23fc54a12b7c43364ba81f8c5660045c7e1d7989a02a0cee1c5b2051 )
- [x] **Incorrect span**: [Span should reference `then` and `else` separately.](https://github.com/rust-lang/rust/pull/79328/files#diff-cf2c46e82222ee4b1037a68fff8a1af3c4f1de7a6b3fd798aacbf3c0475abe3d )
- [x] **New note regarding `assert!`**: [Modified but not "wrong". Maybe can be a good thing?](https://github.com/rust-lang/rust/pull/79328/files#diff-9e0d7c89ed0224e2b62060c957177c27db43c30dfe3c2974cb6b5091cda9cfb5 )
- [x] **Inverted report location**: [Modified but not "wrong". Locations were inverted.](https://github.com/rust-lang/rust/pull/79328/files#diff-f637ce7c1f68d523a165aa9651765df05e36c4d7d279194b1a6b28b48a323691 )
- [x] **`src/test/ui/point-to-type-err-cause-on-impl-trait-return.rs` has weird errors**: [Not sure why this is happening.](https://github.com/rust-lang/rust/pull/79328/files#diff-c823c09660f5b112f95e97e8ff71f1797b6c7f37dbb3d16f8e98bbaea8072e95 )
- [x] **Missing diagnostic**: [???](https://github.com/rust-lang/rust/pull/79328/files#diff-6b8ab09360d725ba4513933827f9796b42ff9522b0690f80b76de067143af2fc )
2021-01-14 14:41:58 +00:00
Tomasz Miąsko
5ea1d0e865
Don't ICE when computing a layout of a generator tainted by errors
2021-01-14 13:13:13 +01:00
bors
180fdffa17
Auto merge of #80654 - Aaron1011:fix/dummy-span-ctxt, r=wesleywiser
...
Properly handle `SyntaxContext` of dummy spans in incr comp
Fixes #80336
Due to macro expansion, we may end up with spans with an invalid
location and non-root `SyntaxContext`. This commits preserves the
`SyntaxContext` of such spans in the incremental cache, and ensures
that we always hash the `SyntaxContext` when computing the `Fingerprint`
of a `Span`
Previously, we would discard the `SyntaxContext` during serialization to
the incremental cache, causing the span's `Fingerprint` to change across
compilation sessions.
2021-01-13 23:24:31 +00:00
Jacob Pratt
edf2e3725e
Use unsigned_abs throughout repository
2021-01-13 17:58:08 -05:00
bors
a62a76047e
Auto merge of #77524 - Patryk27:fixes/66228, r=estebank
...
Rework diagnostics for wrong number of generic args (fixes #66228 and #71924 )
This PR reworks the `wrong number of {} arguments` message, so that it provides more details and contextual hints.
2021-01-13 20:35:58 +00:00
Aaron Hill
482a67d20f
Properly handle SyntaxContext
of dummy spans in incr comp
...
Fixes #80336
Due to macro expansion, we may end up with spans with an invalid
location and non-root `SyntaxContext`. This commits preserves the
`SyntaxContext` of such spans in the incremental cache, and ensures
that we always hash the `SyntaxContext` when computing the `Fingerprint`
of a `Span`
Previously, we would discard the `SyntaxContext` during serialization to
the incremental cache, causing the span's `Fingerprint` to change across
compilation sessions.
2021-01-13 15:20:29 -05:00