-
Notifications
You must be signed in to change notification settings - Fork 12.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
miscellaneous type system improvements #121359
Conversation
Type relation code was changed Some changes occurred to the core trait solver cc @rust-lang/initiative-trait-system-refactor |
)?; | ||
} | ||
|
||
Ok(()) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
fixes a fixme
}; | ||
self.in_alias = is_nested_alias; | ||
result | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
extracts the alias code into a separate method. generally useful as it's quite involved and also part of #119106
// keep the projection unnormalized. This is the case for projections | ||
// with a `T: Trait` where-clause and opaque types outside of the defining | ||
// scope. | ||
let result = if infcx.predicate_may_hold(&obligation) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
by using AliasRelate
rigid projections don't result in errors anymore
mod inherent; | ||
mod opaques; | ||
mod opaque_types; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
match the name for all other opaque types files in rustc
0dc5930
to
5fb67e2
Compare
@bors r+ |
Rollup of 8 pull requests Successful merges: - rust-lang#121044 (Support async trait bounds in macros) - rust-lang#121175 (match lowering: test one or pattern at a time) - rust-lang#121340 (bootstrap: apply most of clippy's suggestions) - rust-lang#121347 (compiletest: support auxiliaries with auxiliaries) - rust-lang#121359 (miscellaneous type system improvements) - rust-lang#121366 (Remove `diagnostic_builder.rs`) - rust-lang#121379 (Remove an `unchecked_error_guaranteed` call.) - rust-lang#121396 (make it possible for outside crates to inspect a mir::ConstValue with the interpreter) r? `@ghost` `@rustbot` modify labels: rollup
Rollup merge of rust-lang#121359 - lcnr:typesystem-cleanup, r=compiler-errors miscellaneous type system improvements see review comments for rationale r? `@compiler-errors`
see review comments for rationale
r? @compiler-errors