aboutsummaryrefslogtreecommitdiffstats
path: root/main/gcc/0020-libstdc-futex-add-time64-compatibility.patch
blob: 294d49069d5cc4e09c4f008255cd977b7feaf03d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
From c2efb7703c2ef381a8b1d1cd751222e0a7e10665 Mon Sep 17 00:00:00 2001
From: Ariadne Conill <ariadne@dereferenced.org>
Date: Fri, 21 Aug 2020 07:00:17 +0000
Subject: [PATCH 20/40] libstdc++: futex: add time64 compatibility

---
 libstdc++-v3/src/c++11/futex.cc | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/libstdc++-v3/src/c++11/futex.cc b/libstdc++-v3/src/c++11/futex.cc
index c9de11a7ec7..7be702dbeda 100644
--- a/libstdc++-v3/src/c++11/futex.cc
+++ b/libstdc++-v3/src/c++11/futex.cc
@@ -61,7 +61,15 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
 	struct timeval tv;
 	gettimeofday (&tv, NULL);
 	// Convert the absolute timeout value to a relative timeout
+#if defined(SYS_futex_time64)
+	struct
+	  {
+	    long tv_sec;
+	    long tv_nsec;
+	  } rt;
+#else
 	struct timespec rt;
+#endif
 	rt.tv_sec = __s.count() - tv.tv_sec;
 	rt.tv_nsec = __ns.count() - tv.tv_usec * 1000;
 	if (rt.tv_nsec < 0)
-- 
2.29.2