Lines Matching refs:Context

97 static bool IsStructurallyEquivalent(StructuralEquivalenceContext &Context,
99 static bool IsStructurallyEquivalent(StructuralEquivalenceContext &Context,
101 static bool IsStructurallyEquivalent(StructuralEquivalenceContext &Context,
106 static bool IsStructurallyEquivalent(StructuralEquivalenceContext &Context, in IsStructurallyEquivalent() argument
125 static bool IsStructurallyEquivalent(StructuralEquivalenceContext &Context, in IsStructurallyEquivalent() argument
137 if (!IsStructurallyEquivalent(Context, Prefix1, Prefix2)) in IsStructurallyEquivalent()
145 return IsStructurallyEquivalent(Context, NNS1->getAsNamespace(), in IsStructurallyEquivalent()
148 return IsStructurallyEquivalent(Context, NNS1->getAsNamespaceAlias(), in IsStructurallyEquivalent()
152 return IsStructurallyEquivalent(Context, QualType(NNS1->getAsType(), 0), in IsStructurallyEquivalent()
157 return IsStructurallyEquivalent(Context, NNS1->getAsRecordDecl(), in IsStructurallyEquivalent()
163 static bool IsStructurallyEquivalent(StructuralEquivalenceContext &Context, in IsStructurallyEquivalent() argument
170 return IsStructurallyEquivalent(Context, N1.getAsTemplateDecl(), in IsStructurallyEquivalent()
179 if (!IsStructurallyEquivalent(Context, *I1, *I2)) in IsStructurallyEquivalent()
187 return IsStructurallyEquivalent(Context, QN1->getDecl(), QN2->getDecl()) && in IsStructurallyEquivalent()
188 IsStructurallyEquivalent(Context, QN1->getQualifier(), in IsStructurallyEquivalent()
195 if (!IsStructurallyEquivalent(Context, DN1->getQualifier(), in IsStructurallyEquivalent()
209 return IsStructurallyEquivalent(Context, TS1->getParameter(), in IsStructurallyEquivalent()
211 IsStructurallyEquivalent(Context, TS1->getReplacement(), in IsStructurallyEquivalent()
219 return IsStructurallyEquivalent(Context, P1->getArgumentPack(), in IsStructurallyEquivalent()
221 IsStructurallyEquivalent(Context, P1->getParameterPack(), in IsStructurallyEquivalent()
229 static bool IsStructurallyEquivalent(StructuralEquivalenceContext &Context, in IsStructurallyEquivalent() argument
240 return IsStructurallyEquivalent(Context, Arg1.getAsType(), Arg2.getAsType()); in IsStructurallyEquivalent()
243 if (!IsStructurallyEquivalent(Context, Arg1.getIntegralType(), in IsStructurallyEquivalent()
251 return IsStructurallyEquivalent(Context, Arg1.getAsDecl(), Arg2.getAsDecl()); in IsStructurallyEquivalent()
257 return IsStructurallyEquivalent(Context, Arg1.getAsTemplate(), in IsStructurallyEquivalent()
261 return IsStructurallyEquivalent(Context, in IsStructurallyEquivalent()
266 return IsStructurallyEquivalent(Context, Arg1.getAsExpr(), in IsStructurallyEquivalent()
274 if (!IsStructurallyEquivalent(Context, Arg1.pack_begin()[I], in IsStructurallyEquivalent()
286 static bool IsArrayStructurallyEquivalent(StructuralEquivalenceContext &Context, in IsArrayStructurallyEquivalent() argument
289 if (!IsStructurallyEquivalent(Context, Array1->getElementType(), in IsArrayStructurallyEquivalent()
301 static bool IsStructurallyEquivalent(StructuralEquivalenceContext &Context, in IsStructurallyEquivalent() argument
309 if (!Context.StrictTypeSpelling) { in IsStructurallyEquivalent()
312 T1 = Context.FromCtx.getCanonicalType(T1); in IsStructurallyEquivalent()
313 T2 = Context.ToCtx.getCanonicalType(T2); in IsStructurallyEquivalent()
342 if (!IsStructurallyEquivalent(Context, in IsStructurallyEquivalent()
350 if (!IsStructurallyEquivalent(Context, in IsStructurallyEquivalent()
357 if (!IsStructurallyEquivalent(Context, in IsStructurallyEquivalent()
364 if (!IsStructurallyEquivalent(Context, in IsStructurallyEquivalent()
378 if (!IsStructurallyEquivalent(Context, Ref1->getPointeeTypeAsWritten(), in IsStructurallyEquivalent()
387 if (!IsStructurallyEquivalent(Context, MemPtr1->getPointeeType(), in IsStructurallyEquivalent()
390 if (!IsStructurallyEquivalent(Context, QualType(MemPtr1->getClass(), 0), in IsStructurallyEquivalent()
402 if (!IsArrayStructurallyEquivalent(Context, Array1, Array2)) in IsStructurallyEquivalent()
408 if (!IsArrayStructurallyEquivalent(Context, cast<ArrayType>(T1), in IsStructurallyEquivalent()
416 if (!IsStructurallyEquivalent(Context, Array1->getSizeExpr(), in IsStructurallyEquivalent()
420 if (!IsArrayStructurallyEquivalent(Context, Array1, Array2)) in IsStructurallyEquivalent()
429 if (!IsStructurallyEquivalent(Context, Array1->getSizeExpr(), in IsStructurallyEquivalent()
433 if (!IsArrayStructurallyEquivalent(Context, Array1, Array2)) in IsStructurallyEquivalent()
442 if (!IsStructurallyEquivalent(Context, DepAddressSpace1->getAddrSpaceExpr(), in IsStructurallyEquivalent()
445 if (!IsStructurallyEquivalent(Context, DepAddressSpace1->getPointeeType(), in IsStructurallyEquivalent()
455 if (!IsStructurallyEquivalent(Context, Vec1->getSizeExpr(), in IsStructurallyEquivalent()
458 if (!IsStructurallyEquivalent(Context, Vec1->getElementType(), in IsStructurallyEquivalent()
469 if (!IsStructurallyEquivalent(Context, Vec1->getSizeExpr(), in IsStructurallyEquivalent()
472 if (!IsStructurallyEquivalent(Context, Vec1->getElementType(), in IsStructurallyEquivalent()
482 if (!IsStructurallyEquivalent(Context, Vec1->getElementType(), in IsStructurallyEquivalent()
499 if (!IsStructurallyEquivalent(Context, Proto1->getParamType(I), in IsStructurallyEquivalent()
511 cast<FunctionProtoType>(OrigT1.getDesugaredType(Context.FromCtx)); in IsStructurallyEquivalent()
513 cast<FunctionProtoType>(OrigT2.getDesugaredType(Context.ToCtx)); in IsStructurallyEquivalent()
523 if (!IsStructurallyEquivalent(Context, OrigProto1->getExceptionType(I), in IsStructurallyEquivalent()
528 if (!IsStructurallyEquivalent(Context, OrigProto1->getNoexceptExpr(), in IsStructurallyEquivalent()
540 if (!IsStructurallyEquivalent(Context, Function1->getReturnType(), in IsStructurallyEquivalent()
549 if (!IsStructurallyEquivalent(Context, in IsStructurallyEquivalent()
556 if (!IsStructurallyEquivalent(Context, in IsStructurallyEquivalent()
561 Context, cast<AttributedType>(T1)->getEquivalentType(), in IsStructurallyEquivalent()
567 if (!IsStructurallyEquivalent(Context, cast<ParenType>(T1)->getInnerType(), in IsStructurallyEquivalent()
573 if (!IsStructurallyEquivalent(Context, cast<TypedefType>(T1)->getDecl(), in IsStructurallyEquivalent()
580 Context, cast<TypeOfExprType>(T1)->getUnderlyingExpr(), in IsStructurallyEquivalent()
586 if (!IsStructurallyEquivalent(Context, in IsStructurallyEquivalent()
594 Context, cast<UnaryTransformType>(T1)->getUnderlyingType(), in IsStructurallyEquivalent()
600 if (!IsStructurallyEquivalent(Context, in IsStructurallyEquivalent()
607 if (!IsStructurallyEquivalent(Context, cast<AutoType>(T1)->getDeducedType(), in IsStructurallyEquivalent()
615 if (!IsStructurallyEquivalent(Context, DT1->getTemplateName(), in IsStructurallyEquivalent()
618 if (!IsStructurallyEquivalent(Context, DT1->getDeducedType(), in IsStructurallyEquivalent()
626 if (!IsStructurallyEquivalent(Context, cast<TagType>(T1)->getDecl(), in IsStructurallyEquivalent()
648 if (!IsStructurallyEquivalent(Context, in IsStructurallyEquivalent()
652 if (!IsStructurallyEquivalent(Context, Subst1->getReplacementType(), in IsStructurallyEquivalent()
661 if (!IsStructurallyEquivalent(Context, in IsStructurallyEquivalent()
665 if (!IsStructurallyEquivalent(Context, Subst1->getArgumentPack(), in IsStructurallyEquivalent()
674 if (!IsStructurallyEquivalent(Context, Spec1->getTemplateName(), in IsStructurallyEquivalent()
680 if (!IsStructurallyEquivalent(Context, Spec1->getArg(I), in IsStructurallyEquivalent()
693 if (!IsStructurallyEquivalent(Context, Elab1->getQualifier(), in IsStructurallyEquivalent()
696 if (!IsStructurallyEquivalent(Context, Elab1->getNamedType(), in IsStructurallyEquivalent()
705 if (!IsStructurallyEquivalent(Context, in IsStructurallyEquivalent()
715 if (!IsStructurallyEquivalent(Context, Typename1->getQualifier(), in IsStructurallyEquivalent()
728 if (!IsStructurallyEquivalent(Context, Spec1->getQualifier(), in IsStructurallyEquivalent()
737 if (!IsStructurallyEquivalent(Context, Spec1->getArg(I), in IsStructurallyEquivalent()
745 if (!IsStructurallyEquivalent(Context, in IsStructurallyEquivalent()
754 if (!IsStructurallyEquivalent(Context, Iface1->getDecl(), in IsStructurallyEquivalent()
763 if (!IsStructurallyEquivalent(Context, Obj1->getDecl(), Obj2->getDecl())) in IsStructurallyEquivalent()
769 if (!IsStructurallyEquivalent(Context, Obj1->getProtocol(I), in IsStructurallyEquivalent()
779 if (!IsStructurallyEquivalent(Context, Obj1->getBaseType(), in IsStructurallyEquivalent()
785 if (!IsStructurallyEquivalent(Context, Obj1->getProtocol(I), in IsStructurallyEquivalent()
795 if (!IsStructurallyEquivalent(Context, Ptr1->getPointeeType(), in IsStructurallyEquivalent()
802 if (!IsStructurallyEquivalent(Context, cast<AtomicType>(T1)->getValueType(), in IsStructurallyEquivalent()
808 if (!IsStructurallyEquivalent(Context, cast<PipeType>(T1)->getElementType(), in IsStructurallyEquivalent()
818 static bool IsStructurallyEquivalent(StructuralEquivalenceContext &Context, in IsStructurallyEquivalent() argument
829 return IsStructurallyEquivalent(Context, D1, D2); in IsStructurallyEquivalent()
836 if (Context.Complain) { in IsStructurallyEquivalent()
837 Context.Diag2(Owner2->getLocation(), in IsStructurallyEquivalent()
838 Context.ErrorOnTagTypeMismatch in IsStructurallyEquivalent()
841 << Context.ToCtx.getTypeDeclType(Owner2); in IsStructurallyEquivalent()
842 Context.Diag2(Field2->getLocation(), diag::note_odr_field_name) in IsStructurallyEquivalent()
844 Context.Diag1(Field1->getLocation(), diag::note_odr_field_name) in IsStructurallyEquivalent()
850 if (!IsStructurallyEquivalent(Context, Field1->getType(), in IsStructurallyEquivalent()
852 if (Context.Complain) { in IsStructurallyEquivalent()
853 Context.Diag2(Owner2->getLocation(), in IsStructurallyEquivalent()
854 Context.ErrorOnTagTypeMismatch in IsStructurallyEquivalent()
857 << Context.ToCtx.getTypeDeclType(Owner2); in IsStructurallyEquivalent()
858 Context.Diag2(Field2->getLocation(), diag::note_odr_field) in IsStructurallyEquivalent()
860 Context.Diag1(Field1->getLocation(), diag::note_odr_field) in IsStructurallyEquivalent()
867 if (Context.Complain) { in IsStructurallyEquivalent()
868 Context.Diag2(Owner2->getLocation(), in IsStructurallyEquivalent()
869 Context.ErrorOnTagTypeMismatch in IsStructurallyEquivalent()
872 << Context.ToCtx.getTypeDeclType(Owner2); in IsStructurallyEquivalent()
874 Context.Diag1(Field1->getLocation(), diag::note_odr_bit_field) in IsStructurallyEquivalent()
876 << Field1->getBitWidthValue(Context.FromCtx); in IsStructurallyEquivalent()
877 Context.Diag2(Field2->getLocation(), diag::note_odr_not_bit_field) in IsStructurallyEquivalent()
880 Context.Diag2(Field2->getLocation(), diag::note_odr_bit_field) in IsStructurallyEquivalent()
882 << Field2->getBitWidthValue(Context.ToCtx); in IsStructurallyEquivalent()
883 Context.Diag1(Field1->getLocation(), diag::note_odr_not_bit_field) in IsStructurallyEquivalent()
892 unsigned Bits1 = Field1->getBitWidthValue(Context.FromCtx); in IsStructurallyEquivalent()
893 unsigned Bits2 = Field2->getBitWidthValue(Context.ToCtx); in IsStructurallyEquivalent()
896 if (Context.Complain) { in IsStructurallyEquivalent()
897 Context.Diag2(Owner2->getLocation(), in IsStructurallyEquivalent()
898 Context.ErrorOnTagTypeMismatch in IsStructurallyEquivalent()
901 << Context.ToCtx.getTypeDeclType(Owner2); in IsStructurallyEquivalent()
902 Context.Diag2(Field2->getLocation(), diag::note_odr_bit_field) in IsStructurallyEquivalent()
904 Context.Diag1(Field1->getLocation(), diag::note_odr_bit_field) in IsStructurallyEquivalent()
915 static bool IsStructurallyEquivalent(StructuralEquivalenceContext &Context, in IsStructurallyEquivalent() argument
944 if (!IsStructurallyEquivalent(Context, Conversion1->getConversionType(), in IsStructurallyEquivalent()
957 if (!::IsStructurallyEquivalent(Context, in IsStructurallyEquivalent()
965 static bool IsStructurallyEquivalent(StructuralEquivalenceContext &Context, in IsStructurallyEquivalent() argument
968 if (Context.Complain) { in IsStructurallyEquivalent()
969 Context.Diag2(D2->getLocation(), in IsStructurallyEquivalent()
970 Context.ErrorOnTagTypeMismatch in IsStructurallyEquivalent()
973 << Context.ToCtx.getTypeDeclType(D2); in IsStructurallyEquivalent()
974 Context.Diag1(D1->getLocation(), diag::note_odr_tag_kind_here) in IsStructurallyEquivalent()
1000 if (!IsStructurallyEquivalent(Context, Spec1->getSpecializedTemplate(), in IsStructurallyEquivalent()
1009 if (!IsStructurallyEquivalent(Context, Spec1->getTemplateArgs().get(I), in IsStructurallyEquivalent()
1031 if (Context.EqKind == StructuralEquivalenceKind::Minimal) in IsStructurallyEquivalent()
1048 if (Context.Complain) { in IsStructurallyEquivalent()
1049 Context.Diag2(D2->getLocation(), diag::warn_odr_tag_type_inconsistent) in IsStructurallyEquivalent()
1050 << Context.ToCtx.getTypeDeclType(D2); in IsStructurallyEquivalent()
1051 Context.Diag2(D2->getLocation(), diag::note_odr_number_of_bases) in IsStructurallyEquivalent()
1053 Context.Diag1(D1->getLocation(), diag::note_odr_number_of_bases) in IsStructurallyEquivalent()
1064 if (!IsStructurallyEquivalent(Context, Base1->getType(), in IsStructurallyEquivalent()
1066 if (Context.Complain) { in IsStructurallyEquivalent()
1067 Context.Diag2(D2->getLocation(), in IsStructurallyEquivalent()
1069 << Context.ToCtx.getTypeDeclType(D2); in IsStructurallyEquivalent()
1070 Context.Diag2(Base2->getBeginLoc(), diag::note_odr_base) in IsStructurallyEquivalent()
1072 Context.Diag1(Base1->getBeginLoc(), diag::note_odr_base) in IsStructurallyEquivalent()
1080 if (Context.Complain) { in IsStructurallyEquivalent()
1081 Context.Diag2(D2->getLocation(), in IsStructurallyEquivalent()
1083 << Context.ToCtx.getTypeDeclType(D2); in IsStructurallyEquivalent()
1084 Context.Diag2(Base2->getBeginLoc(), diag::note_odr_virtual_base) in IsStructurallyEquivalent()
1086 Context.Diag1(Base1->getBeginLoc(), diag::note_odr_base) in IsStructurallyEquivalent()
1100 if (Context.Complain) { in IsStructurallyEquivalent()
1101 Context.Diag2(D2->getLocation(), in IsStructurallyEquivalent()
1103 << Context.ToCtx.getTypeDeclType(D2CXX); in IsStructurallyEquivalent()
1104 Context.Diag1((*Friend1)->getFriendLoc(), diag::note_odr_friend); in IsStructurallyEquivalent()
1105 Context.Diag2(D2->getLocation(), diag::note_odr_missing_friend); in IsStructurallyEquivalent()
1110 if (!IsStructurallyEquivalent(Context, *Friend1, *Friend2)) { in IsStructurallyEquivalent()
1111 if (Context.Complain) { in IsStructurallyEquivalent()
1112 Context.Diag2(D2->getLocation(), diag::warn_odr_tag_type_inconsistent) in IsStructurallyEquivalent()
1113 << Context.ToCtx.getTypeDeclType(D2CXX); in IsStructurallyEquivalent()
1114 Context.Diag1((*Friend1)->getFriendLoc(), diag::note_odr_friend); in IsStructurallyEquivalent()
1115 Context.Diag2((*Friend2)->getFriendLoc(), diag::note_odr_friend); in IsStructurallyEquivalent()
1122 if (Context.Complain) { in IsStructurallyEquivalent()
1123 Context.Diag2(D2->getLocation(), diag::warn_odr_tag_type_inconsistent) in IsStructurallyEquivalent()
1124 << Context.ToCtx.getTypeDeclType(D2); in IsStructurallyEquivalent()
1125 Context.Diag2((*Friend2)->getFriendLoc(), diag::note_odr_friend); in IsStructurallyEquivalent()
1126 Context.Diag1(D1->getLocation(), diag::note_odr_missing_friend); in IsStructurallyEquivalent()
1131 if (Context.Complain) { in IsStructurallyEquivalent()
1132 Context.Diag2(D2->getLocation(), diag::warn_odr_tag_type_inconsistent) in IsStructurallyEquivalent()
1133 << Context.ToCtx.getTypeDeclType(D2); in IsStructurallyEquivalent()
1135 Context.Diag1(Base1->getBeginLoc(), diag::note_odr_base) in IsStructurallyEquivalent()
1137 Context.Diag2(D2->getLocation(), diag::note_odr_missing_base); in IsStructurallyEquivalent()
1150 if (Context.Complain) { in IsStructurallyEquivalent()
1151 Context.Diag2(D2->getLocation(), in IsStructurallyEquivalent()
1152 Context.ErrorOnTagTypeMismatch in IsStructurallyEquivalent()
1155 << Context.ToCtx.getTypeDeclType(D2); in IsStructurallyEquivalent()
1156 Context.Diag1(Field1->getLocation(), diag::note_odr_field) in IsStructurallyEquivalent()
1158 Context.Diag2(D2->getLocation(), diag::note_odr_missing_field); in IsStructurallyEquivalent()
1163 if (!IsStructurallyEquivalent(Context, *Field1, *Field2)) in IsStructurallyEquivalent()
1168 if (Context.Complain) { in IsStructurallyEquivalent()
1169 Context.Diag2(D2->getLocation(), in IsStructurallyEquivalent()
1170 Context.ErrorOnTagTypeMismatch in IsStructurallyEquivalent()
1173 << Context.ToCtx.getTypeDeclType(D2); in IsStructurallyEquivalent()
1174 Context.Diag2(Field2->getLocation(), diag::note_odr_field) in IsStructurallyEquivalent()
1176 Context.Diag1(D1->getLocation(), diag::note_odr_missing_field); in IsStructurallyEquivalent()
1185 static bool IsStructurallyEquivalent(StructuralEquivalenceContext &Context, in IsStructurallyEquivalent() argument
1201 if (Context.Complain) { in IsStructurallyEquivalent()
1202 Context.Diag2(D2->getLocation(), in IsStructurallyEquivalent()
1203 Context.ErrorOnTagTypeMismatch in IsStructurallyEquivalent()
1206 << Context.ToCtx.getTypeDeclType(D2); in IsStructurallyEquivalent()
1207 Context.Diag1(EC1->getLocation(), diag::note_odr_enumerator) in IsStructurallyEquivalent()
1209 Context.Diag2(D2->getLocation(), diag::note_odr_missing_enumerator); in IsStructurallyEquivalent()
1218 if (Context.Complain) { in IsStructurallyEquivalent()
1219 Context.Diag2(D2->getLocation(), in IsStructurallyEquivalent()
1220 Context.ErrorOnTagTypeMismatch in IsStructurallyEquivalent()
1223 << Context.ToCtx.getTypeDeclType(D2); in IsStructurallyEquivalent()
1224 Context.Diag2(EC2->getLocation(), diag::note_odr_enumerator) in IsStructurallyEquivalent()
1226 Context.Diag1(EC1->getLocation(), diag::note_odr_enumerator) in IsStructurallyEquivalent()
1234 if (Context.Complain) { in IsStructurallyEquivalent()
1235 Context.Diag2(D2->getLocation(), in IsStructurallyEquivalent()
1236 Context.ErrorOnTagTypeMismatch in IsStructurallyEquivalent()
1239 << Context.ToCtx.getTypeDeclType(D2); in IsStructurallyEquivalent()
1240 Context.Diag2(EC2->getLocation(), diag::note_odr_enumerator) in IsStructurallyEquivalent()
1242 Context.Diag1(D1->getLocation(), diag::note_odr_missing_enumerator); in IsStructurallyEquivalent()
1250 static bool IsStructurallyEquivalent(StructuralEquivalenceContext &Context, in IsStructurallyEquivalent() argument
1254 if (Context.Complain) { in IsStructurallyEquivalent()
1255 Context.Diag2(Params2->getTemplateLoc(), in IsStructurallyEquivalent()
1258 Context.Diag1(Params1->getTemplateLoc(), in IsStructurallyEquivalent()
1266 if (Context.Complain) { in IsStructurallyEquivalent()
1267 Context.Diag2(Params2->getParam(I)->getLocation(), in IsStructurallyEquivalent()
1269 Context.Diag1(Params1->getParam(I)->getLocation(), in IsStructurallyEquivalent()
1275 if (!IsStructurallyEquivalent(Context, Params1->getParam(I), in IsStructurallyEquivalent()
1283 static bool IsStructurallyEquivalent(StructuralEquivalenceContext &Context, in IsStructurallyEquivalent() argument
1287 if (Context.Complain) { in IsStructurallyEquivalent()
1288 Context.Diag2(D2->getLocation(), diag::err_odr_parameter_pack_non_pack) in IsStructurallyEquivalent()
1290 Context.Diag1(D1->getLocation(), diag::note_odr_parameter_pack_non_pack) in IsStructurallyEquivalent()
1299 static bool IsStructurallyEquivalent(StructuralEquivalenceContext &Context, in IsStructurallyEquivalent() argument
1303 if (Context.Complain) { in IsStructurallyEquivalent()
1304 Context.Diag2(D2->getLocation(), diag::err_odr_parameter_pack_non_pack) in IsStructurallyEquivalent()
1306 Context.Diag1(D1->getLocation(), diag::note_odr_parameter_pack_non_pack) in IsStructurallyEquivalent()
1313 if (!IsStructurallyEquivalent(Context, D1->getType(), D2->getType())) { in IsStructurallyEquivalent()
1314 if (Context.Complain) { in IsStructurallyEquivalent()
1315 Context.Diag2(D2->getLocation(), in IsStructurallyEquivalent()
1318 Context.Diag1(D1->getLocation(), diag::note_odr_value_here) in IsStructurallyEquivalent()
1327 static bool IsStructurallyEquivalent(StructuralEquivalenceContext &Context, in IsStructurallyEquivalent() argument
1331 if (Context.Complain) { in IsStructurallyEquivalent()
1332 Context.Diag2(D2->getLocation(), diag::err_odr_parameter_pack_non_pack) in IsStructurallyEquivalent()
1334 Context.Diag1(D1->getLocation(), diag::note_odr_parameter_pack_non_pack) in IsStructurallyEquivalent()
1341 return IsStructurallyEquivalent(Context, D1->getTemplateParameters(), in IsStructurallyEquivalent()
1356 static bool IsStructurallyEquivalent(StructuralEquivalenceContext &Context, in IsStructurallyEquivalent() argument
1360 if (!IsTemplateDeclCommonStructurallyEquivalent(Context, D1, D2)) in IsStructurallyEquivalent()
1364 return IsStructurallyEquivalent(Context, D1->getTemplatedDecl(), in IsStructurallyEquivalent()
1368 static bool IsStructurallyEquivalent(StructuralEquivalenceContext &Context, in IsStructurallyEquivalent() argument
1372 if (!IsTemplateDeclCommonStructurallyEquivalent(Context, D1, D2)) in IsStructurallyEquivalent()
1376 return IsStructurallyEquivalent(Context, D1->getTemplatedDecl()->getType(), in IsStructurallyEquivalent()
1380 static bool IsStructurallyEquivalent(StructuralEquivalenceContext &Context, in IsStructurallyEquivalent() argument
1387 return IsStructurallyEquivalent(Context, in IsStructurallyEquivalent()
1391 return IsStructurallyEquivalent(Context, D1->getFriendDecl(), in IsStructurallyEquivalent()
1396 static bool IsStructurallyEquivalent(StructuralEquivalenceContext &Context, in IsStructurallyEquivalent() argument
1399 if (!IsStructurallyEquivalent(Context, D1->getType(), D2->getType())) in IsStructurallyEquivalent()
1406 static bool IsStructurallyEquivalent(StructuralEquivalenceContext &Context, in IsStructurallyEquivalent() argument
1412 if (Context.NonEquivalentDecls.count( in IsStructurallyEquivalent()
1417 Decl *&EquivToD1 = Context.TentativeEquivalences[D1->getCanonicalDecl()]; in IsStructurallyEquivalent()
1423 Context.DeclsToCheck.push_back(D1->getCanonicalDecl()); in IsStructurallyEquivalent()
1447 ASTContext &Context = Anon->getASTContext(); in findUntaggedStructOrUnionIndex() local
1448 QualType AnonTy = Context.getRecordType(Anon); in findUntaggedStructOrUnionIndex()
1461 if (Context.hasSameType(F->getType(), AnonTy)) in findUntaggedStructOrUnionIndex()
1477 if (Context.hasSameType(FieldType, AnonTy)) in findUntaggedStructOrUnionIndex()