aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2009-11-19 10:03:46 -0800
committerUlrich Drepper <drepper@redhat.com>2009-11-19 10:03:46 -0800
commit03ebadd9eaa4663f58bd3fa6fe8283f255925632 (patch)
tree38b9215720c065a6d73eb70bfa5466f1ae5893fc
parentc6e7f16c536a0a588e842c5eb52626b00bbe9133 (diff)
downloadglibc-03ebadd9eaa4663f58bd3fa6fe8283f255925632.zip
glibc-03ebadd9eaa4663f58bd3fa6fe8283f255925632.tar.gz
glibc-03ebadd9eaa4663f58bd3fa6fe8283f255925632.tar.bz2
Avoid warnings in CPU_* macros when using const bitsets.
-rw-r--r--ChangeLog6
-rw-r--r--sysdeps/unix/sysv/linux/bits/sched.h12
2 files changed, 12 insertions, 6 deletions
diff --git a/ChangeLog b/ChangeLog
index bf57a52..9dda77f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,11 @@
2009-11-19 Ulrich Drepper <drepper@redhat.com>
+ [BZ #10918]
+ * sysdeps/unix/sysv/linux/bits/sched.h (__CPU_ISSET_S): Use __const
+ in cast to not throw away const-ness of parameters.
+ (__CPU_EQUAL_S): Likewise.
+ (__CPU_OP_S): Likewise.
+
* sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Introduce new symbol
F_OWNER_PGRP and mark F_OWNER_GID obsolete. The kernel people made
this gratuitous change and we have to keep compatibility.
diff --git a/sysdeps/unix/sysv/linux/bits/sched.h b/sysdeps/unix/sysv/linux/bits/sched.h
index 95d05b4..18269a9 100644
--- a/sysdeps/unix/sysv/linux/bits/sched.h
+++ b/sysdeps/unix/sysv/linux/bits/sched.h
@@ -1,6 +1,6 @@
/* Definitions of constants and data structure for POSIX 1003.1b-1993
scheduling interface.
- Copyright (C) 1996-1999,2001-2003,2005,2006,2007,2008
+ Copyright (C) 1996-1999,2001-2003,2005,2006,2007,2008,2009
Free Software Foundation, Inc.
This file is part of the GNU C Library.
@@ -154,7 +154,7 @@ typedef struct
(__extension__ \
({ size_t __cpu = (cpu); \
__cpu < 8 * (setsize) \
- ? ((((__cpu_mask *) ((cpusetp)->__bits))[__CPUELT (__cpu)] \
+ ? ((((__const __cpu_mask *) ((cpusetp)->__bits))[__CPUELT (__cpu)] \
& __CPUMASK (__cpu))) != 0 \
: 0; }))
@@ -167,8 +167,8 @@ typedef struct
# else
# define __CPU_EQUAL_S(setsize, cpusetp1, cpusetp2) \
(__extension__ \
- ({ __cpu_mask *__arr1 = (cpusetp1)->__bits; \
- __cpu_mask *__arr2 = (cpusetp2)->__bits; \
+ ({ __const __cpu_mask *__arr1 = (cpusetp1)->__bits; \
+ __const __cpu_mask *__arr2 = (cpusetp2)->__bits; \
size_t __imax = (setsize) / sizeof (__cpu_mask); \
size_t __i; \
for (__i = 0; __i < __imax; ++__i) \
@@ -180,8 +180,8 @@ typedef struct
# define __CPU_OP_S(setsize, destset, srcset1, srcset2, op) \
(__extension__ \
({ cpu_set_t *__dest = (destset); \
- __cpu_mask *__arr1 = (srcset1)->__bits; \
- __cpu_mask *__arr2 = (srcset2)->__bits; \
+ __const __cpu_mask *__arr1 = (srcset1)->__bits; \
+ __const __cpu_mask *__arr2 = (srcset2)->__bits; \
size_t __imax = (setsize) / sizeof (__cpu_mask); \
size_t __i; \
for (__i = 0; __i < __imax; ++__i) \