diff options
author | Saleem Abdulrasool <compnerd@compnerd.org> | 2014-05-25 21:37:59 +0000 |
---|---|---|
committer | Saleem Abdulrasool <compnerd@compnerd.org> | 2014-05-25 21:37:59 +0000 |
commit | d29bdc72bbefc938a23b51ac4282548d6e36d317 (patch) | |
tree | 46e466c7949f7f7a47c276194af1d7bd643d9a32 /tools/llvm-readobj/Win64EHDumper.cpp | |
parent | b6a667f0335027a8ed673d29af11fc6653781c11 (diff) | |
download | llvm-d29bdc72bbefc938a23b51ac4282548d6e36d317.tar.gz llvm-d29bdc72bbefc938a23b51ac4282548d6e36d317.tar.bz2 llvm-d29bdc72bbefc938a23b51ac4282548d6e36d317.tar.xz |
tools: avoid use of std::function
Remove the use of the std::function and replace the capturing lambda with a
non-capturing one, opting to pass the user data down to the context. This is
needed as std::function is not yet available on all hosted platforms (it
requires RTTI, which breaks on Windows).
Thanks to Nico Rieck for pointing this out!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@209607 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'tools/llvm-readobj/Win64EHDumper.cpp')
-rw-r--r-- | tools/llvm-readobj/Win64EHDumper.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/tools/llvm-readobj/Win64EHDumper.cpp b/tools/llvm-readobj/Win64EHDumper.cpp index 449df001cc..c64d362469 100644 --- a/tools/llvm-readobj/Win64EHDumper.cpp +++ b/tools/llvm-readobj/Win64EHDumper.cpp @@ -120,7 +120,8 @@ static std::string formatSymbol(const Dumper::Context &Ctx, StringRef Name; SymbolRef Symbol; - if (Ctx.ResolveSymbol(Section, Offset, Symbol) || Symbol.getName(Name)) { + if (Ctx.ResolveSymbol(Section, Offset, Symbol, Ctx.UserData) || + Symbol.getName(Name)) { OS << format(" (0x%" PRIX64 ")", Offset); return OS.str(); } @@ -139,7 +140,7 @@ static error_code resolveRelocation(const Dumper::Context &Ctx, const coff_section *&ResolvedSection, uint64_t &ResolvedAddress) { SymbolRef Symbol; - if (error_code EC = Ctx.ResolveSymbol(Section, Offset, Symbol)) + if (error_code EC = Ctx.ResolveSymbol(Section, Offset, Symbol, Ctx.UserData)) return EC; if (error_code EC = Symbol.getAddress(ResolvedAddress)) |