summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lld/ELF/Symbols.h20
1 files changed, 9 insertions, 11 deletions
diff --git a/lld/ELF/Symbols.h b/lld/ELF/Symbols.h
index e72c717127a..d7b4544086d 100644
--- a/lld/ELF/Symbols.h
+++ b/lld/ELF/Symbols.h
@@ -46,6 +46,8 @@ struct Symbol {
// The base class for real symbol classes.
class SymbolBody {
+ template <class ELFT> using ELFFile = llvm::object::ELFFile<ELFT>;
+
public:
enum Kind {
DefinedFirst,
@@ -90,17 +92,13 @@ public:
bool isInGot() const { return GotIndex != -1U; }
bool isInPlt() const { return PltIndex != -1U; }
- template <class ELFT>
- typename llvm::object::ELFFile<ELFT>::uintX_t
- getVA(typename llvm::object::ELFFile<ELFT>::uintX_t Addend = 0) const;
- template <class ELFT>
- typename llvm::object::ELFFile<ELFT>::uintX_t getGotVA() const;
- template <class ELFT>
- typename llvm::object::ELFFile<ELFT>::uintX_t getGotPltVA() const;
- template <class ELFT>
- typename llvm::object::ELFFile<ELFT>::uintX_t getPltVA() const;
- template <class ELFT>
- typename llvm::object::ELFFile<ELFT>::uintX_t getSize() const;
+ template <class ELFT> typename ELFFile<ELFT>::uintX_t
+ getVA(typename ELFFile<ELFT>::uintX_t Addend = 0) const;
+
+ template <class ELFT> typename ELFFile<ELFT>::uintX_t getGotVA() const;
+ template <class ELFT> typename ELFFile<ELFT>::uintX_t getGotPltVA() const;
+ template <class ELFT> typename ELFFile<ELFT>::uintX_t getPltVA() const;
+ template <class ELFT> typename ELFFile<ELFT>::uintX_t getSize() const;
// A SymbolBody has a backreference to a Symbol. Originally they are
// doubly-linked. A backreference will never change. But the pointer
OpenPOWER on IntegriCloud