De-abstract tagged ptr and make it covariant by BoxyUwU · Pull Request #135383 · rust-lang/rust
rustbot
added
S-waiting-on-review
labels
Jan 11, 2025
bors
added
S-waiting-on-bors
and removed S-waiting-on-review
Status: Awaiting review from the assignee but also interested parties.labels
Jan 12, 2025GuillaumeGomez added a commit to GuillaumeGomez/rust that referenced this pull request
Jan 12, 2025…rors De-abstract tagged ptr and make it covariant In rust-lang#135272 I needed to use a tagged ptr in `hir::TyKind` in order to not regress hir type sizes. Unfortunately the existing `CopyTaggedPtr` abstraction is insufficient as it makes the `'hir` lifetime invariant. I spent some time trying to keep existing functionality while making it covariant but in the end I realised that actually we dont use *any* of this code *anywhere* in rustc, so I've just removed everything and replaced it with a much less general abstraction that is suitable for what I need in rust-lang#135272. Idk if anyone has a preference for just keeping all the abstractions here in case anyone needs them in the future 🤷♀️
This was referenced
Jan 12, 2025bors added a commit to rust-lang-ci/rust that referenced this pull request
Jan 12, 2025…llaumeGomez Rollup of 7 pull requests Successful merges: - rust-lang#135348 (rustdoc-json: Include items in stripped modules in `Crate::paths`.) - rust-lang#135365 (Update the explanation for why we use box_new in vec!) - rust-lang#135383 (De-abstract tagged ptr and make it covariant) - rust-lang#135401 (Remove some empty expected files to fix blessing) - rust-lang#135406 (Update unstable lint docs to include required feature attributes) - rust-lang#135407 (Deny various clippy lints) - rust-lang#135411 (run_make_support: add `#![warn(unreachable_pub)]`) r? `@ghost` `@rustbot` modify labels: rollup
rust-timer added a commit to rust-lang-ci/rust that referenced this pull request
Jan 13, 2025Rollup merge of rust-lang#135383 - BoxyUwU:cov_tag_ptr, r=compiler-errors De-abstract tagged ptr and make it covariant In rust-lang#135272 I needed to use a tagged ptr in `hir::TyKind` in order to not regress hir type sizes. Unfortunately the existing `CopyTaggedPtr` abstraction is insufficient as it makes the `'hir` lifetime invariant. I spent some time trying to keep existing functionality while making it covariant but in the end I realised that actually we dont use *any* of this code *anywhere* in rustc, so I've just removed everything and replaced it with a much less general abstraction that is suitable for what I need in rust-lang#135272. Idk if anyone has a preference for just keeping all the abstractions here in case anyone needs them in the future 🤷♀️
github-actions bot pushed a commit to tautschnig/verify-rust-std that referenced this pull request
Mar 11, 2025…llaumeGomez Rollup of 7 pull requests Successful merges: - rust-lang#135348 (rustdoc-json: Include items in stripped modules in `Crate::paths`.) - rust-lang#135365 (Update the explanation for why we use box_new in vec!) - rust-lang#135383 (De-abstract tagged ptr and make it covariant) - rust-lang#135401 (Remove some empty expected files to fix blessing) - rust-lang#135406 (Update unstable lint docs to include required feature attributes) - rust-lang#135407 (Deny various clippy lints) - rust-lang#135411 (run_make_support: add `#![warn(unreachable_pub)]`) r? `@ghost` `@rustbot` modify labels: rollup
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters