about summary refs log tree commit diff
path: root/compiler/rustc_ty_utils/src/ty.rs
AgeCommit message (Collapse)AuthorLines
2025-07-01Remove support for dyn*Michael Goulet-4/+2
2025-06-26Change const trait bound syntax from ~const to [const]Oli Scherer-1/+1
2025-06-16hir_analysis: add `{Meta,Pointee}Sized` boundsDavid Wood-1/+1
Opting-out of `Sized` with `?Sized` is now equivalent to adding a `MetaSized` bound, and adding a `MetaSized` or `PointeeSized` bound is equivalent to removing the default `Sized` bound - this commit implements this change in `rustc_hir_analysis::hir_ty_lowering`. `MetaSized` is also added as a supertrait of all traits, as this is necessary to preserve backwards compatibility. Unfortunately, non-global where clauses being preferred over item bounds (where `PointeeSized` bounds would be proven) - which can result in errors when a `PointeeSized` supertrait/bound/predicate is added to some items. Rather than `PointeeSized` being a bound on everything, it can be the absence of a bound on everything, as `?Sized` was.
2025-06-16trait_sel: `{Meta,Pointee}Sized` on `?Sized` typesDavid Wood-30/+52
Expand the automatic implementation of `MetaSized` and `PointeeSized` so that it is also implemented on non-`Sized` types, just not `ty::Foreign` (extern type).
2025-06-13TypeVisiting binders no longer requires TypeFolding its interiorMichael Goulet-3/+2
2025-06-10Dont unwrap and re-wrap typing envsMichael Goulet-5/+3
2025-06-08Dont make ObligationCtxts with diagnostics unnecessarilyMichael Goulet-1/+1
2025-06-05Replace some `Option<Span>` with `Span` and use DUMMY_SP instead of NoneOli Scherer-1/+1
2025-05-27Rename unpack to kindMichael Goulet-1/+1
2025-05-07Require T: TypeFoldable in Binder<T> visitMichael Goulet-2/+3
2025-04-09Use a query rather than recomputing the tail repeatedlyMichael Goulet-0/+57
2025-03-15Stop relying on rustc_type_ir in non-type-system cratesMichael Goulet-25/+25
2025-03-15Squash fold into tyMichael Goulet-2/+3
2025-03-09Rollup merge of #136968 - oli-obk:bye-bye, r=compiler-errorsMatthias Krüger-56/+2
Turn order dependent trait objects future incompat warning into a hard error fixes #56484 r? ``@ghost`` will FCP when we have a crater result
2025-02-28Fix sized constraint for unsafe binderMichael Goulet-3/+6
2025-02-20Turn order dependent trait objects future incompat warning into a hard errorOli Scherer-56/+2
2025-01-11rename `BitSet` to `DenseBitSet`Rémy Rakic-4/+4
This should make it clearer that this bitset is dense, with the advantages and disadvantages that it entails.
2024-12-22Begin to implement type system layer of unsafe bindersMichael Goulet-0/+2
2024-11-28uplift fold_regions to rustc_type_irlcnr-1/+2
2024-11-23no more Reveal :(lcnr-5/+6
2024-11-21Stop being so bail-y in candidate assemblyMichael Goulet-5/+1
2024-11-04ty::KContainer -> ty::AssocItemContainer::KMichael Goulet-1/+1
2024-10-30Merge HostPolarity and BoundConstnessMichael Goulet-1/+1
2024-10-24Be better at enforcing that const_conditions is only called on const itemsMichael Goulet-6/+7
2024-10-24Implement const effect predicate in new solverMichael Goulet-0/+9
2024-09-22Reformat using the new identifier sorting from rustfmtMichael Goulet-2/+2
2024-07-29Reformat `use` declarations.Nicholas Nethercote-2/+4
The previous commit updated `rustfmt.toml` appropriately. This commit is the outcome of running `x fmt --all` with the new formatting options.
2024-05-26Give EarlyBinder a tcx parameterMichael Goulet-2/+2
We are gonna need it to uplift EarlyBinder
2024-05-23Remove `#[macro_use] extern crate tracing` from `rustc_ty_utils`.Nicholas Nethercote-0/+1
2024-05-16Rename ToPredicate for UpcastMichael Goulet-2/+2
2024-05-13Auto merge of #125076 - compiler-errors:alias-term, r=lcnrbors-1/+1
Split out `ty::AliasTerm` from `ty::AliasTy` Splitting out `AliasTerm` (for use in project and normalizes goals) and `AliasTy` (for use in `ty::Alias`) r? lcnr
2024-05-13split out AliasTy -> AliasTermMichael Goulet-1/+1
2024-05-13Remove `extern crate rustc_middle` from `rustc_ty_utils`.Nicholas Nethercote-0/+1
2024-04-30Give items related to issue 33140 a more meaningful nameLeón Orell Valerian Liehr-15/+17
2024-04-16Fail candidate assembly for erroneous typesGurinder Singh-2/+2
Trait predicates for types which have errors may still evaluate to OK leading to downstream ICEs. Now we return a selection error for such types in candidate assembly and thereby prevent such issues
2024-04-08Actually create ranged int types in the type system.Oli Scherer-0/+2
2024-03-18address nitsLukas Markeffsky-7/+4
2024-03-14clean up ADT sized constraint computationLukas Markeffsky-70/+67
2024-03-14make `Representability::Infinite` carry `ErrorGuaranteed`Lukas Markeffsky-2/+2
2024-03-07Apply `EarlyBinder` only to `TraitRef` in `ImplTraitHeader`Yoshitomo Nakanishi-3/+2
2024-03-05Convert `TypeVisitor` and `DefIdVisitor` to use `VisitorResult`Jason Newcomb-7/+3
2024-02-12Stop calling `impl_polarity` when `impl_trait_ref` was also calledOli Scherer-3/+4
2024-02-06Add CoroutineClosure to TyKind, AggregateKind, UpvarArgsMichael Goulet-1/+3
2023-12-12Move some methods from `tcx.hir()` to `tcx`zetanumbers-2/+2
Renamings: - find -> opt_hir_node - get -> hir_node - find_by_def_id -> opt_hir_node_by_def_id - get_by_def_id -> hir_node_by_def_id Fix rebase changes using removed methods Use `tcx.hir_node_by_def_id()` whenever possible in compiler Fix clippy errors Fix compiler Apply suggestions from code review Co-authored-by: Vadim Petrochenkov <vadim.petrochenkov@gmail.com> Add FIXME for `tcx.hir()` returned type about its removal Simplify with with `tcx.hir_node_by_def_id`
2023-11-21Fix `clippy::needless_borrow` in the compilerNilstrieb-2/+2
`x clippy compiler -Aclippy::all -Wclippy::needless_borrow --fix`. Then I had to remove a few unnecessary parens and muts that were exposed now.
2023-11-20Reduce exposure of some items.Nicholas Nethercote-1/+1
2023-11-15Re-format code with new rustfmtMark Rousskov-5/+1
2023-11-13rename `ReLateBound` to `ReBound`lcnr-2/+2
other changes: - `Region::new_late_bound` -> `Region::new_bound` - `Region::is_late_bound` -> `Region::is_bound`
2023-10-20s/Generator/Coroutine/Oli Scherer-2/+2
2023-10-20Adjust importsMichael Goulet-1/+1