[PDB] Refactor a little of the Symbol creation code.
authorZachary Turner <zturner@google.com>
Fri, 14 Sep 2018 21:03:57 +0000 (21:03 +0000)
committerZachary Turner <zturner@google.com>
Fri, 14 Sep 2018 21:03:57 +0000 (21:03 +0000)
commit4d68951e6d2c1062b97fa002fbe36db13e7f9888
treedf8f4e2a2a017910afcac1fe27c6ae906f84bc52
parent6a14325dffb7a0607e5b3c75d93a837cadad54b4
[PDB] Refactor a little of the Symbol creation code.

Eventually we need to be able to support nested types, which don't
have an associated CVType record.  To handle this, remove the
CVType from all of the record classes, and instead store the
deserialized record.  Then move the deserialization up to the thing
that creates the type.  This actually makes error handling better
anyway as we can return an invalid symbol instead of asserting false.

llvm-svn: 342284
llvm/include/llvm/DebugInfo/PDB/Native/NativeTypeEnum.h
llvm/include/llvm/DebugInfo/PDB/Native/NativeTypePointer.h
llvm/include/llvm/DebugInfo/PDB/Native/SymbolCache.h
llvm/lib/DebugInfo/PDB/Native/NativeTypeEnum.cpp
llvm/lib/DebugInfo/PDB/Native/NativeTypePointer.cpp
llvm/lib/DebugInfo/PDB/Native/SymbolCache.cpp