[clang] [llvm][Stmt]:Fix musttail attribute on a function with not_tail_called attribute has no warning/error (PR #134465)
Aaron Ballman via cfe-commits
cfe-commits at lists.llvm.org
Tue Apr 8 07:55:10 PDT 2025
================
@@ -717,6 +717,14 @@ bool Sema::checkMustTailAttr(const Stmt *St, const Attr &MTA) {
return false;
}
+ if (const FunctionDecl *CalleeDecl = CE->getDirectCallee()) {
+ if (CalleeDecl->hasAttr<NotTailCalledAttr>()) {
+ Diag(St->getBeginLoc(), diag::err_musttail_conflicts_with_not_tail_called)
+ << &MTA;
+ return false;
+ }
+ }
----------------
AaronBallman wrote:
```suggestion
if (const FunctionDecl *CalleeDecl = CE->getDirectCallee();
CalleeDecl && CalleeDecl->hasAttr<NotTailCalledAttr>()) {
Diag(St->getBeginLoc(), diag::err_musttail_conflicts_with_not_tail_called)
<< &MTA;
return false;
}
```
https://github.com/llvm/llvm-project/pull/134465
More information about the cfe-commits
mailing list