================ @@ -11889,6 +11889,13 @@ bool Sema::CheckFunctionDeclaration(Scope *S, FunctionDecl *NewFD, NewFD->setInvalidDecl(); } + if (NewFD->hasAttr<PureAttr>() || NewFD->hasAttr<ConstAttr>()) { + if (isa<CXXConstructorDecl>(NewFD)) + Diag(NewFD->getLocation(), diag::warn_pure_attr_on_cxx_constructor); + else if (NewFD->getReturnType()->isVoidType()) + Diag(NewFD->getLocation(), diag::warn_pure_function_returns_void); ---------------- kelbon wrote:
I think it may be confusing, because name 'const' is similar to keyword 'const', specially for constructor ```cpp struct A { A() const; } ``` But i will check now to improve it https://github.com/llvm/llvm-project/pull/78200 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits