[Bug go/106660] New: riscv32-linux-gnu fails to compile libgo due to having only 64bit time_t (no support for 32bit time_t)
pinskia at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Tue Aug 16 23:21:56 GMT 2022
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106660
Bug ID: 106660
Summary: riscv32-linux-gnu fails to compile libgo due to having
only 64bit time_t (no support for 32bit time_t)
Product: gcc
Version: 12.0
Status: UNCONFIRMED
Keywords: build
Severity: normal
Priority: P3
Component: go
Assignee: ian at airs dot com
Reporter: pinskia at gcc dot gnu.org
Target Milestone: ---
Target: riscv32-linux-gnu
/bajas/pinskia/src/toolchain-riscv/scripts/../src/libgo/go/runtime/os_linux.go:30:30:
error: reference to undefined name ‘_SYS_futex’
30 | return int32(syscall(_SYS_futex, uintptr(addr), uintptr(op),
uintptr(val), uintptr(ts), uintptr(addr2), uintptr(val3)))
| ^
/bajas/pinskia/src/toolchain-riscv/scripts/../src/libgo/go/runtime/os_linux.go:251:30:
error: reference to undefined name ‘_SYS_timer_settime’
251 | return int32(syscall(_SYS_timer_settime, uintptr(timerid),
uintptr(flags), uintptr(unsafe.Pointer(new)), uintptr(unsafe.Pointer(old)), 0,
0))
| ^
This is due to _SYS_futex not existing for riscv32, only SYS_futex_time64
exists.
Same for _SYS_timer_settime, only _SYS_timer_settime64 .
More information about the Gcc-bugs
mailing list