summaryrefslogtreecommitdiff
path: root/gold/symtab.cc
diff options
context:
space:
mode:
authorIan Lance Taylor <ian@airs.com>2011-07-08 23:49:11 +0000
committerIan Lance Taylor <ian@airs.com>2011-07-08 23:49:11 +0000
commit62855347684cda4254e2b8f1f80ed95e18ab5b76 (patch)
treeac7dc032f7360ae5b1af58c18bb26d0495c1dcc7 /gold/symtab.cc
parent67181c72fbaad59e5793cf6bcb8d12d7d211c817 (diff)
downloadbinutils-gdb-62855347684cda4254e2b8f1f80ed95e18ab5b76.tar.gz
PR gold/12279
* resolve.cc (Symbol_table::should_override): Add fromtype parameter. Change all callers. Give error when linking together TLS and non-TLS symbol. (Symbol_table::should_override_with_special): Add fromtype parameter. Change all callers. * i386.cc (Target_i386::Relocate::relocate_tls): Don't crash if there is no TLS segment if we have reported some errors. * x86_64.cc (Target_x86_64::relocate_tls): Likewise.
Diffstat (limited to 'gold/symtab.cc')
-rw-r--r--gold/symtab.cc6
1 files changed, 3 insertions, 3 deletions
diff --git a/gold/symtab.cc b/gold/symtab.cc
index 7e5b66c83dd..26d803262d5 100644
--- a/gold/symtab.cc
+++ b/gold/symtab.cc
@@ -1883,7 +1883,7 @@ Symbol_table::do_define_in_output_data(
return sym;
}
- if (Symbol_table::should_override_with_special(oldsym, defined))
+ if (Symbol_table::should_override_with_special(oldsym, type, defined))
this->override_with_special(oldsym, sym);
if (resolve_oldsym)
@@ -1997,7 +1997,7 @@ Symbol_table::do_define_in_output_segment(
return sym;
}
- if (Symbol_table::should_override_with_special(oldsym, defined))
+ if (Symbol_table::should_override_with_special(oldsym, type, defined))
this->override_with_special(oldsym, sym);
if (resolve_oldsym)
@@ -2116,7 +2116,7 @@ Symbol_table::do_define_as_constant(
}
if (force_override
- || Symbol_table::should_override_with_special(oldsym, defined))
+ || Symbol_table::should_override_with_special(oldsym, type, defined))
this->override_with_special(oldsym, sym);
if (resolve_oldsym)