-
Notifications
You must be signed in to change notification settings - Fork 13k
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
Improve DispatchFromDyn
and CoerceUnsized
impl validation
#135228
Improve DispatchFromDyn
and CoerceUnsized
impl validation
#135228
Conversation
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.
Thank you!
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.
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.
Yes, I don't think it's important to include both tests.
@bors r+ |
(feel free to r- and fix the typo before this lands if you care to 🤷♀️) |
hm yeah i'll update it @bors r- |
f47c58f
to
3cd7581
Compare
@bors r=BoxyUwU |
…atch, r=BoxyUwU Improve `DispatchFromDyn` and `CoerceUnsized` impl validation * Disallow arbitrary 1-ZST fields in `DispatchFromDyn` -- only `PhantomData`, and 1-ZSTs that mention no params (which is needed to support, e.g., the `Global` alloctor in `Box<T, U = Global>`). * Don't allow coercing between non-ZSTs to ZSTs (since the previous check wasn't actually checking the field tys were the same before checking the layout...) * Normalize the field before checking it's `PhantomData`. Fixes rust-lang#135215 Fixes rust-lang#135214 Fixes rust-lang#135220 r? `@BoxyUwU` or reassign
…atch, r=BoxyUwU Improve `DispatchFromDyn` and `CoerceUnsized` impl validation * Disallow arbitrary 1-ZST fields in `DispatchFromDyn` -- only `PhantomData`, and 1-ZSTs that mention no params (which is needed to support, e.g., the `Global` alloctor in `Box<T, U = Global>`). * Don't allow coercing between non-ZSTs to ZSTs (since the previous check wasn't actually checking the field tys were the same before checking the layout...) * Normalize the field before checking it's `PhantomData`. Fixes rust-lang#135215 Fixes rust-lang#135214 Fixes rust-lang#135220 r? ``@BoxyUwU`` or reassign
…iaskrgr Rollup of 7 pull requests Successful merges: - rust-lang#134940 (Make sure to scrape region constraints from deeply normalizing type outlives assumptions in borrowck) - rust-lang#135047 (Add gpu-kernel calling convention) - rust-lang#135228 (Improve `DispatchFromDyn` and `CoerceUnsized` impl validation) - rust-lang#135264 (Consider more erroneous layouts as `LayoutError::ReferencesError` to suppress spurious errors) - rust-lang#135302 (for purely return-type based searches, deprioritize clone-like functions) - rust-lang#135380 (Make sure we can produce `ConstArgHasWrongType` errors for valtree consts) - rust-lang#135425 (Do not consider traits that have unsatisfied const conditions to be conditionally const) r? `@ghost` `@rustbot` modify labels: rollup
…kingjubilee Rollup of 11 pull requests Successful merges: - rust-lang#134913 (bootstrap: do not rely on LIBRARY_PATH env variable) - rust-lang#134940 (Make sure to scrape region constraints from deeply normalizing type outlives assumptions in borrowck) - rust-lang#135228 (Improve `DispatchFromDyn` and `CoerceUnsized` impl validation) - rust-lang#135264 (Consider more erroneous layouts as `LayoutError::ReferencesError` to suppress spurious errors) - rust-lang#135302 (for purely return-type based searches, deprioritize clone-like functions) - rust-lang#135353 (re-add --disable-minification to rustdoc) - rust-lang#135380 (Make sure we can produce `ConstArgHasWrongType` errors for valtree consts) - rust-lang#135423 (Enforce syntactical stability of const traits in HIR) - rust-lang#135425 (Do not consider traits that have unsatisfied const conditions to be conditionally const) - rust-lang#135499 (fix underlining of hovered intra-doc links.) - rust-lang#135505 (Fix clippy lints in rustdoc) r? `@ghost` `@rustbot` modify labels: rollup
Rollup merge of rust-lang#135228 - compiler-errors:normalizes-ur-dispatch, r=BoxyUwU Improve `DispatchFromDyn` and `CoerceUnsized` impl validation * Disallow arbitrary 1-ZST fields in `DispatchFromDyn` -- only `PhantomData`, and 1-ZSTs that mention no params (which is needed to support, e.g., the `Global` alloctor in `Box<T, U = Global>`). * Don't allow coercing between non-ZSTs to ZSTs (since the previous check wasn't actually checking the field tys were the same before checking the layout...) * Normalize the field before checking it's `PhantomData`. Fixes rust-lang#135215 Fixes rust-lang#135214 Fixes rust-lang#135220 r? ```@BoxyUwU``` or reassign
DispatchFromDyn
-- onlyPhantomData
, and 1-ZSTs that mention no params (which is needed to support, e.g., theGlobal
alloctor inBox<T, U = Global>
).PhantomData
.Fixes #135215
Fixes #135214
Fixes #135220
r? @BoxyUwU or reassign