bug-gnulib
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH] xalloc: don't potentially generate invalid code for xmemdup call


From: Paul Eggert
Subject: [PATCH] xalloc: don't potentially generate invalid code for xmemdup calls
Date: Tue, 20 May 2014 18:14:48 -0700

* lib/xalloc.h (xmemdup): Do not mark with _GL_ATTRIBUTE_ALLOC, as
this function can initialize the newly-allocated storage with new
pointers, which means this function is not malloc-like.  See:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=56955
---
 ChangeLog    | 8 ++++++++
 lib/xalloc.h | 2 +-
 2 files changed, 9 insertions(+), 1 deletion(-)

diff --git a/ChangeLog b/ChangeLog
index c91ac60..488a0da 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2014-05-20  Paul Eggert  <address@hidden>
+
+       xalloc: don't potentially generate invalid code for xmemdup calls
+       * lib/xalloc.h (xmemdup): Do not mark with _GL_ATTRIBUTE_ALLOC, as
+       this function can initialize the newly-allocated storage with new
+       pointers, which means this function is not malloc-like.  See:
+       https://gcc.gnu.org/bugzilla/show_bug.cgi?id=56955
+
 2014-05-19  Pádraig Brady  <address@hidden>
 
        getlogin_r-tests: avoid false failure under sudo/ssh etc.
diff --git a/lib/xalloc.h b/lib/xalloc.h
index 0bd6bce..3f6b5b8 100644
--- a/lib/xalloc.h
+++ b/lib/xalloc.h
@@ -64,7 +64,7 @@ void *xrealloc (void *p, size_t s)
       _GL_ATTRIBUTE_ALLOC_SIZE ((2));
 void *x2realloc (void *p, size_t *pn);
 void *xmemdup (void const *p, size_t s)
-      _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_ALLOC_SIZE ((2));
+      _GL_ATTRIBUTE_ALLOC_SIZE ((2));
 char *xstrdup (char const *str)
       _GL_ATTRIBUTE_MALLOC;
 
-- 
1.9.0




reply via email to

[Prev in Thread] Current Thread [Next in Thread]