From 8c3cc7d9865c1a237eb84979ae86da6740c634da Mon Sep 17 00:00:00 2001
From: Mike Stump <mrs@gcc.gnu.org>
Date: Fri, 25 Mar 2005 19:55:58 +0000
Subject: [PATCH] darwin.h (ASM_OUTPUT_ALIGNED_DECL_LOCAL): Don't allow 0 sized
 objects.

        * config/darwin.h (ASM_OUTPUT_ALIGNED_DECL_LOCAL): Don't allow 0
        sized objects.

From-SVN: r97059
---
 gcc/ChangeLog       | 6 ++++++
 gcc/config/darwin.h | 4 +++-
 2 files changed, 9 insertions(+), 1 deletion(-)

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index e99685a65bd3..8be33573b526 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2005-03-25  Mike Stump  <mrs@apple.com>
+
+	* config/darwin.h (ASM_OUTPUT_ALIGNED_DECL_LOCAL): Don't allow 0
+	sized objects.
+
 2005-03-25  Geoffrey Keating  <geoffk@apple.com>
 
 	* config/rs6000/rs6000.md (UNSPEC constants): Add UNSPEC_STFIWX.
@@ -47,6 +52,7 @@
 	* emit-rtl.c (reverse_comparison): Remove.
 	* rtl.h: Remove the corresponding prototype.
 
+>>>>>>> 2.7995
 2005-03-24  James E Wilson  <wilson@specifixinc.com>
 
 	* doc/install.texi (--enable-altivec): Delete docs.
diff --git a/gcc/config/darwin.h b/gcc/config/darwin.h
index 937b4977fcdb..b26715e26eff 100644
--- a/gcc/config/darwin.h
+++ b/gcc/config/darwin.h
@@ -585,9 +585,11 @@ extern const char *darwin_fix_and_continue_switch;
 #undef	ASM_OUTPUT_ALIGNED_DECL_LOCAL					
 #define ASM_OUTPUT_ALIGNED_DECL_LOCAL(FILE, DECL, NAME, SIZE, ALIGN)	\
   do {									\
+    unsigned HOST_WIDE_INT _new_size = SIZE;				\
     fputs (".lcomm ", (FILE));						\
     assemble_name ((FILE), (NAME));					\
-    fprintf ((FILE), ","HOST_WIDE_INT_PRINT_UNSIGNED",%u\n", (SIZE),	\
+    if (_new_size == 0) _new_size = 1;					\
+    fprintf ((FILE), ","HOST_WIDE_INT_PRINT_UNSIGNED",%u\n", _new_size,	\
 	     floor_log2 ((ALIGN) / BITS_PER_UNIT));			\
     if ((DECL) && ((TREE_STATIC (DECL)					\
 	 && (!DECL_COMMON (DECL) || !TREE_PUBLIC (DECL)))		\
-- 
GitLab