From 6515a01fc1d35d329886d5a45435537ee9115bc4 Mon Sep 17 00:00:00 2001 From: Caolan McNamara Date: Tue, 10 Nov 2009 06:29:13 -0800 Subject: [PATCH] Avoid memset warning in one case. --- ChangeLog | 5 +++++ string/bits/string3.h | 5 +++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index 705e83f4b4..ac8baf13be 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2009-11-10 Ulrich Drepper + + * string/bits/string3.h (memset): If the second parameter is constant + and zero there is likely no transposition. + 2009-11-04 Philippe De Muyter * sysdeps/powerpc/fpu/e_sqrt.c: Fix spelling of (Newton-)Raphson. diff --git a/string/bits/string3.h b/string/bits/string3.h index a5593e3b89..1d759f181b 100644 --- a/string/bits/string3.h +++ b/string/bits/string3.h @@ -1,4 +1,4 @@ -/* Copyright (C) 2004, 2005, 2007 Free Software Foundation, Inc. +/* Copyright (C) 2004, 2005, 2007, 2009 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -77,7 +77,8 @@ __NTH (mempcpy (void *__restrict __dest, __const void *__restrict __src, __extern_always_inline void * __NTH (memset (void *__dest, int __ch, size_t __len)) { - if (__builtin_constant_p (__len) && __len == 0) + if (__builtin_constant_p (__len) && __len == 0 + && (!__builtin_constant_p (__ch) || __ch != 0)) { __warn_memset_zero_len (); return __dest;