This patch processes the case of retrieving a virtual base when the object is already read from the debuggee memory.
To achieve that ValueObject::GetCPPVTableAddress was removed (btw, it really returned not a C++ VTable address but an object's address, which is a C++ VTable pointer address for Itanium, but have nothing to do with VTable address for MSVC) and was reimplemented in ClangASTContext (because access to the process is needed to retrieve the VTable pointer in general, and because this is the only place that used old version of ValueObject::GetCPPVTableAddress).
This patch allows to use real object's VTable instead of searching virtual bases by offsets restored by MicrosoftRecordLayoutBuilder. PDB has no enough info to restore VBase offsets properly, so we have to read real VTable instead.
This patch depends on D53497