Lines Matching refs:T1

99                                      QualType T1, QualType T2);
804 QualType T1, QualType T2) { in IsStructurallyEquivalent() argument
805 if (T1.isNull() || T2.isNull()) in IsStructurallyEquivalent()
806 return T1.isNull() && T2.isNull(); in IsStructurallyEquivalent()
808 QualType OrigT1 = T1; in IsStructurallyEquivalent()
814 T1 = Context.FromCtx.getCanonicalType(T1); in IsStructurallyEquivalent()
818 if (T1.getQualifiers() != T2.getQualifiers()) in IsStructurallyEquivalent()
821 Type::TypeClass TC = T1->getTypeClass(); in IsStructurallyEquivalent()
823 if (T1->getTypeClass() != T2->getTypeClass()) { in IsStructurallyEquivalent()
826 if (T1->getTypeClass() == Type::FunctionProto && in IsStructurallyEquivalent()
829 else if (T1->getTypeClass() == Type::FunctionNoProto && in IsStructurallyEquivalent()
839 if (cast<BuiltinType>(T1)->getKind() != cast<BuiltinType>(T2)->getKind()) in IsStructurallyEquivalent()
845 cast<ComplexType>(T1)->getElementType(), in IsStructurallyEquivalent()
854 cast<AdjustedType>(T1)->getOriginalType(), in IsStructurallyEquivalent()
861 cast<PointerType>(T1)->getPointeeType(), in IsStructurallyEquivalent()
868 cast<BlockPointerType>(T1)->getPointeeType(), in IsStructurallyEquivalent()
875 const auto *Ref1 = cast<ReferenceType>(T1); in IsStructurallyEquivalent()
888 const auto *MemPtr1 = cast<MemberPointerType>(T1); in IsStructurallyEquivalent()
900 const auto *Array1 = cast<ConstantArrayType>(T1); in IsStructurallyEquivalent()
911 if (!IsArrayStructurallyEquivalent(Context, cast<ArrayType>(T1), in IsStructurallyEquivalent()
917 const auto *Array1 = cast<VariableArrayType>(T1); in IsStructurallyEquivalent()
930 const auto *Array1 = cast<DependentSizedArrayType>(T1); in IsStructurallyEquivalent()
943 const auto *DepAddressSpace1 = cast<DependentAddressSpaceType>(T1); in IsStructurallyEquivalent()
956 const auto *Vec1 = cast<DependentSizedExtVectorType>(T1); in IsStructurallyEquivalent()
968 const auto *Vec1 = cast<DependentVectorType>(T1); in IsStructurallyEquivalent()
983 const auto *Vec1 = cast<VectorType>(T1); in IsStructurallyEquivalent()
996 const DependentSizedMatrixType *Mat1 = cast<DependentSizedMatrixType>(T1); in IsStructurallyEquivalent()
1011 const ConstantMatrixType *Mat1 = cast<ConstantMatrixType>(T1); in IsStructurallyEquivalent()
1024 const auto *Proto1 = cast<FunctionProtoType>(T1); in IsStructurallyEquivalent()
1053 const auto *Function1 = cast<FunctionType>(T1); in IsStructurallyEquivalent()
1066 cast<UnresolvedUsingType>(T1)->getDecl(), in IsStructurallyEquivalent()
1073 cast<AttributedType>(T1)->getModifiedType(), in IsStructurallyEquivalent()
1077 Context, cast<AttributedType>(T1)->getEquivalentType(), in IsStructurallyEquivalent()
1084 cast<CountAttributedType>(T1)->desugar(), in IsStructurallyEquivalent()
1091 Context, cast<BTFTagAttributedType>(T1)->getWrappedType(), in IsStructurallyEquivalent()
1097 if (!IsStructurallyEquivalent(Context, cast<ParenType>(T1)->getInnerType(), in IsStructurallyEquivalent()
1104 Context, cast<MacroQualifiedType>(T1)->getUnderlyingType(), in IsStructurallyEquivalent()
1110 if (!IsStructurallyEquivalent(Context, cast<UsingType>(T1)->getFoundDecl(), in IsStructurallyEquivalent()
1114 cast<UsingType>(T1)->getUnderlyingType(), in IsStructurallyEquivalent()
1120 if (!IsStructurallyEquivalent(Context, cast<TypedefType>(T1)->getDecl(), in IsStructurallyEquivalent()
1122 !IsStructurallyEquivalent(Context, cast<TypedefType>(T1)->desugar(), in IsStructurallyEquivalent()
1129 Context, cast<TypeOfExprType>(T1)->getUnderlyingExpr(), in IsStructurallyEquivalent()
1136 cast<TypeOfType>(T1)->getUnmodifiedType(), in IsStructurallyEquivalent()
1143 Context, cast<UnaryTransformType>(T1)->getUnderlyingType(), in IsStructurallyEquivalent()
1150 cast<DecltypeType>(T1)->getUnderlyingExpr(), in IsStructurallyEquivalent()
1156 auto *Auto1 = cast<AutoType>(T1); in IsStructurallyEquivalent()
1176 const auto *DT1 = cast<DeducedTemplateSpecializationType>(T1); in IsStructurallyEquivalent()
1189 if (!IsStructurallyEquivalent(Context, cast<TagType>(T1)->getDecl(), in IsStructurallyEquivalent()
1195 const auto *Parm1 = cast<TemplateTypeParmType>(T1); in IsStructurallyEquivalent()
1210 const auto *Subst1 = cast<SubstTemplateTypeParmType>(T1); in IsStructurallyEquivalent()
1226 const auto *Subst1 = cast<SubstTemplateTypeParmPackType>(T1); in IsStructurallyEquivalent()
1240 const auto *Spec1 = cast<TemplateSpecializationType>(T1); in IsStructurallyEquivalent()
1252 const auto *Elab1 = cast<ElaboratedType>(T1); in IsStructurallyEquivalent()
1269 const auto *Inj1 = cast<InjectedClassNameType>(T1); in IsStructurallyEquivalent()
1279 const auto *Typename1 = cast<DependentNameType>(T1); in IsStructurallyEquivalent()
1292 const auto *Spec1 = cast<DependentTemplateSpecializationType>(T1); in IsStructurallyEquivalent()
1308 cast<PackExpansionType>(T1)->getPattern(), in IsStructurallyEquivalent()
1315 cast<PackIndexingType>(T1)->getPattern(), in IsStructurallyEquivalent()
1318 cast<PackIndexingType>(T1)->getIndexExpr(), in IsStructurallyEquivalent()
1324 const auto *Iface1 = cast<ObjCInterfaceType>(T1); in IsStructurallyEquivalent()
1333 const auto *Obj1 = cast<ObjCTypeParamType>(T1); in IsStructurallyEquivalent()
1349 const auto *Obj1 = cast<ObjCObjectType>(T1); in IsStructurallyEquivalent()
1365 const auto *Ptr1 = cast<ObjCObjectPointerType>(T1); in IsStructurallyEquivalent()
1374 if (!IsStructurallyEquivalent(Context, cast<AtomicType>(T1)->getValueType(), in IsStructurallyEquivalent()
1380 if (!IsStructurallyEquivalent(Context, cast<PipeType>(T1)->getElementType(), in IsStructurallyEquivalent()
1385 const auto *Int1 = cast<BitIntType>(T1); in IsStructurallyEquivalent()
1394 const auto *Int1 = cast<DependentBitIntType>(T1); in IsStructurallyEquivalent()
2430 bool StructuralEquivalenceContext::IsEquivalent(QualType T1, QualType T2) { in IsEquivalent() argument
2433 if (!::IsStructurallyEquivalent(*this, T1, T2)) in IsEquivalent()