OSDN Git Service

[NativePDB] Get LLDB types from PDB function types.
authorZachary Turner <zturner@google.com>
Thu, 1 Nov 2018 16:37:29 +0000 (16:37 +0000)
committerZachary Turner <zturner@google.com>
Thu, 1 Nov 2018 16:37:29 +0000 (16:37 +0000)
This adds basic support for getting function signature types
into LLDB's type system, including into clang's AST.  There are
a few edge cases which are not correctly handled, mostly dealing
with nested classes, but this isn't specific to functions and
apply equally to variable types.  Note that no attempt has been
made yet to deal with member function types, which will happen
in subsequent patches.

Differential Revision: https://reviews.llvm.org/D53951

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@345848 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/DebugInfo/CodeView/SymbolDeserializer.h

index b5479db..6b5dd2d 100644 (file)
@@ -47,7 +47,7 @@ public:
     return Error::success();
   }
   template <typename T> static Expected<T> deserializeAs(CVSymbol Symbol) {
-    T Record(Symbol.kind());
+    T Record(static_cast<SymbolRecordKind>(Symbol.kind()));
     if (auto EC = deserializeAs<T>(Symbol, Record))
       return std::move(EC);
     return Record;