diff options
author | kenner <kenner@138bc75d-0d04-0410-961f-82ee72b054a4> | 2000-05-19 10:44:55 +0000 |
---|---|---|
committer | kenner <kenner@138bc75d-0d04-0410-961f-82ee72b054a4> | 2000-05-19 10:44:55 +0000 |
commit | b0eb05f129aa09384a1437e578a3ac08cdcc1860 (patch) | |
tree | 6dbf18165d70b1dc3297ed8ac907931c7e80648f /gcc/config/elfos.h | |
parent | 657ea16b788f299f5b0abb1515555ee760323634 (diff) | |
download | gcc-b0eb05f129aa09384a1437e578a3ac08cdcc1860.tar.gz |
* config/elfos.h (SELECT_SECTION): Don't access DECL_INITIAL of
a CONSTRUCTOR.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@34019 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/elfos.h')
-rw-r--r-- | gcc/config/elfos.h | 12 |
1 files changed, 10 insertions, 2 deletions
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 (); \ } |