[ARC] Don't check extAuxRegister second argument for sign.
[deliverable/binutils-gdb.git] / gold / symtab.cc
index 5ce5c31bfee4d344386b6d445bb92e04fc31864b..c872f47d38638540278e1dcc05caee1195d88f5d 100644 (file)
@@ -882,6 +882,7 @@ Symbol_table::define_default_version(Sized_symbol<size>* sym,
        ;
       else if (pdef->second->is_from_dynobj()
               && sym->is_from_dynobj()
+              && pdef->second->is_defined()
               && pdef->second->object() != sym->object())
         ;
       else
@@ -1325,6 +1326,9 @@ Symbol_table::add_from_relobj(
       res = this->add_from_object(relobj, name, name_key, ver, ver_key,
                                  is_default_version, *psym, st_shndx,
                                  is_ordinary, orig_st_shndx);
+
+      if (res == NULL)
+       continue;
       
       if (is_forced_local)
        this->force_local(res);
@@ -1406,6 +1410,9 @@ Symbol_table::add_from_pluginobj(
                              is_default_version, *sym, st_shndx,
                              is_ordinary, st_shndx);
 
+  if (res == NULL)
+    return NULL;
+
   if (is_forced_local)
     this->force_local(res);
 
@@ -1602,6 +1609,9 @@ Symbol_table::add_from_dynobj(
            }
        }
 
+      if (res == NULL)
+       continue;
+
       // Note that it is possible that RES was overridden by an
       // earlier object, in which case it can't be aliased here.
       if (st_shndx != elfcpp::SHN_UNDEF
@@ -1640,7 +1650,6 @@ Symbol_table::add_from_incrobj(
 
   Stringpool::Key ver_key = 0;
   bool is_default_version = false;
-  bool is_forced_local = false;
 
   Stringpool::Key name_key;
   name = this->namepool_.add(name, true, &name_key);
@@ -1650,9 +1659,6 @@ Symbol_table::add_from_incrobj(
                              is_default_version, *sym, st_shndx,
                              is_ordinary, st_shndx);
 
-  if (is_forced_local)
-    this->force_local(res);
-
   return res;
 }
 
This page took 0.024444 seconds and 4 git commands to generate.