diff options
Diffstat (limited to 'clang/lib/Sema/SemaDeclCXX.cpp')
-rw-r--r-- | clang/lib/Sema/SemaDeclCXX.cpp | 17 |
1 files changed, 2 insertions, 15 deletions
diff --git a/clang/lib/Sema/SemaDeclCXX.cpp b/clang/lib/Sema/SemaDeclCXX.cpp index 312e0e24828..529084a517b 100644 --- a/clang/lib/Sema/SemaDeclCXX.cpp +++ b/clang/lib/Sema/SemaDeclCXX.cpp @@ -14081,21 +14081,8 @@ void Sema::DiagnoseReturnInConstructorExceptionHandler(CXXTryStmt *TryBlock) { bool Sema::CheckOverridingFunctionAttributes(const CXXMethodDecl *New, const CXXMethodDecl *Old) { - const auto *NewFT = New->getType()->getAs<FunctionProtoType>(); - const auto *OldFT = Old->getType()->getAs<FunctionProtoType>(); - - if (OldFT->hasExtParameterInfos()) { - for (unsigned I = 0, E = OldFT->getNumParams(); I != E; ++I) - // A parameter of the overriding method should be annotated with noescape - // if the corresponding parameter of the overridden method is annotated. - if (OldFT->getExtParameterInfo(I).isNoEscape() && - !NewFT->getExtParameterInfo(I).isNoEscape()) { - Diag(New->getParamDecl(I)->getLocation(), - diag::warn_overriding_method_missing_noescape); - Diag(Old->getParamDecl(I)->getLocation(), - diag::note_overridden_marked_noescape); - } - } + const FunctionType *NewFT = New->getType()->getAs<FunctionType>(); + const FunctionType *OldFT = Old->getType()->getAs<FunctionType>(); CallingConv NewCC = NewFT->getCallConv(), OldCC = OldFT->getCallConv(); |