reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
6854 CXXRecordDecl *RD = MD->getParent(); 6856 assert(MD->isExplicitlyDefaulted() && CSM != CXXInvalid && 6861 bool First = MD == MD->getCanonicalDecl(); 6861 bool First = MD == MD->getCanonicalDecl(); 6880 if (MD->getNumParams() != ExpectedParams) { 6884 Diag(MD->getLocation(), diag::err_defaulted_special_member_params) 6885 << CSM << MD->getSourceRange(); 6887 } else if (MD->isVariadic()) { 6891 Diag(MD->getLocation(), diag::err_defaulted_special_member_variadic) 6892 << CSM << MD->getSourceRange(); 6897 const FunctionProtoType *Type = MD->getType()->getAs<FunctionProtoType>(); 6911 DeclType = Context.getAddrSpaceQualType(DeclType, MD->getMethodQualifiers().getAddressSpace()); 6915 Diag(MD->getLocation(), diag::err_defaulted_special_member_return_type) 6925 Diag(MD->getLocation(), diag::err_defaulted_special_member_quals) 6944 Diag(MD->getLocation(), 6954 Diag(MD->getLocation(), 6960 Diag(MD->getLocation(), 6970 Diag(MD->getLocation(), diag::err_defaulted_copy_assign_not_ref); 6986 (getLangOpts().CPlusPlus14 ? !isa<CXXDestructorDecl>(MD) 6987 : isa<CXXConstructorDecl>(MD))) && 6988 MD->isConstexpr() && !Constexpr && 6989 MD->getTemplatedKind() == FunctionDecl::TK_NonTemplate) { 6990 Diag(MD->getBeginLoc(), MD->isConsteval() 6990 Diag(MD->getBeginLoc(), MD->isConsteval() 7003 MD->setConstexprKind(Constexpr ? CSK_constexpr : CSK_unspecified); 7012 EPI.ExceptionSpec.SourceDecl = MD; 7013 MD->setType(Context.getFunctionType(ReturnType, 7020 if (ShouldDeleteForTypeMismatch || ShouldDeleteSpecialMember(MD, CSM)) { 7022 SetDeclDeleted(MD, MD->getLocation()); 7022 SetDeclDeleted(MD, MD->getLocation()); 7024 Diag(MD->getLocation(), diag::warn_defaulted_method_deleted) << CSM; 7026 Diag(MD->getLocation(), diag::note_deleted_type_mismatch) << CSM; 7028 ShouldDeleteSpecialMember(MD, CSM, nullptr, /*Diagnose*/true); 7032 Diag(MD->getLocation(), 7039 Diag(MD->getLocation(), diag::err_out_of_line_default_deletes) << CSM; 7041 ShouldDeleteSpecialMember(MD, CSM, nullptr, /*Diagnose*/true);