diff options
author | Ian Lance Taylor <iant@golang.org> | 2022-09-26 15:03:53 -0400 |
---|---|---|
committer | Ian Lance Taylor <iant@golang.org> | 2022-09-27 09:30:23 -0700 |
commit | e73d9fcafbd07bc3714fbaf8a82db71d50015c92 (patch) | |
tree | 44d8382e7696a4aa4ecbc6e116b2654775215402 /gcc | |
parent | f38162977e2b7efaa75233a0cba2a30a2b7f5132 (diff) | |
download | gcc-e73d9fcafbd07bc3714fbaf8a82db71d50015c92.zip gcc-e73d9fcafbd07bc3714fbaf8a82db71d50015c92.tar.gz gcc-e73d9fcafbd07bc3714fbaf8a82db71d50015c92.tar.bz2 |
runtime: portable access to sigev_notify_thread_id
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
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/go/gofrontend/MERGE | 2 |
1 files changed, 1 insertions, 1 deletions
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. |