diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index bd3fe9a262a60..bd37a2fc9a99b 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -174,11 +174,11 @@ jobs: test_tier2: name: Test tier2 - needs: [test_tier1, style_check] + # needs: [test_tier1, style_check] runs-on: ubuntu-24.04 strategy: - fail-fast: true - max-parallel: 12 + fail-fast: false + max-parallel: 30 matrix: target: # FIXME(sparc): this takes much longer to run than any other job, put @@ -279,10 +279,10 @@ jobs: test_tier2_vm: name: Test tier2 VM - needs: [test_tier1, style_check] + # needs: [test_tier1, style_check] runs-on: ubuntu-latest strategy: - fail-fast: true + fail-fast: false matrix: target: - x86_64-pc-solaris diff --git a/ci/docker/aarch64-linux-android/Dockerfile b/ci/docker/aarch64-linux-android/Dockerfile index dfd63718a9d0d..16f6d7dfce4e8 100644 --- a/ci/docker/aarch64-linux-android/Dockerfile +++ b/ci/docker/aarch64-linux-android/Dockerfile @@ -1,4 +1,4 @@ -FROM ubuntu:24.10 +FROM ubuntu:25.10 RUN dpkg --add-architecture i386 RUN apt-get update diff --git a/ci/docker/aarch64-unknown-linux-gnu/Dockerfile b/ci/docker/aarch64-unknown-linux-gnu/Dockerfile index 00569ddf22c9b..f228d93500d21 100644 --- a/ci/docker/aarch64-unknown-linux-gnu/Dockerfile +++ b/ci/docker/aarch64-unknown-linux-gnu/Dockerfile @@ -1,4 +1,4 @@ -FROM ubuntu:24.10 +FROM ubuntu:25.10 RUN apt-get update && apt-get install -y --no-install-recommends \ gcc libc6-dev ca-certificates \ diff --git a/ci/docker/aarch64-unknown-linux-musl/Dockerfile b/ci/docker/aarch64-unknown-linux-musl/Dockerfile index 053ed837b2e7c..99828a5b65a21 100644 --- a/ci/docker/aarch64-unknown-linux-musl/Dockerfile +++ b/ci/docker/aarch64-unknown-linux-musl/Dockerfile @@ -1,4 +1,4 @@ -FROM ubuntu:24.10 +FROM ubuntu:25.10 RUN apt-get update && apt-get install -y --no-install-recommends \ gcc make libc6-dev git curl ca-certificates \ diff --git a/ci/docker/arm-linux-androideabi/Dockerfile b/ci/docker/arm-linux-androideabi/Dockerfile index 82f89f48e915c..f7c320547dc5a 100644 --- a/ci/docker/arm-linux-androideabi/Dockerfile +++ b/ci/docker/arm-linux-androideabi/Dockerfile @@ -1,4 +1,4 @@ -FROM ubuntu:24.10 +FROM ubuntu:25.10 RUN dpkg --add-architecture i386 RUN apt-get update diff --git a/ci/docker/asmjs-unknown-emscripten/Dockerfile b/ci/docker/asmjs-unknown-emscripten/Dockerfile index 085e45ff35ee6..d38235104e5f9 100644 --- a/ci/docker/asmjs-unknown-emscripten/Dockerfile +++ b/ci/docker/asmjs-unknown-emscripten/Dockerfile @@ -1,4 +1,4 @@ -FROM ubuntu:24.10 +FROM ubuntu:25.10 # This is a workaround to avoid the interaction with tzdata. ENV DEBIAN_FRONTEND=noninteractive @@ -12,7 +12,6 @@ RUN apt-get install -y --no-install-recommends \ gcc \ git \ libc6-dev \ - libxml2 \ python3 \ xz-utils \ bzip2 diff --git a/ci/docker/i686-linux-android/Dockerfile b/ci/docker/i686-linux-android/Dockerfile index 8a159cd0502b5..2715334708d41 100644 --- a/ci/docker/i686-linux-android/Dockerfile +++ b/ci/docker/i686-linux-android/Dockerfile @@ -1,4 +1,4 @@ -FROM ubuntu:24.10 +FROM ubuntu:25.10 RUN dpkg --add-architecture i386 RUN apt-get update diff --git a/ci/docker/loongarch64-unknown-linux-gnu/Dockerfile b/ci/docker/loongarch64-unknown-linux-gnu/Dockerfile index 16b4cf4bfd34e..d99706888cf54 100644 --- a/ci/docker/loongarch64-unknown-linux-gnu/Dockerfile +++ b/ci/docker/loongarch64-unknown-linux-gnu/Dockerfile @@ -1,4 +1,4 @@ -FROM ubuntu:24.10 +FROM ubuntu:25.10 RUN apt-get update && apt-get install -y --no-install-recommends \ gcc libc6-dev qemu-user ca-certificates \ diff --git a/ci/docker/loongarch64-unknown-linux-musl/Dockerfile b/ci/docker/loongarch64-unknown-linux-musl/Dockerfile index 0b3ff4da34ba0..2a55b29a8ffcb 100644 --- a/ci/docker/loongarch64-unknown-linux-musl/Dockerfile +++ b/ci/docker/loongarch64-unknown-linux-musl/Dockerfile @@ -1,4 +1,4 @@ -FROM ubuntu:24.10 +FROM ubuntu:25.10 RUN apt-get update && apt-get install -y --no-install-recommends \ ca-certificates curl gcc gcc-14-loongarch64-linux-gnu git libc6-dev \ diff --git a/ci/docker/powerpc64-unknown-linux-gnu/Dockerfile b/ci/docker/powerpc64-unknown-linux-gnu/Dockerfile index 76d8471a63aac..abdd6eb7c370c 100644 --- a/ci/docker/powerpc64-unknown-linux-gnu/Dockerfile +++ b/ci/docker/powerpc64-unknown-linux-gnu/Dockerfile @@ -1,4 +1,4 @@ -FROM ubuntu:24.10 +FROM ubuntu:25.10 RUN apt-get update && apt-get install -y --no-install-recommends \ gcc libc6-dev qemu-user ca-certificates \ diff --git a/ci/docker/powerpc64le-unknown-linux-gnu/Dockerfile b/ci/docker/powerpc64le-unknown-linux-gnu/Dockerfile index c4c6af25b8684..a7d2ce30d96df 100644 --- a/ci/docker/powerpc64le-unknown-linux-gnu/Dockerfile +++ b/ci/docker/powerpc64le-unknown-linux-gnu/Dockerfile @@ -1,4 +1,4 @@ -FROM ubuntu:24.10 +FROM ubuntu:25.10 RUN apt-get update && apt-get install -y --no-install-recommends \ gcc libc6-dev qemu-user ca-certificates \ diff --git a/ci/docker/powerpc64le-unknown-linux-musl/Dockerfile b/ci/docker/powerpc64le-unknown-linux-musl/Dockerfile index b25f284eddf7a..b7d3c13fa02bf 100644 --- a/ci/docker/powerpc64le-unknown-linux-musl/Dockerfile +++ b/ci/docker/powerpc64le-unknown-linux-musl/Dockerfile @@ -1,4 +1,4 @@ -FROM ubuntu:24.10 +FROM ubuntu:25.10 RUN apt-get update && apt-get install -y --no-install-recommends \ gcc make libc6-dev git curl ca-certificates \ diff --git a/ci/docker/riscv64gc-unknown-linux-gnu/Dockerfile b/ci/docker/riscv64gc-unknown-linux-gnu/Dockerfile index 0624e2c102055..c4b562aae1970 100644 --- a/ci/docker/riscv64gc-unknown-linux-gnu/Dockerfile +++ b/ci/docker/riscv64gc-unknown-linux-gnu/Dockerfile @@ -1,4 +1,4 @@ -FROM ubuntu:24.10 +FROM ubuntu:25.10 RUN apt-get update && apt-get install -y --no-install-recommends \ gcc libc6-dev qemu-user ca-certificates \ diff --git a/ci/docker/s390x-unknown-linux-gnu/Dockerfile b/ci/docker/s390x-unknown-linux-gnu/Dockerfile index dde2ef24254fc..0201fc48d7398 100644 --- a/ci/docker/s390x-unknown-linux-gnu/Dockerfile +++ b/ci/docker/s390x-unknown-linux-gnu/Dockerfile @@ -1,4 +1,4 @@ -FROM ubuntu:24.10 +FROM ubuntu:25.10 RUN apt-get update && apt-get install -y --no-install-recommends \ curl ca-certificates \ diff --git a/ci/docker/s390x-unknown-linux-musl/Dockerfile b/ci/docker/s390x-unknown-linux-musl/Dockerfile index 2d4ea759c5fbf..c1f69b1a3097d 100644 --- a/ci/docker/s390x-unknown-linux-musl/Dockerfile +++ b/ci/docker/s390x-unknown-linux-musl/Dockerfile @@ -1,4 +1,4 @@ -FROM ubuntu:24.10 +FROM ubuntu:25.10 RUN apt-get update && apt-get install -y --no-install-recommends \ curl ca-certificates \ diff --git a/ci/docker/sparc64-unknown-linux-gnu/Dockerfile b/ci/docker/sparc64-unknown-linux-gnu/Dockerfile index 645cc3362ab93..4f88fda69bd12 100644 --- a/ci/docker/sparc64-unknown-linux-gnu/Dockerfile +++ b/ci/docker/sparc64-unknown-linux-gnu/Dockerfile @@ -1,10 +1,10 @@ -FROM ubuntu:24.10 +FROM ubuntu:25.10 RUN apt-get update && apt-get install -y --no-install-recommends \ curl ca-certificates \ gcc libc6-dev \ gcc-sparc64-linux-gnu libc6-dev-sparc64-cross \ - qemu-system-sparc64 openbios-sparc seabios ipxe-qemu \ + qemu-system-sparc64 seabios ipxe-qemu \ p7zip-full cpio linux-libc-dev-sparc64-cross qemu-user COPY linux-sparc64.sh / diff --git a/ci/docker/wasm32-unknown-emscripten/Dockerfile b/ci/docker/wasm32-unknown-emscripten/Dockerfile index 0f9cb85dc30e8..6964f736593a3 100644 --- a/ci/docker/wasm32-unknown-emscripten/Dockerfile +++ b/ci/docker/wasm32-unknown-emscripten/Dockerfile @@ -1,4 +1,4 @@ -FROM ubuntu:24.10 +FROM ubuntu:25.10 # This is a workaround to avoid the interaction with tzdata. ENV DEBIAN_FRONTEND=noninteractive @@ -15,7 +15,6 @@ RUN apt-get install -y --no-install-recommends \ gcc \ git \ libc6-dev \ - libxml2 \ python3 \ cmake \ sudo \ diff --git a/ci/docker/wasm32-wasip1/Dockerfile b/ci/docker/wasm32-wasip1/Dockerfile index e85b27ff82099..ec3e0b6d782cd 100644 --- a/ci/docker/wasm32-wasip1/Dockerfile +++ b/ci/docker/wasm32-wasip1/Dockerfile @@ -1,4 +1,4 @@ -FROM ubuntu:24.10 +FROM ubuntu:25.10 COPY wasi.sh / RUN /wasi.sh diff --git a/ci/docker/wasm32-wasip2/Dockerfile b/ci/docker/wasm32-wasip2/Dockerfile index be6bff3a843c5..364d89147a3a9 100644 --- a/ci/docker/wasm32-wasip2/Dockerfile +++ b/ci/docker/wasm32-wasip2/Dockerfile @@ -1,4 +1,4 @@ -FROM ubuntu:24.10 +FROM ubuntu:25.10 COPY wasi.sh / RUN /wasi.sh diff --git a/ci/docker/x86_64-linux-android/Dockerfile b/ci/docker/x86_64-linux-android/Dockerfile index 3bf350820019f..17039d2042d8a 100644 --- a/ci/docker/x86_64-linux-android/Dockerfile +++ b/ci/docker/x86_64-linux-android/Dockerfile @@ -1,4 +1,4 @@ -FROM ubuntu:24.10 +FROM ubuntu:25.10 RUN apt-get update && \ apt-get install -y --no-install-recommends \ diff --git a/ci/docker/x86_64-unknown-linux-gnu/Dockerfile b/ci/docker/x86_64-unknown-linux-gnu/Dockerfile index 0166bc9de4d2b..2884d3f2570cf 100644 --- a/ci/docker/x86_64-unknown-linux-gnu/Dockerfile +++ b/ci/docker/x86_64-unknown-linux-gnu/Dockerfile @@ -1,8 +1,8 @@ -FROM ubuntu:24.10 +FROM ubuntu:25.10 RUN apt-get update RUN apt-get install -y --no-install-recommends \ - gcc g++ libc6-dev ca-certificates linux-headers-generic + gcc g++ libc6-dev ca-certificates linux-headers-generic RUN apt search linux-headers RUN ls /usr/src diff --git a/ci/docker/x86_64-unknown-linux-gnux32/Dockerfile b/ci/docker/x86_64-unknown-linux-gnux32/Dockerfile index f50af741db564..1ae3eff3e4dfa 100644 --- a/ci/docker/x86_64-unknown-linux-gnux32/Dockerfile +++ b/ci/docker/x86_64-unknown-linux-gnux32/Dockerfile @@ -1,4 +1,4 @@ -FROM ubuntu:24.10 +FROM ubuntu:25.10 RUN apt-get update RUN apt-get install -y --no-install-recommends \ diff --git a/ci/docker/x86_64-unknown-linux-musl/Dockerfile b/ci/docker/x86_64-unknown-linux-musl/Dockerfile index 5c1b4b177880c..19b370c6cc8ab 100644 --- a/ci/docker/x86_64-unknown-linux-musl/Dockerfile +++ b/ci/docker/x86_64-unknown-linux-musl/Dockerfile @@ -1,4 +1,4 @@ -FROM ubuntu:24.10 +FROM ubuntu:25.10 RUN apt-get update RUN apt-get install -y --no-install-recommends \ diff --git a/ci/install-musl.sh b/ci/install-musl.sh index f5516553707d2..03187fcdb2319 100755 --- a/ci/install-musl.sh +++ b/ci/install-musl.sh @@ -20,6 +20,13 @@ musl="musl-${musl_version}" curl --retry 5 "https://www.musl-libc.org/releases/${musl}.tar.gz" | tar xzf - cd "$musl" + +if [ "$musl_version" = "1.1.24" ]; then + curl --retry 5 \ + https://github.com/kraj/musl/commit/725e17ed6dff4d0cd22487bb64470881e86a92e7.patch | + patch +fi + case ${1} in aarch64) musl_arch=aarch64 diff --git a/ci/linux-sparc64.sh b/ci/linux-sparc64.sh index b272c42edd9aa..35bd358586e98 100755 --- a/ci/linux-sparc64.sh +++ b/ci/linux-sparc64.sh @@ -5,7 +5,7 @@ set -eux mkdir -m 777 /qemu cd /qemu -curl --retry 5 -LO https://cdimage.debian.org/cdimage/ports/snapshots/2024-12-24/debian-12.0.0-sparc64-NETINST-1.iso +curl --retry 5 -LO https://cdimage.debian.org/cdimage/ports/snapshots/2025-08-29/debian-12.0.0-sparc64-NETINST-1.iso 7z e debian-12.0.0-sparc64-NETINST-1.iso install/initrd.gz 7z e debian-12.0.0-sparc64-NETINST-1.iso install/vmlinux mv vmlinux kernel diff --git a/libc-test/build.rs b/libc-test/build.rs index 3146ce669b843..c412709655c4c 100644 --- a/libc-test/build.rs +++ b/libc-test/build.rs @@ -4095,6 +4095,49 @@ fn test_linux(target: &str) { cfg.skip_const(move |constant| { let name = constant.ident(); + if gnu { + // FIXME(#4692): these values changed in glibc 2.42. We can't update unless we also + // switch to the new symbols. + let baud_mismatch = [ + "SW_MAX", + "SW_CNT", + "EXTA", + "EXTB", + "B50", + "B75", + "B110", + "B134", + "B150", + "B200", + "B300", + "B600", + "B1200", + "B1800", + "B2400", + "B4800", + "B9600", + "B19200", + "B38400", + "B57600", + "B115200", + "B230400", + "B460800", + "B500000", + "B576000", + "B921600", + "B1000000", + "B1152000", + "B1500000", + "B2000000", + "B2500000", + "B3000000", + "B3500000", + "B4000000" + ]; + if baud_mismatch.contains(&name) { + return true; + } + } if !gnu { // Skip definitions from the kernel on non-glibc Linux targets. // They're libc-independent, so we only need to check them on one diff --git a/src/fuchsia/mod.rs b/src/fuchsia/mod.rs index 6aa1dae11215a..49faf1ae7da5c 100644 --- a/src/fuchsia/mod.rs +++ b/src/fuchsia/mod.rs @@ -2356,7 +2356,7 @@ pub const ST_NOATIME: c_ulong = 1024; pub const ST_NODIRATIME: c_ulong = 2048; pub const RTLD_NEXT: *mut c_void = -1i64 as *mut c_void; -pub const RTLD_DEFAULT: *mut c_void = 0i64 as *mut c_void; +pub const RTLD_DEFAULT: *mut c_void = ptr::null_mut(); pub const RTLD_NODELETE: c_int = 0x1000; pub const RTLD_NOW: c_int = 0x2; @@ -2500,7 +2500,7 @@ pub const EFD_SEMAPHORE: c_int = 0x1; pub const LOG_NFACILITIES: c_int = 24; -pub const SEM_FAILED: *mut crate::sem_t = 0 as *mut sem_t; +pub const SEM_FAILED: *mut crate::sem_t = ptr::null_mut(); pub const RB_AUTOBOOT: c_int = 0x01234567u32 as i32; pub const RB_HALT_SYSTEM: c_int = 0xcdef0123u32 as i32; diff --git a/src/macros.rs b/src/macros.rs index afa8b23ed00f0..bc3f750a5b16c 100644 --- a/src/macros.rs +++ b/src/macros.rs @@ -82,7 +82,7 @@ macro_rules! prelude { #[allow(unused_imports)] pub(crate) use ::core::prelude::v1::derive; #[allow(unused_imports)] - pub(crate) use ::core::{fmt, hash, iter, mem}; + pub(crate) use ::core::{fmt, hash, iter, mem, ptr}; #[allow(unused_imports)] pub(crate) use mem::{align_of, align_of_val, size_of, size_of_val}; diff --git a/src/unix/bsd/freebsdlike/mod.rs b/src/unix/bsd/freebsdlike/mod.rs index 8ef551d52ecbb..10382e3df676f 100644 --- a/src/unix/bsd/freebsdlike/mod.rs +++ b/src/unix/bsd/freebsdlike/mod.rs @@ -1197,9 +1197,9 @@ pub const _SC_RAW_SOCKETS: c_int = 119; pub const _SC_SYMLOOP_MAX: c_int = 120; pub const _SC_PHYS_PAGES: c_int = 121; -pub const PTHREAD_MUTEX_INITIALIZER: pthread_mutex_t = 0 as *mut _; -pub const PTHREAD_COND_INITIALIZER: pthread_cond_t = 0 as *mut _; -pub const PTHREAD_RWLOCK_INITIALIZER: pthread_rwlock_t = 0 as *mut _; +pub const PTHREAD_MUTEX_INITIALIZER: pthread_mutex_t = ptr::null_mut(); +pub const PTHREAD_COND_INITIALIZER: pthread_cond_t = ptr::null_mut(); +pub const PTHREAD_RWLOCK_INITIALIZER: pthread_rwlock_t = ptr::null_mut(); pub const PTHREAD_MUTEX_ERRORCHECK: c_int = 1; pub const PTHREAD_MUTEX_RECURSIVE: c_int = 2; pub const PTHREAD_MUTEX_NORMAL: c_int = 3; @@ -1331,7 +1331,7 @@ pub const B230400: speed_t = 230400; pub const EXTA: speed_t = 19200; pub const EXTB: speed_t = 38400; -pub const SEM_FAILED: *mut sem_t = 0 as *mut sem_t; +pub const SEM_FAILED: *mut sem_t = ptr::null_mut(); pub const CRTSCTS: crate::tcflag_t = 0x00030000; pub const CCTS_OFLOW: crate::tcflag_t = 0x00010000; diff --git a/src/unix/bsd/netbsdlike/mod.rs b/src/unix/bsd/netbsdlike/mod.rs index 4b66584b8e562..fb94b797b0320 100644 --- a/src/unix/bsd/netbsdlike/mod.rs +++ b/src/unix/bsd/netbsdlike/mod.rs @@ -650,7 +650,7 @@ pub const B230400: speed_t = 230400; pub const EXTA: speed_t = 19200; pub const EXTB: speed_t = 38400; -pub const SEM_FAILED: *mut sem_t = 0 as *mut sem_t; +pub const SEM_FAILED: *mut sem_t = ptr::null_mut(); pub const CRTSCTS: crate::tcflag_t = 0x00010000; pub const CRTS_IFLOW: crate::tcflag_t = CRTSCTS; diff --git a/src/unix/bsd/netbsdlike/openbsd/mod.rs b/src/unix/bsd/netbsdlike/openbsd/mod.rs index a50c405476196..7276bb54fe136 100644 --- a/src/unix/bsd/netbsdlike/openbsd/mod.rs +++ b/src/unix/bsd/netbsdlike/openbsd/mod.rs @@ -1321,9 +1321,9 @@ pub const SCHED_RR: c_int = 3; pub const ST_NOSUID: c_ulong = 2; -pub const PTHREAD_MUTEX_INITIALIZER: pthread_mutex_t = 0 as *mut _; -pub const PTHREAD_COND_INITIALIZER: pthread_cond_t = 0 as *mut _; -pub const PTHREAD_RWLOCK_INITIALIZER: pthread_rwlock_t = 0 as *mut _; +pub const PTHREAD_MUTEX_INITIALIZER: pthread_mutex_t = ptr::null_mut(); +pub const PTHREAD_COND_INITIALIZER: pthread_cond_t = ptr::null_mut(); +pub const PTHREAD_RWLOCK_INITIALIZER: pthread_rwlock_t = ptr::null_mut(); pub const PTHREAD_MUTEX_ERRORCHECK: c_int = 1; pub const PTHREAD_MUTEX_RECURSIVE: c_int = 2; diff --git a/src/unix/cygwin/mod.rs b/src/unix/cygwin/mod.rs index fde2c18936e71..4263d92671dd2 100644 --- a/src/unix/cygwin/mod.rs +++ b/src/unix/cygwin/mod.rs @@ -1018,7 +1018,7 @@ pub const NGROUPS_MAX: c_int = 1024; pub const FORK_RELOAD: c_int = 1; pub const FORK_NO_RELOAD: c_int = 0; -pub const RTLD_DEFAULT: *mut c_void = 0isize as *mut c_void; +pub const RTLD_DEFAULT: *mut c_void = ptr::null_mut(); pub const RTLD_LOCAL: c_int = 0; pub const RTLD_LAZY: c_int = 1; pub const RTLD_NOW: c_int = 2; diff --git a/src/unix/haiku/mod.rs b/src/unix/haiku/mod.rs index 5033fe066792d..22c61ba1a6396 100644 --- a/src/unix/haiku/mod.rs +++ b/src/unix/haiku/mod.rs @@ -1059,7 +1059,7 @@ pub const FD_SETSIZE: c_int = 1024; pub const RTLD_LOCAL: c_int = 0x0; pub const RTLD_NOW: c_int = 0x1; pub const RTLD_GLOBAL: c_int = 0x2; -pub const RTLD_DEFAULT: *mut c_void = 0isize as *mut c_void; +pub const RTLD_DEFAULT: *mut c_void = ptr::null_mut(); pub const BUFSIZ: c_uint = 8192; pub const FILENAME_MAX: c_uint = 256; diff --git a/src/unix/hurd/mod.rs b/src/unix/hurd/mod.rs index 1bd2661e3dfa9..e86d21df41bd2 100644 --- a/src/unix/hurd/mod.rs +++ b/src/unix/hurd/mod.rs @@ -1791,7 +1791,7 @@ pub const RB_DEBUGGER: c_int = 0x1000; // semaphore.h pub const __SIZEOF_SEM_T: usize = 20; -pub const SEM_FAILED: *mut crate::sem_t = 0 as *mut sem_t; +pub const SEM_FAILED: *mut crate::sem_t = ptr::null_mut(); // termios.h pub const IGNBRK: crate::tcflag_t = 1; @@ -1962,7 +1962,7 @@ pub const CTIME: u8 = 0; pub const CBRK: u8 = 0u8; // dlfcn.h -pub const RTLD_DEFAULT: *mut c_void = 0i64 as *mut c_void; +pub const RTLD_DEFAULT: *mut c_void = ptr::null_mut(); pub const RTLD_NEXT: *mut c_void = -1i64 as *mut c_void; pub const RTLD_LAZY: c_int = 1; pub const RTLD_NOW: c_int = 2; diff --git a/src/unix/linux_like/android/b64/mod.rs b/src/unix/linux_like/android/b64/mod.rs index e16c251a6d519..46ceed4c6dcba 100644 --- a/src/unix/linux_like/android/b64/mod.rs +++ b/src/unix/linux_like/android/b64/mod.rs @@ -225,7 +225,7 @@ pub const SA_SIGINFO: c_int = 0x00000004; pub const RTLD_GLOBAL: c_int = 0x00100; pub const RTLD_NOW: c_int = 2; -pub const RTLD_DEFAULT: *mut c_void = 0i64 as *mut c_void; +pub const RTLD_DEFAULT: *mut c_void = ptr::null_mut(); pub const PTHREAD_MUTEX_INITIALIZER: pthread_mutex_t = pthread_mutex_t { value: 0, diff --git a/src/unix/linux_like/android/mod.rs b/src/unix/linux_like/android/mod.rs index 8ca47b2a24ea1..cd0a216d4f072 100644 --- a/src/unix/linux_like/android/mod.rs +++ b/src/unix/linux_like/android/mod.rs @@ -1517,7 +1517,7 @@ pub const ST_RELATIME: c_ulong = 4096; pub const RTLD_NOLOAD: c_int = 0x4; pub const RTLD_NODELETE: c_int = 0x1000; -pub const SEM_FAILED: *mut sem_t = 0 as *mut sem_t; +pub const SEM_FAILED: *mut sem_t = ptr::null_mut(); pub const AI_PASSIVE: c_int = 0x00000001; pub const AI_CANONNAME: c_int = 0x00000002; diff --git a/src/unix/linux_like/emscripten/mod.rs b/src/unix/linux_like/emscripten/mod.rs index 7a43670536e4f..10b0893565a03 100644 --- a/src/unix/linux_like/emscripten/mod.rs +++ b/src/unix/linux_like/emscripten/mod.rs @@ -772,7 +772,7 @@ pub const ST_NOATIME: c_ulong = 1024; pub const ST_NODIRATIME: c_ulong = 2048; pub const RTLD_NEXT: *mut c_void = -1i64 as *mut c_void; -pub const RTLD_DEFAULT: *mut c_void = 0i64 as *mut c_void; +pub const RTLD_DEFAULT: *mut c_void = ptr::null_mut(); pub const RTLD_NODELETE: c_int = 0x1000; pub const RTLD_NOW: c_int = 0x2; @@ -842,7 +842,7 @@ pub const SHM_NORESERVE: c_int = 0o10000; pub const LOG_NFACILITIES: c_int = 24; -pub const SEM_FAILED: *mut crate::sem_t = 0 as *mut sem_t; +pub const SEM_FAILED: *mut crate::sem_t = ptr::null_mut(); pub const AI_PASSIVE: c_int = 0x0001; pub const AI_CANONNAME: c_int = 0x0002; diff --git a/src/unix/linux_like/linux/mod.rs b/src/unix/linux_like/linux/mod.rs index 53e9b87e9d901..2f8bf55b29245 100644 --- a/src/unix/linux_like/linux/mod.rs +++ b/src/unix/linux_like/linux/mod.rs @@ -2129,7 +2129,8 @@ pub const _PC_ALLOC_SIZE_MIN: c_int = 18; pub const _PC_SYMLINK_MAX: c_int = 19; pub const _PC_2_SYMLINKS: c_int = 20; -pub const MS_NOUSER: c_ulong = 0xffffffff80000000; +// FIXME: should this be an int? The suffix is `U` not `UL`. +pub const MS_NOUSER: c_ulong = 1 << 31; pub const _SC_ARG_MAX: c_int = 0; pub const _SC_CHILD_MAX: c_int = 1; @@ -2681,7 +2682,7 @@ pub const ST_NOATIME: c_ulong = 1024; pub const ST_NODIRATIME: c_ulong = 2048; pub const RTLD_NEXT: *mut c_void = -1i64 as *mut c_void; -pub const RTLD_DEFAULT: *mut c_void = 0i64 as *mut c_void; +pub const RTLD_DEFAULT: *mut c_void = ptr::null_mut(); pub const RTLD_NODELETE: c_int = 0x1000; pub const RTLD_NOW: c_int = 0x2; @@ -2805,7 +2806,7 @@ pub const EFD_SEMAPHORE: c_int = 0x1; pub const LOG_NFACILITIES: c_int = 24; -pub const SEM_FAILED: *mut crate::sem_t = 0 as *mut sem_t; +pub const SEM_FAILED: *mut crate::sem_t = ptr::null_mut(); pub const RB_AUTOBOOT: c_int = 0x01234567u32 as i32; pub const RB_HALT_SYSTEM: c_int = 0xcdef0123u32 as i32; diff --git a/src/unix/newlib/horizon/mod.rs b/src/unix/newlib/horizon/mod.rs index e98a4c53ccfff..ee325a0247241 100644 --- a/src/unix/newlib/horizon/mod.rs +++ b/src/unix/newlib/horizon/mod.rs @@ -173,7 +173,7 @@ pub const AF_INET6: c_int = 23; pub const FIONBIO: c_ulong = 1; -pub const RTLD_DEFAULT: *mut c_void = 0 as *mut c_void; +pub const RTLD_DEFAULT: *mut c_void = ptr::null_mut(); // For pthread get/setschedparam pub const SCHED_FIFO: c_int = 1; diff --git a/src/unix/newlib/vita/mod.rs b/src/unix/newlib/vita/mod.rs index 822b61989d479..62cd300e1d6f0 100644 --- a/src/unix/newlib/vita/mod.rs +++ b/src/unix/newlib/vita/mod.rs @@ -108,7 +108,7 @@ pub const POLLERR: c_short = 0x0008; pub const POLLHUP: c_short = 0x0010; pub const POLLNVAL: c_short = 0x0020; -pub const RTLD_DEFAULT: *mut c_void = 0 as *mut c_void; +pub const RTLD_DEFAULT: *mut c_void = ptr::null_mut(); pub const SOL_SOCKET: c_int = 0xffff; pub const SO_NONBLOCK: c_int = 0x1100; diff --git a/src/unix/nuttx/mod.rs b/src/unix/nuttx/mod.rs index 69732d845b400..b71d3f61670bc 100644 --- a/src/unix/nuttx/mod.rs +++ b/src/unix/nuttx/mod.rs @@ -274,7 +274,7 @@ pub const PTHREAD_MUTEX_INITIALIZER: pthread_mutex_t = pthread_mutex_t { }; // dlfcn.h -pub const RTLD_DEFAULT: *mut c_void = 0 as *mut c_void; +pub const RTLD_DEFAULT: *mut c_void = ptr::null_mut(); // stdlib.h pub const EXIT_SUCCESS: i32 = 0; diff --git a/src/unix/redox/mod.rs b/src/unix/redox/mod.rs index 286ab35fa79aa..de8387d881312 100644 --- a/src/unix/redox/mod.rs +++ b/src/unix/redox/mod.rs @@ -355,7 +355,7 @@ pub const F_TEST: c_int = 3; pub const AT_FDCWD: c_int = -100; // FIXME(redox): relibc { -pub const RTLD_DEFAULT: *mut c_void = 0i64 as *mut c_void; +pub const RTLD_DEFAULT: *mut c_void = ptr::null_mut(); // } // dlfcn.h diff --git a/src/vxworks/mod.rs b/src/vxworks/mod.rs index ac82903504347..6bd8873268176 100644 --- a/src/vxworks/mod.rs +++ b/src/vxworks/mod.rs @@ -516,7 +516,7 @@ pub const EAI_SYSTEM: c_int = 11; // FIXME(vxworks): This is not defined in vxWorks, but we have to define it here // to make the building pass for getrandom and std -pub const RTLD_DEFAULT: *mut c_void = 0i64 as *mut c_void; +pub const RTLD_DEFAULT: *mut c_void = ptr::null_mut(); //Clock Lib Stuff pub const CLOCK_REALTIME: c_int = 0x0;