@@ -103,16 +103,13 @@ CXXRecordDecl::DefinitionData::DefinitionData(CXXRecordDecl *D)
103103 HasConstexprDefaultConstructor(false ),
104104 DefaultedDestructorIsConstexpr(true ),
105105 HasNonLiteralTypeFieldsOrBases(false ), StructuralIfLiteral(true ),
106- UserProvidedDefaultConstructor(false ), UserProvidedMoveAssignment(false ),
107- UserProvidedCopyAssignment(false ), ExplicitlyDeletedMoveAssignment(false ),
108- DeclaredSpecialMembers(0 ),
106+ UserProvidedDefaultConstructor(false ), DeclaredSpecialMembers(0 ),
109107 ImplicitCopyConstructorCanHaveConstParamForVBase(true ),
110108 ImplicitCopyConstructorCanHaveConstParamForNonVBase(true ),
111109 ImplicitCopyAssignmentHasConstParam(true ),
112110 HasDeclaredCopyConstructorWithConstParam(false ),
113111 HasDeclaredCopyAssignmentWithConstParam(false ),
114- IsAnyDestructorNoReturn(false ), IsHLSLIntangible(false ),
115- IsTriviallyRelocatable(false ), IsReplaceable(false ), IsLambda(false ),
112+ IsAnyDestructorNoReturn(false ), IsHLSLIntangible(false ), IsLambda(false ),
116113 IsParsingBaseSpecifiers(false ), ComputedVisibleConversions(false ),
117114 HasODRHash(false ), Definition(D) {}
118115
@@ -1532,10 +1529,6 @@ void CXXRecordDecl::addedEligibleSpecialMemberFunction(const CXXMethodDecl *MD,
15321529 if (DD->isNoReturn ())
15331530 data ().IsAnyDestructorNoReturn = true ;
15341531 }
1535- if (SMKind == SMF_CopyAssignment)
1536- data ().UserProvidedCopyAssignment = MD->isUserProvided ();
1537- else if (SMKind == SMF_MoveAssignment)
1538- data ().UserProvidedMoveAssignment = MD->isUserProvided ();
15391532 if (!MD->isImplicit () && !MD->isUserProvided ()) {
15401533 // This method is user-declared but not user-provided. We can't work
15411534 // out whether it's trivial yet (not until we get to the end of the
@@ -1557,9 +1550,6 @@ void CXXRecordDecl::addedEligibleSpecialMemberFunction(const CXXMethodDecl *MD,
15571550 if (!MD->isUserProvided ())
15581551 data ().DeclaredNonTrivialSpecialMembersForCall |= SMKind;
15591552 }
1560-
1561- if (MD->isDeleted () && SMKind == SMF_MoveAssignment)
1562- data ().ExplicitlyDeletedMoveAssignment = true ;
15631553}
15641554
15651555void CXXRecordDecl::finishedDefaultedOrDeletedMember (CXXMethodDecl *D) {
@@ -1587,11 +1577,8 @@ void CXXRecordDecl::finishedDefaultedOrDeletedMember(CXXMethodDecl *D) {
15871577 data ().HasIrrelevantDestructor = false ;
15881578 } else if (D->isCopyAssignmentOperator ())
15891579 SMKind |= SMF_CopyAssignment;
1590- else if (D->isMoveAssignmentOperator ()) {
1580+ else if (D->isMoveAssignmentOperator ())
15911581 SMKind |= SMF_MoveAssignment;
1592- if (!D->isIneligibleOrNotSelected () && D->isDeleted ())
1593- data ().ExplicitlyDeletedMoveAssignment = true ;
1594- }
15951582
15961583 // Update which trivial / non-trivial special members we have.
15971584 // addedMember will have skipped this step for this member.
0 commit comments