summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>2003-09-09 13:37:17 +0000
committerhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>2003-09-09 13:37:17 +0000
commit4db2a9dbeb1f3b3871a1967faa9d0d72d3042520 (patch)
treed18ab507fda23d4d66d8a78b2deae911917f9daa
parente194dbc30f8744699f7a6cacfb90363c43e6cfdb (diff)
downloadppe42-gcc-4db2a9dbeb1f3b3871a1967faa9d0d72d3042520.tar.gz
ppe42-gcc-4db2a9dbeb1f3b3871a1967faa9d0d72d3042520.zip
* varasm.c (notice_global_symbol): Properly deal with weak symbols.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@71236 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/ChangeLog4
-rw-r--r--gcc/varasm.c8
2 files changed, 8 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 36a1b608ab5..d103a85e21b 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,7 @@
+Tue Sep 9 15:36:28 CEST 2003 Jan Hubicka <jh@suse.cz>
+
+ * varasm.c (notice_global_symbol): Properly deal with weak symbols.
+
2003-09-08 Kelley Cook <kelleycook@wideopenwest.com>
* Makefile.in: Revert yesterday's change.
diff --git a/gcc/varasm.c b/gcc/varasm.c
index 84fbf259baf..d7c60682cd1 100644
--- a/gcc/varasm.c
+++ b/gcc/varasm.c
@@ -1048,11 +1048,11 @@ void
notice_global_symbol (tree decl)
{
if ((!first_global_object_name || !weak_global_object_name)
- && TREE_PUBLIC (decl)
+ && TREE_PUBLIC (decl) && !DECL_COMMON (decl)
&& (TREE_CODE (decl) == FUNCTION_DECL
- || ! (DECL_COMMON (decl)
- && (DECL_INITIAL (decl) == 0
- || DECL_INITIAL (decl) == error_mark_node))))
+ || (TREE_CODE (decl) == VAR_DECL
+ && (DECL_INITIAL (decl) != 0
+ && DECL_INITIAL (decl) != error_mark_node))))
{
const char *p;
char *name;
OpenPOWER on IntegriCloud