]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commitdiff
Backport from mainline:
authorIan Lance Taylor <ian@airs.com>
Tue, 1 Feb 2011 14:54:37 +0000 (14:54 +0000)
committerIan Lance Taylor <ian@airs.com>
Tue, 1 Feb 2011 14:54:37 +0000 (14:54 +0000)
2011-01-25  Ian Lance Taylor  <iant@google.com>
* script.cc (script_add_extern): Rewrite to use
add_symbol_reference.

gold/ChangeLog
gold/script.cc

index 886a0ce4c18812b3b9ee1656b7b118175c0b3052..e7bc837398af99c50bd932771356418c165f58e4 100644 (file)
@@ -1,3 +1,10 @@
+2011-02-01  Ian Lance Taylor  <iant@google.com>
+
+       Backport from mainline:
+       2011-01-25  Ian Lance Taylor  <iant@google.com>
+       * script.cc (script_add_extern): Rewrite to use
+       add_symbol_reference.
+
 2011-02-01  Alan Modra  <amodra@gmail.com>
 
        Backport from mainline
index ada9abccc690fd927eef94c4e6d95713b71090ce..b3138bf68e2187497ebc292f57c1aa981775177d 100644 (file)
@@ -1,6 +1,6 @@
 // script.cc -- handle linker scripts for gold.
 
-// Copyright 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
+// Copyright 2006, 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
 // Written by Ian Lance Taylor <iant@google.com>.
 
 // This file is part of gold.
@@ -2576,12 +2576,8 @@ yyerror(void* closurev, const char* message)
 extern "C" void
 script_add_extern(void* closurev, const char* name, size_t length)
 {
-  // We treat exactly like -u NAME.  FIXME: If it seems useful, we
-  // could handle this after the command line has been read, by adding
-  // entries to the symbol table directly.
-  std::string arg("--undefined=");
-  arg.append(name, length);
-  script_parse_option(closurev, arg.c_str(), arg.size());
+  Parser_closure* closure = static_cast<Parser_closure*>(closurev);
+  closure->script_options()->add_symbol_reference(name, length);
 }
 
 // Called by the bison parser to add a file to the link.