Fix some raw types in std to match what's in libc#43499
Fix some raw types in std to match what's in libc#43499dhduvall wants to merge 1 commit intorust-lang:masterfrom
Conversation
The pthread_t type, in particular, causes failures when building cargo 0.20.0 after changeset 8304e06 in the libc repo.
|
Most of those raw types are deliberately wrong per #31551. I think you can still make a case for |
|
@cuviper can you expound a bit on the "deliberately wrong" part? There's not enough reasoning in #31551 to explain why. Should rust itself no longer be using these at all? |
|
Those type definitions are all stable and can't be changed. |
|
They were never correct to begin with and this only affects Solaris. Surely they can be fixed since they're causing build problems for cargo. |
|
@binarycrusader see the comments in #41752. |
|
This is the error that prompted this fix: As best I can tell, there's no issue in the I could simply fix That use of a type from the |
|
The filesystem-related types are deliberately wrong mainly because LFS is messy. At least on Linux, there's just not a good way to have types that are truly FFI compatible. So the decision was widen all the But I don't feel too strongly about it, and I don't know the LFS story on Solaris. Fixing |
|
My recollection is that we deprecated these types for exactly this reason - we couldn't change them since they're stable. Is this an exception because Solaris isn't a tier 1 platform? |
|
Ah yeah it's true, I'd mostly be worried about just fixing |
|
@dhduvall would you like to change this to just fixing |
|
My git-fu is sad. I ended up opening #43597. |
The pthread_t type, in particular, causes failures when building cargo 0.20.0 after rust-lang/libc@8304e06b5.