Lines Matching full:udt
57 llvm_unreachable("unsuported PDB UDT type"); in TranslateUdtKind()
230 llvm_unreachable("unsupported PDB UDT type"); in GetDefaultAccessibilityForUdtKind()
233 static AccessType GetAccessibilityForUdt(const PDBSymbolTypeUDT &udt) { in GetAccessibilityForUdt() argument
234 AccessType access = TranslateMemberAccess(udt.getAccess()); in GetAccessibilityForUdt()
235 if (access != lldb::eAccessNone || !udt.isNested()) in GetAccessibilityForUdt()
238 auto parent = udt.getClassParent(); in GetAccessibilityForUdt()
250 GetMSInheritance(const PDBSymbolTypeUDT &udt) { in GetMSInheritance() argument
254 auto bases_enum = udt.findAllChildren<PDBSymbolTypeBaseClass>(); in GetMSInheritance()
281 case PDB_SymType::UDT: in GetClassOrFunctionParent()
373 case PDB_SymType::UDT: { in CreateLLDBTypeFromPDBType()
374 auto udt = llvm::dyn_cast<PDBSymbolTypeUDT>(&type); in CreateLLDBTypeFromPDBType() local
375 assert(udt); in CreateLLDBTypeFromPDBType()
377 // Note that, unnamed UDT being typedef-ed is generated as a UDT symbol in CreateLLDBTypeFromPDBType()
380 // is generated as a named UDT in PDB: in CreateLLDBTypeFromPDBType()
384 // Some UDT with trival ctor has zero length. Just ignore. in CreateLLDBTypeFromPDBType()
385 if (udt->getLength() == 0) in CreateLLDBTypeFromPDBType()
390 std::string(MSVCUndecoratedNameParser::DropScope(udt->getName())); in CreateLLDBTypeFromPDBType()
396 // Check if such an UDT already exists in the current context. in CreateLLDBTypeFromPDBType()
404 auto access = GetAccessibilityForUdt(*udt); in CreateLLDBTypeFromPDBType()
406 auto tag_type_kind = TranslateUdtKind(udt->getUdtKind()); in CreateLLDBTypeFromPDBType()
423 m_ast.getASTContext(), GetMSInheritance(*udt)); in CreateLLDBTypeFromPDBType()
428 auto children = udt->findAllChildren(); in CreateLLDBTypeFromPDBType()
430 // PDB does not have symbol of forwarder. We assume we get an udt w/o in CreateLLDBTypeFromPDBType()
451 if (udt->isConstType()) in CreateLLDBTypeFromPDBType()
454 if (udt->isVolatileType()) in CreateLLDBTypeFromPDBType()
460 udt->getLength(), nullptr, LLDB_INVALID_UID, in CreateLLDBTypeFromPDBType()
665 // If element type is UDT, it needs to be complete. in CreateLLDBTypeFromPDBType()
797 case PDB_SymType::UDT: { in CompleteTypeFromPDB()
798 auto udt = llvm::dyn_cast<PDBSymbolTypeUDT>(symbol.get()); in CompleteTypeFromPDB() local
799 if (!udt) in CompleteTypeFromPDB()
802 return CompleteTypeFromUDT(*symbol_file, compiler_type, *udt); in CompleteTypeFromPDB()
1174 llvm::pdb::PDBSymbolTypeUDT &udt) { in CompleteTypeFromUDT() argument
1176 layout_info.bit_size = udt.getLength() * 8; in CompleteTypeFromUDT()
1178 auto nested_enums = udt.findAllChildren<PDBSymbolTypeUDT>(); in CompleteTypeFromUDT()
1183 auto bases_enum = udt.findAllChildren<PDBSymbolTypeBaseClass>(); in CompleteTypeFromUDT()
1186 TranslateUdtKind(udt.getUdtKind()), *bases_enum, in CompleteTypeFromUDT()
1189 auto members_enum = udt.findAllChildren<PDBSymbolData>(); in CompleteTypeFromUDT()
1193 auto methods_enum = udt.findAllChildren<PDBSymbolFunc>(); in CompleteTypeFromUDT()