You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Auto merge of #3386 - he32:netbsd-32bit-fix, r=JohnTitor
NetBSD's mod.rs: fix cpuid_t definition.
...in particular for 32-bit CPUs / ports, such as 32-bit arm, i386, and powerpc.
In the C header files on NetBSD, this is defined as
typedef unsigned long cpuid_t;
and on ILP32 CPUs, that ends up being a 32-bit quantity. Defining this as a 64-bit type wrecks havoc on our 32-bit ports when e.g. _cpuset_isset() is used (as was introduced with rust 1.72.0), causing immediate SEGV due to NULL pointer de-reference, as observed in
rust-lang/rust#116665
So, instead, define it as ::c_ulong, and let the CPU-specific type definitions take care of the sizing.
0 commit comments