reject invalid escape characters in extended-asm strings with a nice diagnostic.
llvm-svn: 66605
diff --git a/clang/test/Sema/asm.c b/clang/test/Sema/asm.c
index 3acb58a..d429b94 100644
--- a/clang/test/Sema/asm.c
+++ b/clang/test/Sema/asm.c
@@ -50,13 +50,16 @@
}
// <rdar://problem/6512595>
-void test5()
-{
+void test5() {
asm("nop" : : "X" (8));
}
// PR3385
-void test6(long i)
-{
+void test6(long i) {
asm("nop" : : "er"(i));
}
+
+void test7() {
+ asm("%!"); // simple asm string, %! is not an error.
+ asm("%!" : ); // expected-error {{invalid % escape in inline assembly string}}
+}