Mark Rousskov
078e3fd4ba
Add another case of fallback to () avoid breakage
...
This adds src/test/ui/never_type/fallback-closure-ret.rs as a test case which
showcases the failure mode fixed by this commit.
2021-09-17 15:34:47 -04:00
jackh726
be76bdf905
Remove ToPredicate impls that use Binder::dummy
2021-09-15 20:54:50 -04:00
Ellen
406d2ab95d
rename mir -> thir around abstract consts
2021-09-09 01:32:03 +01:00
Gary Guo
97214eecc5
Add query own_existential_vtable_entries
2021-09-05 18:13:32 +01:00
Gary Guo
871eb6233e
Stop allocating vtable entries for non-object-safe methods
2021-09-05 18:13:32 +01:00
Deadbeef
f3d96e9391
fmt
2021-08-27 08:09:00 +00:00
Deadbeef
80e1ee5aee
Add ty::BoundConstness
2021-08-27 06:49:18 +00:00
lcnr
f3996f6a88
review
2021-08-26 11:14:31 +02:00
lcnr
ab9108b70f
update TypeFlags to deal with missing ct substs
2021-08-26 11:00:30 +02:00
Charles Lew
c22dfab215
Add assertion to ensure the query doesn't get called before type infererence is done.
2021-08-20 02:37:00 +08:00
Charles Lew
6b1c52ff25
Fold vtable_trait_upcasting_coercion_new_vptr_slot logic into obligation processing.
2021-08-18 13:00:27 +08:00
Charles Lew
63ed625313
Implement pointer casting.
2021-08-03 01:09:37 +08:00
Charles Lew
634638782b
Switch to store Instance directly within VtblEntry, fix TraitVPtr representation.
2021-07-20 22:53:02 +08:00
Charles Lew
ab171c5279
Add internal attribute and tests.
2021-07-20 22:14:43 +08:00
Charles Lew
d2dc4276fd
Refactor vtable format.
2021-07-20 22:14:42 +08:00
Aman Arora
8ef5212eff
Make type_implements_trait not a query
2021-07-06 14:38:10 -04:00
Niko Matsakis
63fbefd359
tag issues with FIXME
2021-07-04 12:50:28 -04:00
Niko Matsakis
40ee019c17
allow inference vars in type_implements_trait
2021-07-04 11:28:20 -04:00
Charles Lew
a86d3a7e45
Refactor to make interpreter and codegen backend neutral to vtable internal representation.
2021-06-15 01:59:00 +08:00
kadmin
e4e5db4e42
Add has_default to GenericParamDefKind::Const
...
This currently creates a field which is always false on GenericParamDefKind for future use when
consts are permitted to have defaults
Update const_generics:default locations
Previously just ignored them, now actually do something about them.
Fix using type check instead of value
Add parsing
This adds all the necessary changes to lower const-generics defaults from parsing.
Change P<Expr> to AnonConst
This matches the arguments passed to instantiations of const generics, and makes it specific to
just anonymous constants.
Attempt to fix lowering bugs
2021-03-23 17:16:20 +00:00
Ömer Sinan Ağacan
c4b90dfdc5
Remove an old FIXME comment and inline attribute
...
Apparently #35870 caused a problem in this code (which originally
returned an impl trait) and `#[inline]` was added as a workaround, in
ade79d7609 .
The issue is now fixed and the comment and `#[inline]` can now be
removed.
2021-02-28 20:43:58 +03:00
Santiago Pastorino
7aa602b84c
Revert "Auto merge of #79637 - spastorino:revert-trait-inheritance-self, r=Mark-Simulacrum"
...
This reverts commit b4def89d76 , reversing
changes made to 7dc1e852d4 .
2021-02-05 18:56:56 -03:00
kadmin
6a03f0350d
Add error message for private fn
...
Bless tests
Update with changes from comments
2021-01-31 20:45:13 +00:00
Jack Huey
3dea68de1d
Review changes
2021-01-16 18:56:37 -05:00
Matthias Krüger
d12a358673
use matches!() macro in more places
2020-12-24 13:35:12 +01:00
Santiago Pastorino
37354ebc97
Revert "Auto merge of #79209 - spastorino:trait-inheritance-self, r=nikomatsakis"
...
This reverts commit 349b3b324d , reversing
changes made to b776d1c3e3 .
2020-12-02 12:19:38 -03:00
bors
349b3b324d
Auto merge of #79209 - spastorino:trait-inheritance-self, r=nikomatsakis
...
Allow Trait inheritance with cycles on associated types
Fixes #35237
r? `@nikomatsakis`
cc `@estebank`
2020-11-29 21:04:23 +00:00
Joshua Nelson
2d39c09cc2
Change comments on types to doc-comments
2020-11-27 14:17:25 -05:00
Santiago Pastorino
2ca4964db5
Allow to self reference associated types in where clauses
2020-11-27 11:23:47 -03:00
Bastian Kauschke
2bf93bd852
compiler: fold by value
2020-11-16 22:34:57 +01:00
est31
12187b7f86
Remove unused #[allow(...)] statements from compiler/
2020-09-26 01:25:55 +02:00
Bastian Kauschke
30ff1ef3d0
support const_evaluatable_checked across crate boundaries
2020-09-18 17:11:34 +02:00
Bastian Kauschke
c3a772f55f
use abstract consts when unifying ConstKind::Unevaluated
2020-09-18 17:11:34 +02:00
Bastian Kauschke
d327fa112b
initial working state
2020-09-18 16:25:25 +02:00
bors
7402a39447
Auto merge of #76244 - vandenheuvel:remove__paramenv__def_id, r=nikomatsakis
...
Removing the `def_id` field from hot `ParamEnv` to make it smaller
This PR addresses https://github.com/rust-lang/rust/issues/74865 .
2020-09-13 16:28:22 +00:00
Bram van den Heuvel
7dad29d686
Remove def_id field from ParamEnv
2020-09-09 10:14:31 +02:00
Bastian Kauschke
c81935e6df
make ConstEvaluatable more strict
2020-09-08 16:39:12 +02:00
mark
9e5f7d5631
mv compiler to compiler/
2020-08-30 18:45:07 +03:00