aboutsummaryrefslogtreecommitdiff
path: root/gold/object.h
diff options
context:
space:
mode:
Diffstat (limited to 'gold/object.h')
-rw-r--r--gold/object.h12
1 files changed, 8 insertions, 4 deletions
diff --git a/gold/object.h b/gold/object.h
index 7c27b7b..36cf949 100644
--- a/gold/object.h
+++ b/gold/object.h
@@ -92,8 +92,6 @@ class Object
template<int size, bool big_endian>
Sized_target<size, big_endian>*
sized_target();
-#else
- virtual Target* sized_target() = 0;
#endif
// Read the symbol and relocation information.
@@ -248,7 +246,13 @@ class Sized_object : public Object
// Return the appropriate Sized_target structure.
Sized_target<size, big_endian>*
sized_target()
- { return this->Object::sized_target<size, big_endian>(); }
+ {
+#ifdef HAVE_MEMBER_TEMPLATE_SPECIFICATIONS
+ return this->Object::sized_target<size, big_endian>();
+#else
+ return static_cast<Sized_target<size, big_endian>*>(this->target());
+#endif
+ }
private:
// This object may not be copied.
@@ -290,7 +294,7 @@ class Input_objects
{
public:
Input_objects()
- : object_list_()
+ : object_list_(), any_dynamic_(false)
{ }
// The type of the list of input objects.