OSDN Git Service

PR bootstrap/43403
[pf3gnuchains/gcc-fork.git] / gcc / lto-symtab.c
index 28e9aa3..f02824d 100644 (file)
@@ -463,7 +463,13 @@ lto_symtab_resolve_symbols (void **slot)
       if (TREE_CODE (e->decl) == FUNCTION_DECL)
        e->node = cgraph_get_node (e->decl);
       else if (TREE_CODE (e->decl) == VAR_DECL)
-       e->vnode = varpool_get_node (e->decl);
+       {
+         e->vnode = varpool_get_node (e->decl);
+         /* The LTO plugin for gold doesn't handle common symbols
+            properly.  Let us choose manually.  */
+         if (DECL_COMMON (e->decl))
+           e->resolution = LDPR_UNKNOWN;
+       }
     }
 
   e = (lto_symtab_entry_t) *slot;