reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
437 if (T1.isNull() || T2.isNull()) 438 return T1.isNull() && T2.isNull(); 440 QualType OrigT1 = T1; 446 T1 = Context.FromCtx.getCanonicalType(T1); 446 T1 = Context.FromCtx.getCanonicalType(T1); 450 if (T1.getQualifiers() != T2.getQualifiers()) 453 Type::TypeClass TC = T1->getTypeClass(); 455 if (T1->getTypeClass() != T2->getTypeClass()) { 458 if (T1->getTypeClass() == Type::FunctionProto && 461 else if (T1->getTypeClass() == Type::FunctionNoProto && 471 if (cast<BuiltinType>(T1)->getKind() != cast<BuiltinType>(T2)->getKind()) 477 cast<ComplexType>(T1)->getElementType(), 485 cast<AdjustedType>(T1)->getOriginalType(), 492 cast<PointerType>(T1)->getPointeeType(), 499 cast<BlockPointerType>(T1)->getPointeeType(), 506 const auto *Ref1 = cast<ReferenceType>(T1); 519 const auto *MemPtr1 = cast<MemberPointerType>(T1); 531 const auto *Array1 = cast<ConstantArrayType>(T1); 542 if (!IsArrayStructurallyEquivalent(Context, cast<ArrayType>(T1), 548 const auto *Array1 = cast<VariableArrayType>(T1); 561 const auto *Array1 = cast<DependentSizedArrayType>(T1); 574 const auto *DepAddressSpace1 = cast<DependentAddressSpaceType>(T1); 587 const auto *Vec1 = cast<DependentSizedExtVectorType>(T1); 599 const auto *Vec1 = cast<DependentVectorType>(T1); 614 const auto *Vec1 = cast<VectorType>(T1); 627 const auto *Proto1 = cast<FunctionProtoType>(T1); 656 const auto *Function1 = cast<FunctionType>(T1); 669 cast<UnresolvedUsingType>(T1)->getDecl(), 676 cast<AttributedType>(T1)->getModifiedType(), 680 Context, cast<AttributedType>(T1)->getEquivalentType(), 686 if (!IsStructurallyEquivalent(Context, cast<ParenType>(T1)->getInnerType(), 693 Context, cast<MacroQualifiedType>(T1)->getUnderlyingType(), 699 if (!IsStructurallyEquivalent(Context, cast<TypedefType>(T1)->getDecl(), 706 Context, cast<TypeOfExprType>(T1)->getUnderlyingExpr(), 713 cast<TypeOfType>(T1)->getUnderlyingType(), 720 Context, cast<UnaryTransformType>(T1)->getUnderlyingType(), 727 cast<DecltypeType>(T1)->getUnderlyingExpr(), 733 if (!IsStructurallyEquivalent(Context, cast<AutoType>(T1)->getDeducedType(), 739 const auto *DT1 = cast<DeducedTemplateSpecializationType>(T1); 752 if (!IsStructurallyEquivalent(Context, cast<TagType>(T1)->getDecl(), 758 const auto *Parm1 = cast<TemplateTypeParmType>(T1); 772 const auto *Subst1 = cast<SubstTemplateTypeParmType>(T1); 785 const auto *Subst1 = cast<SubstTemplateTypeParmPackType>(T1); 798 const auto *Spec1 = cast<TemplateSpecializationType>(T1); 814 const auto *Elab1 = cast<ElaboratedType>(T1); 829 const auto *Inj1 = cast<InjectedClassNameType>(T1); 839 const auto *Typename1 = cast<DependentNameType>(T1); 852 const auto *Spec1 = cast<DependentTemplateSpecializationType>(T1); 872 cast<PackExpansionType>(T1)->getPattern(), 878 const auto *Iface1 = cast<ObjCInterfaceType>(T1); 887 const auto *Obj1 = cast<ObjCTypeParamType>(T1); 903 const auto *Obj1 = cast<ObjCObjectType>(T1); 919 const auto *Ptr1 = cast<ObjCObjectPointerType>(T1); 928 if (!IsStructurallyEquivalent(Context, cast<AtomicType>(T1)->getValueType(), 934 if (!IsStructurallyEquivalent(Context, cast<PipeType>(T1)->getElementType(),