-
-
Notifications
You must be signed in to change notification settings - Fork 3k
Open
Labels
arch-arm32-bit ARM32-bit ARMarch-cskyarch-m68kMotorola 68000 seriesMotorola 68000 seriesarch-mips32-bit and 64-bit MIPS32-bit and 64-bit MIPSarch-powerpc32-bit and 64-bit Power ISA32-bit and 64-bit Power ISAarch-sparc32-bit and 64-bit SPARC32-bit and 64-bit SPARCarch-x8632-bit x8632-bit x86contributor friendlyThis issue is limited in scope and/or knowledge of Zig internals.This issue is limited in scope and/or knowledge of Zig internals.enhancementSolving this issue will likely involve adding new logic or components to the codebase.Solving this issue will likely involve adding new logic or components to the codebase.os-linuxstandard libraryThis issue involves writing Zig code for the standard library.This issue involves writing Zig code for the standard library.
Milestone
Description
Now that #4538 is done, it's zig std lib's turn to update. This task is to change time_t
and related structs to be 64-bits and to call the 64-bit syscalls rather than the 32-bit ones. Here's a nice list of libc functions that have 64 bit versions:
andy@ark ~/D/musl> ls compat/time32/
adjtime32.c gmtime32_r.c setitimer_time32.c
adjtimex_time32.c localtime32.c settimeofday_time32.c
aio_suspend_time32.c localtime32_r.c sigtimedwait_time32.c
clock_adjtime32.c lstat_time32.c stat_time32.c
clock_getres_time32.c lutimes_time32.c stime32.c
clock_gettime32.c mktime32.c thrd_sleep_time32.c
clock_nanosleep_time32.c mq_timedreceive_time32.c time32.c
clock_settime32.c mq_timedsend_time32.c time32gm.c
cnd_timedwait_time32.c mtx_timedlock_time32.c time32.h
ctime32.c nanosleep_time32.c timerfd_gettime32.c
ctime32_r.c ppoll_time32.c timerfd_settime32.c
difftime32.c pselect_time32.c timer_gettime32.c
fstatat_time32.c pthread_cond_timedwait_time32.c timer_settime32.c
fstat_time32.c pthread_mutex_timedlock_time32.c timespec_get_time32.c
ftime32.c pthread_rwlock_timedrdlock_time32.c utimensat_time32.c
futimens_time32.c pthread_rwlock_timedwrlock_time32.c utimes_time32.c
futimesat_time32.c pthread_timedjoin_np_time32.c utime_time32.c
futimes_time32.c recvmmsg_time32.c wait3_time32.c
getitimer_time32.c sched_rr_get_interval_time32.c wait4_time32.c
getrusage_time32.c select_time32.c __xstat.c
gettimeofday_time32.c semtimedop_time32.c
gmtime32.c sem_timedwait_time32.c
Any of these that match syscalls (or libc calls) that the zig std lib uses, should be upgraded.
Metadata
Metadata
Assignees
Labels
arch-arm32-bit ARM32-bit ARMarch-cskyarch-m68kMotorola 68000 seriesMotorola 68000 seriesarch-mips32-bit and 64-bit MIPS32-bit and 64-bit MIPSarch-powerpc32-bit and 64-bit Power ISA32-bit and 64-bit Power ISAarch-sparc32-bit and 64-bit SPARC32-bit and 64-bit SPARCarch-x8632-bit x8632-bit x86contributor friendlyThis issue is limited in scope and/or knowledge of Zig internals.This issue is limited in scope and/or knowledge of Zig internals.enhancementSolving this issue will likely involve adding new logic or components to the codebase.Solving this issue will likely involve adding new logic or components to the codebase.os-linuxstandard libraryThis issue involves writing Zig code for the standard library.This issue involves writing Zig code for the standard library.