diff options
Diffstat (limited to 'clang')
-rw-r--r-- | clang/lib/Sema/SemaStmt.cpp | 4 | ||||
-rw-r--r-- | clang/test/CodeGen/asm.c | 6 |
2 files changed, 8 insertions, 2 deletions
diff --git a/clang/lib/Sema/SemaStmt.cpp b/clang/lib/Sema/SemaStmt.cpp index c2c1a0f56f6..990e951c3b6 100644 --- a/clang/lib/Sema/SemaStmt.cpp +++ b/clang/lib/Sema/SemaStmt.cpp @@ -915,9 +915,9 @@ Sema::OwningStmtResult Sema::ActOnAsmStmt(SourceLocation AsmLoc, << InputExpr->getType() << InputConstraint << InputExpr->getSubExpr()->getSourceRange()); } - - DefaultFunctionArrayConversion(Exprs[i]); } + + DefaultFunctionArrayConversion(Exprs[i]); } // Check that the clobbers are valid. diff --git a/clang/test/CodeGen/asm.c b/clang/test/CodeGen/asm.c index 26aa3bd61b3..e8088d40b13 100644 --- a/clang/test/CodeGen/asm.c +++ b/clang/test/CodeGen/asm.c @@ -27,3 +27,9 @@ void t5(int i) { asm("nop" : "=r"(i) : "0"(t5)); } + +// PR3641 +void t6(void) +{ + __asm__ volatile("" : : "i" (t6)); +} |