Lines Matching defs:AK
1510 static bool isRead(AccessKinds AK) {
1511 return AK == AK_Read || AK == AK_ReadObjectRepresentation;
1514 static bool isModification(AccessKinds AK) {
1515 switch (AK) {
1532 static bool isAnyAccess(AccessKinds AK) {
1533 return isRead(AK) || isModification(AK);
1537 static bool isFormalAccess(AccessKinds AK) {
1538 return isAnyAccess(AK) && AK != AK_Construct && AK != AK_Destroy;
1542 static bool isValidIndeterminateAccess(AccessKinds AK) {
1543 switch (AK) {
1702 AccessKinds AK) {
1703 return checkNullPointerDiagnosingWith([&Info, E, AK] {
1704 Info.FFDiag(E, diag::note_constexpr_access_null) << AK;
3567 static bool diagnoseMutableFields(EvalInfo &Info, const Expr *E, AccessKinds AK,
3583 Info.FFDiag(E, diag::note_constexpr_access_mutable, 1) << AK << Field;
3588 if (diagnoseMutableFields(Info, E, AK, Field->getType()))
3593 if (diagnoseMutableFields(Info, E, AK, BaseSpec.getType()))
3663 bool mayAccessMutableMembers(EvalInfo &Info, AccessKinds AK) const {
3668 if (!isAnyAccess(AK))
3931 AccessKinds AK = AK_Read) {
3932 assert(AK == AK_Read || AK == AK_ReadObjectRepresentation);
3933 ExtractSubobjectHandler Handler = {Info, E, Result, AK};
4054 AccessKinds AK, const LValue &LVal,
4062 Info.FFDiag(E, diag::note_constexpr_access_null) << AK;
4073 << AK << LVal.Base.is<const ValueDecl*>();
4079 bool IsAccess = isAnyAccess(AK);
4085 if (isFormalAccess(AK) && LValType.isVolatileQualified()) {
4088 << AK << LValType;
4106 if (isModification(AK)) {
4122 if (isModification(AK)) {
4132 if (isModification(AK)) {
4175 } else if (isModification(AK)) {
4234 Info.FFDiag(E, diag::note_constexpr_access_deleted_object) << AK;
4277 Info.FFDiag(E, diag::note_constexpr_access_static_temporary, 1) << AK;
4290 << AK
4315 (isModification(AK) && VisibleDepth < Info.SpeculativeEvaluationDepth))
4345 AccessKinds AK =
4385 return extractSubobject(Info, Conv, LitObj, LVal.Designator, RVal, AK);
4400 Info.FFDiag(Conv, diag::note_constexpr_access_past_end) << AK;
4411 CompleteObject Obj = findCompleteObject(Info, Conv, AK, LVal, Type);
4412 return Obj && extractSubobject(Info, Conv, Obj, LVal.Designator, RVal, AK);
4720 AccessKinds AK = IsIncrement ? AK_Increment : AK_Decrement;
4721 CompleteObject Obj = findCompleteObject(Info, E, AK, LVal, LValType);
4722 IncDecSubobjectHandler Handler = {Info, cast<UnaryOperator>(E), AK, Old};
5752 AccessKinds AK, bool Polymorphic) {
5756 CompleteObject Obj = findCompleteObject(Info, E, AK, This, QualType());
5770 << AK;
5780 << AK << Val.getAsString(Info.Ctx, StarThisType);
5786 CheckDynamicTypeHandler Handler{AK};
5821 AccessKinds AK) {
5825 if (!checkDynamicType(Info, E, This, AK, true))
10023 AccessKinds AK = AK_Construct;
10052 } Handler = {Info, E, AllocType, AK, nullptr};
10054 CompleteObject Obj = findCompleteObject(Info, E, AK, Result, AllocType);