diff gcc/config/sol2-c.c @ 63:b7f97abdc517 gcc-4.6-20100522

update gcc from gcc-4.5.0 to gcc-4.6
author ryoma <e075725@ie.u-ryukyu.ac.jp>
date Mon, 24 May 2010 12:47:05 +0900
parents 77e2b8dfacca
children f6334be47118
line wrap: on
line diff
--- a/gcc/config/sol2-c.c	Fri Feb 12 23:41:23 2010 +0900
+++ b/gcc/config/sol2-c.c	Mon May 24 12:47:05 2010 +0900
@@ -1,5 +1,5 @@
 /* Solaris support needed only by C/C++ frontends.
-   Copyright (C) 2004, 2005, 2007, 2009 Free Software Foundation, Inc.
+   Copyright (C) 2004, 2005, 2007, 2009, 2010 Free Software Foundation, Inc.
    Contributed by CodeSourcery, LLC.
 
 This file is part of GCC.
@@ -170,9 +170,10 @@
       tree decl = identifier_global_value (t);
       if (decl && DECL_P (decl))
 	{
-	  tree init_list = build_tree_list (get_identifier ("init"),
-					    NULL);
-	  tree attrs = tree_cons (get_identifier ("used"), NULL, init_list);
+	  tree attrs = build_tree_list (get_identifier ("init"),
+					NULL);
+	  TREE_USED (decl) = 1;
+	  DECL_PRESERVE_P (decl) = 1;
 	  decl_attributes (&decl, attrs, 0);
 	}
       else
@@ -228,9 +229,10 @@
       tree decl = identifier_global_value (t);
       if (decl && DECL_P (decl))
 	{
-	  tree fini_list = build_tree_list (get_identifier ("fini"),
-					    NULL);
-	  tree attrs = tree_cons (get_identifier ("used"), NULL, fini_list);
+	  tree attrs = build_tree_list (get_identifier ("fini"),
+					NULL);
+	  TREE_USED (decl) = 1;
+	  DECL_PRESERVE_P (decl) = 1;
 	  decl_attributes (&decl, attrs, 0);
 	}
       else