summaryrefslogtreecommitdiffstats
path: root/gcc
diff options
context:
space:
mode:
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/config/elfos.h12
2 files changed, 15 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 4c1c5ee135d..8ff3f8cf01e 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+Fri May 19 06:49:35 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * config/elfos.h (SELECT_SECTION): Don't access DECL_INITIAL of
+ a CONSTRUCTOR.
+
2000-05-18 Chris Demetriou <cgd@sibyte.com>
* gcc.texi (MULTILIB_EXCEPTIONS): Correct example and update
diff --git a/gcc/config/elfos.h b/gcc/config/elfos.h
index ebee43a55ae..dfcbb928859 100644
--- a/gcc/config/elfos.h
+++ b/gcc/config/elfos.h
@@ -484,8 +484,7 @@ dtors_section () \
else \
data_section (); \
} \
- else if (TREE_CODE (DECL) == VAR_DECL \
- || TREE_CODE (DECL) == CONSTRUCTOR) \
+ else if (TREE_CODE (DECL) == VAR_DECL) \
{ \
if ((flag_pic && RELOC) \
|| !TREE_READONLY (DECL) || TREE_SIDE_EFFECTS (DECL) \
@@ -496,6 +495,15 @@ dtors_section () \
else \
const_section (); \
} \
+ else if (TREE_CODE (DECL) == CONSTRUCTOR) \
+ { \
+ if ((flag_pic && RELOC) \
+ || !TREE_READONLY (DECL) || TREE_SIDE_EFFECTS (DECL) \
+ || ! TREE_CONSTANT (DECL)) \
+ data_section (); \
+ else \
+ const_section (); \
+ } \
else \
const_section (); \
}
OpenPOWER on IntegriCloud