about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog6
-rw-r--r--include/alloca.h4
2 files changed, 8 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 8ae6cf1f56..b8da862dc2 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2015-02-24  Mike Frysinger  <vapier@gentoo.org>
+
+	* include/alloca.h [_STACK_GROWS_DOWN] (extend_alloca): Add
+	parenthesis around the buf assignment.
+	[_STACK_GROWS_UP] (extend_alloca): Add a char* cast.
+
 2015-02-24  Joseph Myers  <joseph@codesourcery.com>
 
 	[BZ #16783]
diff --git a/include/alloca.h b/include/alloca.h
index f741d25d54..01500259b8 100644
--- a/include/alloca.h
+++ b/include/alloca.h
@@ -28,7 +28,7 @@ libc_hidden_proto (__libc_alloca_cutoff)
 # define extend_alloca(buf, len, newlen) \
   (__typeof (buf)) ({ size_t __newlen = stackinfo_alloca_round (newlen);      \
 		      char *__newbuf = __alloca (__newlen);		      \
-		      if (__newbuf + __newlen == (char *) buf)		      \
+		      if (__newbuf + __newlen == (char *) (buf))	      \
 			len += __newlen;				      \
 		      else						      \
 			len = __newlen;					      \
@@ -37,7 +37,7 @@ libc_hidden_proto (__libc_alloca_cutoff)
 # define extend_alloca(buf, len, newlen) \
   (__typeof (buf)) ({ size_t __newlen = stackinfo_alloca_round (newlen);      \
 		      char *__newbuf = __alloca (__newlen);		      \
-		      char *__buf = (buf);				      \
+		      char *__buf = (char *) (buf);			      \
 		      if (__buf + len == __newbuf)			      \
 			{						      \
 			  len += __newlen;				      \