aboutsummaryrefslogtreecommitdiff
path: root/gold/object.h
diff options
context:
space:
mode:
authorIan Lance Taylor <iant@google.com>2006-12-06 06:28:56 +0000
committerIan Lance Taylor <iant@google.com>2006-12-06 06:28:56 +0000
commit008db82ec1ba308dba0fcf7767b93c1d56897bcc (patch)
tree93fef89fd7f3241e644fc770a3e59129a01f3407 /gold/object.h
parent8f2e9323f0b754011d0fa089bac65c9d28b73483 (diff)
downloadgdb-008db82ec1ba308dba0fcf7767b93c1d56897bcc.zip
gdb-008db82ec1ba308dba0fcf7767b93c1d56897bcc.tar.gz
gdb-008db82ec1ba308dba0fcf7767b93c1d56897bcc.tar.bz2
Don't emit symbols seen only in dynamic object, don't read duplicate
dynamic object.
Diffstat (limited to 'gold/object.h')
-rw-r--r--gold/object.h12
1 files changed, 9 insertions, 3 deletions
diff --git a/gold/object.h b/gold/object.h
index b823599..2df04ab 100644
--- a/gold/object.h
+++ b/gold/object.h
@@ -600,7 +600,7 @@ class Input_objects
{
public:
Input_objects()
- : relobj_list_(), target_(NULL)
+ : relobj_list_(), dynobj_list_(), target_(NULL), sonames_()
{ }
// The type of the list of input relocateable objects.
@@ -611,8 +611,9 @@ class Input_objects
typedef std::vector<Dynobj*> Dynobj_list;
typedef Dynobj_list::const_iterator Dynobj_iterator;
- // Add an object to the list.
- void
+ // Add an object to the list. Return true if all is well, or false
+ // if this object should be ignored.
+ bool
add_object(Object*);
// Get the target we should use for the output file.
@@ -649,9 +650,14 @@ class Input_objects
Input_objects(const Input_objects&);
Input_objects& operator=(const Input_objects&);
+ // The list of ordinary objects included in the link.
Relobj_list relobj_list_;
+ // The list of dynamic objects included in the link.
Dynobj_list dynobj_list_;
+ // The target.
Target* target_;
+ // SONAMEs that we have seen.
+ Unordered_set<std::string> sonames_;
};
// Some of the information we pass to the relocation routines. We