From e73d9fcafbd07bc3714fbaf8a82db71d50015c92 Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Mon, 26 Sep 2022 15:03:53 -0400 Subject: runtime: portable access to sigev_notify_thread_id MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Previously, libgo relied on the _sigev_un implementation-specific field in struct sigevent, which is only available on glibc. This patch uses the sigev_notify_thread_id macro instead which is mandated by timer_create(2). In theory, this should work with any libc implementation for Linux. Unfortunately, there is an open glibc bug as glibc does not define this macro. For this reason, a glibc-specific workaround is required. Other libcs (such as musl) define the macro and don't require the workaround. See https://sourceware.org/bugzilla/show_bug.cgi?id=27417 This makes libgo compatible with musl libc. Based on patch by Sören Tempel. Reviewed-on: https://go-review.googlesource.com/c/gofrontend/+/434755 --- gcc/go/gofrontend/MERGE | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'gcc/go') diff --git a/gcc/go/gofrontend/MERGE b/gcc/go/gofrontend/MERGE index 73aa712..4793c82 100644 --- a/gcc/go/gofrontend/MERGE +++ b/gcc/go/gofrontend/MERGE @@ -1,4 +1,4 @@ -0140cca9bc0fad1108c7ed369376ac71cc4bfecf +8f1a91aeff400d572857895b7f5e863ec5a4d93e The first line of this file holds the git revision number of the last merge done from the gofrontend repository. -- cgit v1.1