reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
966 visitDIScope(N); 968 AssertDI(N.getTag() == dwarf::DW_TAG_array_type || 969 N.getTag() == dwarf::DW_TAG_structure_type || 970 N.getTag() == dwarf::DW_TAG_union_type || 971 N.getTag() == dwarf::DW_TAG_enumeration_type || 972 N.getTag() == dwarf::DW_TAG_class_type || 973 N.getTag() == dwarf::DW_TAG_variant_part, 974 "invalid tag", &N); 976 AssertDI(isScope(N.getRawScope()), "invalid scope", &N, N.getRawScope()); 976 AssertDI(isScope(N.getRawScope()), "invalid scope", &N, N.getRawScope()); 976 AssertDI(isScope(N.getRawScope()), "invalid scope", &N, N.getRawScope()); 977 AssertDI(isType(N.getRawBaseType()), "invalid base type", &N, 977 AssertDI(isType(N.getRawBaseType()), "invalid base type", &N, 978 N.getRawBaseType()); 980 AssertDI(!N.getRawElements() || isa<MDTuple>(N.getRawElements()), 980 AssertDI(!N.getRawElements() || isa<MDTuple>(N.getRawElements()), 981 "invalid composite elements", &N, N.getRawElements()); 981 "invalid composite elements", &N, N.getRawElements()); 982 AssertDI(isType(N.getRawVTableHolder()), "invalid vtable holder", &N, 982 AssertDI(isType(N.getRawVTableHolder()), "invalid vtable holder", &N, 983 N.getRawVTableHolder()); 984 AssertDI(!hasConflictingReferenceFlags(N.getFlags()), 985 "invalid reference flags", &N); 987 AssertDI((N.getFlags() & DIBlockByRefStruct) == 0, 988 "DIBlockByRefStruct on DICompositeType is no longer supported", &N); 990 if (N.isVector()) { 991 const DINodeArray Elements = N.getElements(); 994 "invalid vector, expected one element of type subrange", &N); 997 if (auto *Params = N.getRawTemplateParams()) 998 visitTemplateParams(N, *Params); 1000 if (N.getTag() == dwarf::DW_TAG_class_type || 1001 N.getTag() == dwarf::DW_TAG_union_type) { 1002 AssertDI(N.getFile() && !N.getFile()->getFilename().empty(), 1002 AssertDI(N.getFile() && !N.getFile()->getFilename().empty(), 1003 "class/union requires a filename", &N, N.getFile()); 1003 "class/union requires a filename", &N, N.getFile()); 1006 if (auto *D = N.getRawDiscriminator()) { 1007 AssertDI(isa<DIDerivedType>(D) && N.getTag() == dwarf::DW_TAG_variant_part,