diff options
author | Ehsan Akhgari <ehsan.akhgari@gmail.com> | 2014-09-09 02:49:40 +0000 |
---|---|---|
committer | Ehsan Akhgari <ehsan.akhgari@gmail.com> | 2014-09-09 02:49:40 +0000 |
commit | 5c00c31cf8273b6f39ef370b763253927c863daf (patch) | |
tree | 156476d6f9af3c82345193d30015f3d831e7a75a /clang/lib/Sema/SemaDecl.cpp | |
parent | 8a8c3ba38cfba1c971db3ac5ec63a69f4b578a55 (diff) | |
download | bcm5719-llvm-5c00c31cf8273b6f39ef370b763253927c863daf.tar.gz bcm5719-llvm-5c00c31cf8273b6f39ef370b763253927c863daf.zip |
Allow empty statements in naked functions in addition to ASM statements
Summary: This fixes PR20883.
Test Plan: The patch includes an automated test.
Reviewers: hansw
Differential Revision: http://reviews.llvm.org/D5256
llvm-svn: 217413
Diffstat (limited to 'clang/lib/Sema/SemaDecl.cpp')
-rw-r--r-- | clang/lib/Sema/SemaDecl.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/clang/lib/Sema/SemaDecl.cpp b/clang/lib/Sema/SemaDecl.cpp index 27f69adff56..1f2cf7bc9f1 100644 --- a/clang/lib/Sema/SemaDecl.cpp +++ b/clang/lib/Sema/SemaDecl.cpp @@ -10426,7 +10426,7 @@ Decl *Sema::ActOnFinishFunctionBody(Decl *dcl, Stmt *Body, if (FD && FD->hasAttr<NakedAttr>()) { for (const Stmt *S : Body->children()) { - if (!isa<AsmStmt>(S)) { + if (!isa<AsmStmt>(S) && !isa<NullStmt>(S)) { Diag(S->getLocStart(), diag::err_non_asm_stmt_in_naked_function); Diag(FD->getAttr<NakedAttr>()->getLocation(), diag::note_attribute); FD->setInvalidDecl(); |