svn commit: trunk/uClibc/libc/stdlib

vda at uclibc.org vda at uclibc.org
Wed Sep 19 07:57:22 UTC 2007


Author: vda
Date: 2007-09-19 00:57:22 -0700 (Wed, 19 Sep 2007)
New Revision: 19879

Log:
fix assembler error. libc_hidden_data_def cannot work on COMMONs,
thus need to initialize stuff with 0 to force it into bss.
All hell can again break loose if future gcc will be smart enough
to ignore it.



Modified:
   trunk/uClibc/libc/stdlib/__uc_malloc.c


Changeset:
Modified: trunk/uClibc/libc/stdlib/__uc_malloc.c
===================================================================
--- trunk/uClibc/libc/stdlib/__uc_malloc.c	2007-09-18 17:10:56 UTC (rev 19878)
+++ trunk/uClibc/libc/stdlib/__uc_malloc.c	2007-09-19 07:57:22 UTC (rev 19879)
@@ -24,8 +24,11 @@
 #include <unistd.h>
 #include <malloc.h>
 
-void (*__uc_malloc_failed)(size_t size);
-libc_hidden_data_def(__uc_malloc_failed);
+void (*__uc_malloc_failed)(size_t size) = NULL;
+/* Seemingly superfluous assigment of NULL above prevents gas error
+ * ("__uc_malloc_failed can't be equated to common symbol
+ * __GI___uc_malloc_failed") in libc_hidden_data_def: */
+libc_hidden_data_def(__uc_malloc_failed)
 
 void *__uc_malloc(size_t size)
 {
@@ -40,4 +43,4 @@
 		__uc_malloc_failed(size);
 	}
 }
-libc_hidden_def(__uc_malloc);
+libc_hidden_def(__uc_malloc)




More information about the uClibc-cvs mailing list