Remove Size from Undefined symbol.

There seems to be no reason to keep st_size of undefined symbols.
This patch removes the member for it. This patch will change outputs
in cases that undefined symbols are copied to output, but I think
this is unimportant.

Differential Revision: http://reviews.llvm.org/D19574

llvm-svn: 267826
diff --git a/lld/ELF/Symbols.cpp b/lld/ELF/Symbols.cpp
index e911f18..f73a9c7 100644
--- a/lld/ELF/Symbols.cpp
+++ b/lld/ELF/Symbols.cpp
@@ -174,8 +174,6 @@
     return DR->Size;
   if (const auto *S = dyn_cast<SharedSymbol<ELFT>>(this))
     return S->Sym.st_size;
-  if (const auto *U = dyn_cast<Undefined>(this))
-    return U->Size;
   return 0;
 }
 
@@ -232,16 +230,13 @@
 }
 
 Undefined::Undefined(StringRef Name, uint8_t Binding, uint8_t StOther,
-                     uint8_t Type, uint64_t Size, bool IsBitcode)
-    : SymbolBody(SymbolBody::UndefinedKind, Name, Binding, StOther, Type),
-      Size(Size) {
+                     uint8_t Type, bool IsBitcode)
+    : SymbolBody(SymbolBody::UndefinedKind, Name, Binding, StOther, Type) {
   this->IsUndefinedBitcode = IsBitcode;
 }
 
-Undefined::Undefined(uint32_t NameOffset, uint8_t StOther, uint8_t Type,
-                     uint64_t Size)
-    : SymbolBody(SymbolBody::UndefinedKind, NameOffset, StOther, Type),
-      Size(Size) {
+Undefined::Undefined(uint32_t NameOffset, uint8_t StOther, uint8_t Type)
+    : SymbolBody(SymbolBody::UndefinedKind, NameOffset, StOther, Type) {
   this->IsUndefinedBitcode = false;
 }