Hi!

Building GCC 7.2.0 libgo against uClibc-ng 1.0.26 results in the following
error:

> runtime_sysinfo.go:418:17: error: use of undefined type
> ‘___uclibc_locale_struct’


This happens because -fdump-go-spec probably generates types only from
typedef declarations, ignoring structs, like "struct
__uclibc_locale_struct;" in uClibc-ng <bits/uClibc_locale.h> header. Adding
"typedef struct __uclibc_locale_struct __uclibc_locale_struct;" to
libgo/sysinfo.c remedies this issue:

--- a/libgo/sysinfo.c
+++ b/libgo/sysinfo.c
@@ -277,3 +277,7 @@
   epoll_data_offset = offsetof(struct epoll_event, data)
 };
 #endif
+
+#ifdef __UCLIBC__
+typedef struct __uclibc_locale_struct __uclibc_locale_struct;
+#endif

Best regards,
Alex

Reply via email to