OSDN Git Service

* config/i386/winnt.c (i386_pe_binds_local_p): Handle weak decls.
authordavek <davek@138bc75d-0d04-0410-961f-82ee72b054a4>
Sun, 2 May 2010 23:51:59 +0000 (23:51 +0000)
committerdavek <davek@138bc75d-0d04-0410-961f-82ee72b054a4>
Sun, 2 May 2010 23:51:59 +0000 (23:51 +0000)
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@158983 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/config/i386/winnt.c

index 49fe658..b528def 100644 (file)
@@ -1,3 +1,7 @@
+2010-05-03  Dave Korn  <dave.korn.cygwin@gmail.com>
+
+       * config/i386/winnt.c (i386_pe_binds_local_p): Handle weak decls.
+
 2010-05-02  Uros Bizjak  <ubizjak@gmail.com>
 
        * config/i386/i386.c (ix86_target_string): Output 'flags', not 'isa',
index f7f4d28..34d3f42 100644 (file)
@@ -321,6 +321,11 @@ i386_pe_binds_local_p (const_tree exp)
       && DECL_DLLIMPORT_P (exp))
     return false;
 
+  /* Or a weak one, now that they are supported.  */
+  if ((TREE_CODE (exp) == VAR_DECL || TREE_CODE (exp) == FUNCTION_DECL)
+      && DECL_WEAK (exp))
+    return false;
+
   return true;
 }