OSDN Git Service

PR target/43888
[pf3gnuchains/gcc-fork.git] / gcc / config / i386 / winnt.c
index 34d3f42..3750e0c 100644 (file)
@@ -324,7 +324,10 @@ i386_pe_binds_local_p (const_tree exp)
   /* 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;
+    /* But x64 gets confused and attempts to use unsupported GOTPCREL
+       relocations if we tell it the truth, so we still return true in
+       that case until the deeper problem can be fixed.  */
+    return (TARGET_64BIT && DEFAULT_ABI == MS_ABI);
 
   return true;
 }