-
-
Notifications
You must be signed in to change notification settings - Fork 3.1k
Closed
Labels
bugObserved behavior contradicts documented or intended behaviorObserved behavior contradicts documented or intended behavioros-linuxLinuxLinuxregressionIt worked in a previous version of Zig, but stopped working.It worked in a previous version of Zig, but stopped working.
Milestone
Description
Zig Version
0.12.0-dev.933+b0f031f573
Steps to Reproduce and Observed Behavior
#include <stdlib.h>
int main(int argc, char* argv[]) {
return strtoul(argv[1], 0, 10);
}$ zig c++ main.cpp -target x86_64-linux.4.4.0-gnu.2.23
LLD Link... ld.lld: error: undefined symbol: __isoc23_strtoul
>>> referenced by main.cpp:4
>>> /var/home/xavier/.cache/zig/o/b7dd90f0bc6f5ecf441dda49947e658a/main.o:(main)
also concerns, at least:
error: ld.lld: undefined symbol: __isoc23_strtoll_l
error: ld.lld: undefined symbol: __isoc23_strtoull_l
error: ld.lld: undefined symbol: __isoc23_vsscanf
error: ld.lld: undefined symbol: __isoc23_sscanf
error: ld.lld: undefined symbol: __isoc23_strtol
error: ld.lld: undefined symbol: __isoc23_strtoll
error: ld.lld: undefined symbol: __isoc23_strtoul
error: ld.lld: undefined symbol: __isoc23_strtoull
Expected Behavior
it did work prior to glibc upgrade in zig.
and it still works when targeting native libc (which is 2.38).
$ zig c++ main.cpp
Override-6
Metadata
Metadata
Assignees
Labels
bugObserved behavior contradicts documented or intended behaviorObserved behavior contradicts documented or intended behavioros-linuxLinuxLinuxregressionIt worked in a previous version of Zig, but stopped working.It worked in a previous version of Zig, but stopped working.