+2013-02-08 Joseph Myers <joseph@codesourcery.com>
+
+ [BZ #13550]
+ * sysdeps/generic/bp-checks.h (CHECK_BOUNDS_LOW): Remove all
+ definitions.
+ (CHECK_BOUNDS_HIGH): Likewise.
+ * string/strcpy.c: Do not include <bp-checks.h>.
+ (strcpy): Do not use CHECK_BOUNDS_LOW and CHECK_BOUNDS_HIGH.
+
2013-02-07 Roland McGrath <roland@hack.frob.com>
* nscd/nscd-client.h (__nscd_drop_map_ref):
#include <stddef.h>
#include <string.h>
#include <memcopy.h>
-#include <bp-checks.h>
#undef strcpy
const char *src;
{
char c;
- char *__unbounded s = (char *__unbounded) CHECK_BOUNDS_LOW (src);
- const ptrdiff_t off = CHECK_BOUNDS_LOW (dest) - s - 1;
+ char *__unbounded s = (char *__unbounded) src;
+ const ptrdiff_t off = dest - s - 1;
size_t n;
do
while (c != '\0');
n = s - src;
- (void) CHECK_BOUNDS_HIGH (src + n);
- (void) CHECK_BOUNDS_HIGH (dest + n);
return dest;
}
# define BOUNDS_VIOLATED (__builtin_trap (), 0)
-/* Verify that pointer's value >= low. Return pointer value. */
-# define CHECK_BOUNDS_LOW(ARG) \
- (((__ptrvalue (ARG) < __ptrlow (ARG)) && BOUNDS_VIOLATED), \
- __ptrvalue (ARG))
-
-/* Verify that pointer's value < high. Return pointer value. */
-# define CHECK_BOUNDS_HIGH(ARG) \
- (((__ptrvalue (ARG) > __ptrhigh (ARG)) && BOUNDS_VIOLATED), \
- __ptrvalue (ARG))
-
# define _CHECK_N(ARG, N, COND) \
(((COND) \
&& (__ptrvalue (ARG) < __ptrlow (ARG) \
/* Do nothing if not compiling with -fbounded-pointers. */
# define BOUNDS_VIOLATED
-# define CHECK_BOUNDS_LOW(ARG) (ARG)
-# define CHECK_BOUNDS_HIGH(ARG) (ARG)
# define CHECK_1(ARG) (ARG)
# define CHECK_1_NULL_OK(ARG) (ARG)
# define CHECK_N(ARG, N) (ARG)