about summary refs log tree commit diff
path: root/sysdeps/unix/sysv/linux/clock.c
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2015-01-06 04:59:13 -0800
committerH.J. Lu <hjl.tools@gmail.com>2015-01-06 04:59:13 -0800
commit57ada0e7e79b9421a77d2b92dffce0f9e8e087b5 (patch)
tree194bb1f4abee3c29299c52ae825f6be8f356c43f /sysdeps/unix/sysv/linux/clock.c
parent46abb64d6287d09100b147d062f6810066389b7e (diff)
downloadglibc-57ada0e7e79b9421a77d2b92dffce0f9e8e087b5.tar.gz
glibc-57ada0e7e79b9421a77d2b92dffce0f9e8e087b5.tar.xz
glibc-57ada0e7e79b9421a77d2b92dffce0f9e8e087b5.zip
Define CLOCKS_PER_SEC type to the type clock_t
C99 specifies that CLOCKS_PER_SEC is an expression with the type clock_t.
This patch adds a generic <bits/time2.h> to define CLOCKS_PER_SEC and
provides the Linux/x86-64 version of <bits/time2.h> to support x32.

	[BZ #17797]
	* bits/time.h (CLOCKS_PER_SEC): Changed to ((clock_t) 1000000).
	* sysdeps/unix/sysv/linux/bits/time.h (CLOCKS_PER_SEC): Likewise.
	* sysdeps/unix/sysv/linux/clock.c (clock): _Static_assert
	CLOCKS_PER_SEC == 1000000.
	* time/clocktest.c (main): Replace %ld with %jd and cast to
	intmax_t.
Diffstat (limited to 'sysdeps/unix/sysv/linux/clock.c')
-rw-r--r--sysdeps/unix/sysv/linux/clock.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/sysdeps/unix/sysv/linux/clock.c b/sysdeps/unix/sysv/linux/clock.c
index e06c4b328f..e568bf3543 100644
--- a/sysdeps/unix/sysv/linux/clock.c
+++ b/sysdeps/unix/sysv/linux/clock.c
@@ -20,15 +20,14 @@
 #include <time.h>
 #include <unistd.h>
 
-#if CLOCKS_PER_SEC != 1000000l
-# error "CLOCKS_PER_SEC should be 1000000"
-#endif
-
 clock_t
 clock (void)
 {
   struct timespec ts;
 
+  _Static_assert (CLOCKS_PER_SEC == 1000000,
+		  "CLOCKS_PER_SEC should be 1000000");
+
   /* clock_gettime shouldn't fail here since CLOCK_PROCESS_CPUTIME_ID is
      supported since 2.6.12.  Check the return value anyway in case the kernel
      barfs on us for some reason.  */