-
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
Test that opaque types can't have themselves as a hidden type with incompatible lifetimes #123782
Conversation
r? @aliemjay |
☔ The latest upstream changes (presumably #124914) made this pull request unmergeable. Please resolve the merge conflicts. |
r? types |
//! Test that we don't allow coercing an opaque type with a static | ||
//! lifetime to a free version of itself. While this kind of | ||
//! conversion is fine for rigid types, the hidden type behind an opaque | ||
//! type may |
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.
this comment is incomplete? 🤔
pls fix test comment then r=me |
@rustbot author (so it is out of my review queue hehe) |
…compatible lifetimes
@bors r=compiler-errors rollup |
…r-errors Test that opaque types can't have themselves as a hidden type with incompatible lifetimes fixes rust-lang#122876 This PR used to add extra logic to prevent those cases, but after rust-lang#113169 this is implicitly rejected, because such usages are not defining.
…r-errors Test that opaque types can't have themselves as a hidden type with incompatible lifetimes fixes rust-lang#122876 This PR used to add extra logic to prevent those cases, but after rust-lang#113169 this is implicitly rejected, because such usages are not defining.
…llaumeGomez Rollup of 9 pull requests Successful merges: - rust-lang#123782 (Test that opaque types can't have themselves as a hidden type with incompatible lifetimes) - rust-lang#124580 (Suggest removing unused tuple fields if they are the last fields) - rust-lang#125852 (improve tip for inaccessible traits) - rust-lang#126422 (Suggest using a standalone doctest for non-local impl defs) - rust-lang#126427 (Rewrite `intrinsic-unreachable`, `sepcomp-cci-copies`, `sepcomp-inlining` and `sepcomp-separate` `run-make` tests to rmake.rs) - rust-lang#126493 (safe transmute: support non-ZST, variantful, uninhabited enums) - rust-lang#126572 (override user defined channel when using precompiled rustc) - rust-lang#126615 (Add `rustc-ice*` to `.gitignore`) - rust-lang#126632 (Replace `move||` with `move ||`) Failed merges: - rust-lang#126558 (hir_typeck: be more conservative in making "note caller chooses ty param" note) r? `@ghost` `@rustbot` modify labels: rollup
…r-errors Test that opaque types can't have themselves as a hidden type with incompatible lifetimes fixes rust-lang#122876 This PR used to add extra logic to prevent those cases, but after rust-lang#113169 this is implicitly rejected, because such usages are not defining.
…r-errors Test that opaque types can't have themselves as a hidden type with incompatible lifetimes fixes rust-lang#122876 This PR used to add extra logic to prevent those cases, but after rust-lang#113169 this is implicitly rejected, because such usages are not defining.
Rollup of 7 pull requests Successful merges: - rust-lang#123782 (Test that opaque types can't have themselves as a hidden type with incompatible lifetimes) - rust-lang#124580 (Suggest removing unused tuple fields if they are the last fields) - rust-lang#125787 (Migrate `bin-emit-no-symbols` `run-make` test to `rmake`) - rust-lang#126553 (match lowering: expand or-candidates mixed with candidates above) - rust-lang#126594 (Make async drop code more consistent with regular drop code) - rust-lang#126654 (Make pretty printing for `f16` and `f128` consistent) - rust-lang#126656 (rustc_type_ir: Omit some struct fields from Debug output) r? `@ghost` `@rustbot` modify labels: rollup
Rollup merge of rust-lang#123782 - oli-obk:equal_tait_args, r=compiler-errors Test that opaque types can't have themselves as a hidden type with incompatible lifetimes fixes rust-lang#122876 This PR used to add extra logic to prevent those cases, but after rust-lang#113169 this is implicitly rejected, because such usages are not defining.
fixes #122876
This PR used to add extra logic to prevent those cases, but after #113169 this is implicitly rejected, because such usages are not defining.