aboutsummaryrefslogtreecommitdiff
path: root/test/Parser
diff options
context:
space:
mode:
authorRoman Divacky <rdivacky@FreeBSD.org>2010-01-01 10:34:51 +0000
committerRoman Divacky <rdivacky@FreeBSD.org>2010-01-01 10:34:51 +0000
commitabe15e553e58165e7692c0d0842865c488ed7b45 (patch)
tree1e68501209c9133fbda8d45171e59f8d6f12dd55 /test/Parser
parent34d02d0b37f16015f317a935c48ce8b7b64ae77b (diff)
Notes
Diffstat (limited to 'test/Parser')
-rwxr-xr-xtest/Parser/2008-10-31-parse-noop-failure.c2
-rw-r--r--test/Parser/CompoundStmtScope.c2
-rw-r--r--test/Parser/MicrosoftExtensions.c8
-rw-r--r--test/Parser/argument_qualified.c2
-rw-r--r--test/Parser/argument_redef.c2
-rw-r--r--test/Parser/argument_scope.c2
-rw-r--r--test/Parser/asm.c2
-rw-r--r--test/Parser/attributes.c2
-rw-r--r--test/Parser/bad-control.c2
-rw-r--r--test/Parser/block-block-storageclass.c2
-rw-r--r--test/Parser/block-pointer-decl.c2
-rw-r--r--test/Parser/builtin_classify_type.c2
-rw-r--r--test/Parser/builtin_types_compatible.c2
-rw-r--r--test/Parser/c-namespace.c2
-rw-r--r--test/Parser/char-literal-printing.c2
-rw-r--r--test/Parser/check-objc2-syntax-1.m2
-rw-r--r--test/Parser/check-syntax-1.m2
-rw-r--r--test/Parser/check_cast.c2
-rw-r--r--test/Parser/compound_literal.c2
-rw-r--r--test/Parser/control-scope.c4
-rw-r--r--test/Parser/cxx-ambig-paren-expr.cpp42
-rw-r--r--test/Parser/cxx-attributes.cpp2
-rw-r--r--test/Parser/cxx-bool.cpp2
-rw-r--r--test/Parser/cxx-casting.cpp2
-rw-r--r--test/Parser/cxx-class.cpp2
-rw-r--r--test/Parser/cxx-condition.cpp2
-rw-r--r--test/Parser/cxx-decl.cpp4
-rw-r--r--test/Parser/cxx-exception-spec.cpp2
-rw-r--r--test/Parser/cxx-extern-c-array.cpp2
-rw-r--r--test/Parser/cxx-friend.cpp2
-rw-r--r--test/Parser/cxx-member-initializers.cpp2
-rw-r--r--test/Parser/cxx-namespace-alias.cpp2
-rw-r--r--test/Parser/cxx-reference.cpp2
-rw-r--r--test/Parser/cxx-stmt.cpp10
-rw-r--r--test/Parser/cxx-template-argument.cpp9
-rw-r--r--test/Parser/cxx-template-decl.cpp2
-rw-r--r--test/Parser/cxx-throw.cpp2
-rw-r--r--test/Parser/cxx-typeid.cpp2
-rw-r--r--test/Parser/cxx-typeof.cpp2
-rw-r--r--test/Parser/cxx-using-declaration.cpp2
-rw-r--r--test/Parser/cxx-using-directive.cpp2
-rw-r--r--test/Parser/cxx-variadic-func.cpp2
-rw-r--r--test/Parser/cxx0x-attributes.cpp2
-rw-r--r--test/Parser/cxx0x-literal-operators.cpp2
-rw-r--r--test/Parser/cxx0x-rvalue-reference.cpp2
-rw-r--r--test/Parser/declarators.c2
-rw-r--r--test/Parser/designator.c2
-rw-r--r--test/Parser/encode.m2
-rw-r--r--test/Parser/enhanced-proto-1.m2
-rw-r--r--test/Parser/expressions.c2
-rw-r--r--test/Parser/expressions.m2
-rw-r--r--test/Parser/extension.c2
-rw-r--r--test/Parser/function-decls.c2
-rw-r--r--test/Parser/goto-ident.c2
-rw-r--r--test/Parser/if-scope-c90.c2
-rw-r--r--test/Parser/if-scope-c99.c2
-rw-r--r--test/Parser/implicit-casts.c2
-rw-r--r--test/Parser/method-prototype-1.m2
-rw-r--r--test/Parser/namelookup-bug-1.c2
-rw-r--r--test/Parser/namelookup-bug-2.c2
-rw-r--r--test/Parser/namespace-alias-attr.cpp2
-rw-r--r--test/Parser/objc-alias-printing.m2
-rw-r--r--test/Parser/objc-category-neg-1.m2
-rw-r--r--test/Parser/objc-forcollection-1.m2
-rw-r--r--test/Parser/objc-forcollection-neg-2.m2
-rw-r--r--test/Parser/objc-forcollection-neg.m2
-rw-r--r--test/Parser/objc-foreach-syntax.m2
-rw-r--r--test/Parser/objc-init.m2
-rw-r--r--test/Parser/objc-interfaces.m2
-rw-r--r--test/Parser/objc-messaging-1.m2
-rw-r--r--test/Parser/objc-messaging-neg-1.m2
-rw-r--r--test/Parser/objc-missing-impl.m2
-rw-r--r--test/Parser/objc-property-syntax.m2
-rw-r--r--test/Parser/objc-quirks.m2
-rw-r--r--test/Parser/objc-synthesized-recover.m2
-rw-r--r--test/Parser/objc-try-catch-1.m4
-rw-r--r--test/Parser/objc-type-printing.m2
-rw-r--r--test/Parser/offsetof.c2
-rw-r--r--test/Parser/parmvardecl_conversion.c2
-rw-r--r--test/Parser/pointer-arithmetic.c2
-rw-r--r--test/Parser/pointer_promotion.c2
-rw-r--r--test/Parser/pragma-pack.c2
-rw-r--r--test/Parser/pragma-weak.c2
-rw-r--r--test/Parser/prefix-attributes.m2
-rw-r--r--test/Parser/promote_types_in_proto.c2
-rw-r--r--test/Parser/recovery.c2
-rw-r--r--test/Parser/selector-1.m2
-rw-r--r--test/Parser/statements.c2
-rw-r--r--test/Parser/struct-recursion.c2
-rw-r--r--test/Parser/top-level-semi-cxx0x.cpp2
-rw-r--r--test/Parser/traditional_arg_scope.c2
-rw-r--r--test/Parser/typeof.c2
-rw-r--r--test/Parser/types.c2
93 files changed, 157 insertions, 96 deletions
diff --git a/test/Parser/2008-10-31-parse-noop-failure.c b/test/Parser/2008-10-31-parse-noop-failure.c
index 8243cb973105..6df508ee4dde 100755
--- a/test/Parser/2008-10-31-parse-noop-failure.c
+++ b/test/Parser/2008-10-31-parse-noop-failure.c
@@ -1,4 +1,4 @@
-// RUN: clang-cc -verify -parse-noop %s
+// RUN: %clang_cc1 -verify -parse-noop %s
void add_attribute(id) int id; {}
diff --git a/test/Parser/CompoundStmtScope.c b/test/Parser/CompoundStmtScope.c
index 90e3d24a32f5..4f991031d0c3 100644
--- a/test/Parser/CompoundStmtScope.c
+++ b/test/Parser/CompoundStmtScope.c
@@ -1,4 +1,4 @@
-// RUN: clang-cc -fsyntax-only -verify %s
+// RUN: %clang_cc1 -fsyntax-only -verify %s
void foo() {
{
diff --git a/test/Parser/MicrosoftExtensions.c b/test/Parser/MicrosoftExtensions.c
index 9c804c354e5a..082929f6d843 100644
--- a/test/Parser/MicrosoftExtensions.c
+++ b/test/Parser/MicrosoftExtensions.c
@@ -1,4 +1,4 @@
-// RUN: clang-cc -fsyntax-only -verify -fms-extensions -x objective-c++ %s
+// RUN: %clang_cc1 -fsyntax-only -verify -fms-extensions -x objective-c++ %s
__stdcall int func0();
int __stdcall func();
typedef int (__cdecl *tptr)();
@@ -28,3 +28,9 @@ void foo() {
}
typedef bool (__stdcall __stdcall *blarg)(int);
+
+
+// Charify extension.
+#define FOO(x) #@x
+char x = FOO(a);
+
diff --git a/test/Parser/argument_qualified.c b/test/Parser/argument_qualified.c
index c9494e7373a0..7d1b9fdc2c33 100644
--- a/test/Parser/argument_qualified.c
+++ b/test/Parser/argument_qualified.c
@@ -1,4 +1,4 @@
-// RUN: clang-cc %s
+// RUN: %clang_cc1 %s
int abc (const float x) {
return 1;
}
diff --git a/test/Parser/argument_redef.c b/test/Parser/argument_redef.c
index fd22c465e5c6..519e8fd2033f 100644
--- a/test/Parser/argument_redef.c
+++ b/test/Parser/argument_redef.c
@@ -1,4 +1,4 @@
-/* RUN: clang-cc -fsyntax-only -verify %s
+/* RUN: %clang_cc1 -fsyntax-only -verify %s
*/
void foo(int A) { /* expected-note {{previous definition is here}} */
diff --git a/test/Parser/argument_scope.c b/test/Parser/argument_scope.c
index 5e6f439cfdf8..d2d10c249857 100644
--- a/test/Parser/argument_scope.c
+++ b/test/Parser/argument_scope.c
@@ -1,4 +1,4 @@
-// RUN: clang-cc -fsyntax-only %s
+// RUN: %clang_cc1 -fsyntax-only %s
typedef struct foo foo;
void blah(int foo) {
diff --git a/test/Parser/asm.c b/test/Parser/asm.c
index 9cf9046aab6a..df2e16feea5b 100644
--- a/test/Parser/asm.c
+++ b/test/Parser/asm.c
@@ -1,4 +1,4 @@
-// RUN: clang-cc -fsyntax-only -verify %s
+// RUN: %clang_cc1 -fsyntax-only -verify %s
void f1() {
asm ("ret" : : :); // expected-error {{expected string literal}}
diff --git a/test/Parser/attributes.c b/test/Parser/attributes.c
index cad39d382d18..ca606f5391ae 100644
--- a/test/Parser/attributes.c
+++ b/test/Parser/attributes.c
@@ -1,4 +1,4 @@
-// RUN: clang-cc -fsyntax-only -verify %s -pedantic -std=c99
+// RUN: %clang_cc1 -fsyntax-only -verify %s -pedantic -std=c99
int __attribute__(()) x;
diff --git a/test/Parser/bad-control.c b/test/Parser/bad-control.c
index 0bdd179af215..480d81be0d57 100644
--- a/test/Parser/bad-control.c
+++ b/test/Parser/bad-control.c
@@ -1,4 +1,4 @@
-/* RUN: clang-cc -fsyntax-only -verify %s
+/* RUN: %clang_cc1 -fsyntax-only -verify %s
*/
void foo() {
break; /* expected-error {{'break' statement not in loop or switch statement}} */
diff --git a/test/Parser/block-block-storageclass.c b/test/Parser/block-block-storageclass.c
index df9423460cd5..a4efc44b1828 100644
--- a/test/Parser/block-block-storageclass.c
+++ b/test/Parser/block-block-storageclass.c
@@ -1,4 +1,4 @@
-// RUN: clang-cc -fsyntax-only -verify -parse-noop %s
+// RUN: %clang_cc1 -fsyntax-only -verify -parse-noop %s
#if 0
int printf(const char *, ...);
void _Block_byref_release(void*src){}
diff --git a/test/Parser/block-pointer-decl.c b/test/Parser/block-pointer-decl.c
index 7a21651bad32..2979b012c449 100644
--- a/test/Parser/block-pointer-decl.c
+++ b/test/Parser/block-pointer-decl.c
@@ -1,4 +1,4 @@
-// RUN: clang-cc -fsyntax-only -verify -parse-noop -fblocks %s
+// RUN: %clang_cc1 -fsyntax-only -verify -parse-noop -fblocks %s
struct blockStruct {
int (^a)(float, int);
diff --git a/test/Parser/builtin_classify_type.c b/test/Parser/builtin_classify_type.c
index 7046310eb4a8..a7c08555c905 100644
--- a/test/Parser/builtin_classify_type.c
+++ b/test/Parser/builtin_classify_type.c
@@ -1,4 +1,4 @@
-// RUN: clang-cc -fsyntax-only -verify %s
+// RUN: %clang_cc1 -fsyntax-only -verify %s
struct foo { int a; };
diff --git a/test/Parser/builtin_types_compatible.c b/test/Parser/builtin_types_compatible.c
index 0664a9f55641..325615c7ee91 100644
--- a/test/Parser/builtin_types_compatible.c
+++ b/test/Parser/builtin_types_compatible.c
@@ -1,4 +1,4 @@
-// RUN: clang-cc -fsyntax-only -verify %s
+// RUN: %clang_cc1 -fsyntax-only -verify %s
extern int funcInt(int);
extern float funcFloat(float);
diff --git a/test/Parser/c-namespace.c b/test/Parser/c-namespace.c
index ffca15e6a2eb..fbef09e0cd79 100644
--- a/test/Parser/c-namespace.c
+++ b/test/Parser/c-namespace.c
@@ -1,4 +1,4 @@
-// RUN: clang-cc -fsyntax-only %s
+// RUN: %clang_cc1 -fsyntax-only %s
void bla1() {
struct XXX;
int XXX;
diff --git a/test/Parser/char-literal-printing.c b/test/Parser/char-literal-printing.c
index f6ad0ff511be..5843e5f40157 100644
--- a/test/Parser/char-literal-printing.c
+++ b/test/Parser/char-literal-printing.c
@@ -1,4 +1,4 @@
-// RUN: clang-cc -ast-print %s
+// RUN: %clang_cc1 -ast-print %s
#include <stddef.h>
diff --git a/test/Parser/check-objc2-syntax-1.m b/test/Parser/check-objc2-syntax-1.m
index aafb2e090a6a..3cdf2b05cf85 100644
--- a/test/Parser/check-objc2-syntax-1.m
+++ b/test/Parser/check-objc2-syntax-1.m
@@ -1,4 +1,4 @@
-// RUN: clang -cc1 -fsyntax-only -verify %s
+// RUN: %clang_cc1 -fsyntax-only -verify %s
@interface Subclass
+ (int)magicNumber;
diff --git a/test/Parser/check-syntax-1.m b/test/Parser/check-syntax-1.m
index 8ad207270c3f..a1999def5982 100644
--- a/test/Parser/check-syntax-1.m
+++ b/test/Parser/check-syntax-1.m
@@ -1,4 +1,4 @@
-// RUN: clang -cc1 -fsyntax-only -verify %s
+// RUN: %clang_cc1 -fsyntax-only -verify %s
int @interface bla ; // expected-error {{cannot combine with previous 'int' declaration specifier}}
@end
diff --git a/test/Parser/check_cast.c b/test/Parser/check_cast.c
index 4df851c7bf9f..790ee409c976 100644
--- a/test/Parser/check_cast.c
+++ b/test/Parser/check_cast.c
@@ -1,4 +1,4 @@
-// RUN: clang-cc -fsyntax-only -verify %s
+// RUN: %clang_cc1 -fsyntax-only -verify %s
struct foo {
int a;
};
diff --git a/test/Parser/compound_literal.c b/test/Parser/compound_literal.c
index c263763b2e2a..4f3609dc29f4 100644
--- a/test/Parser/compound_literal.c
+++ b/test/Parser/compound_literal.c
@@ -1,4 +1,4 @@
-// RUN: clang-cc -fsyntax-only -verify %s
+// RUN: %clang_cc1 -fsyntax-only -verify %s
int main() {
char *s;
s = (char []){"whatever"};
diff --git a/test/Parser/control-scope.c b/test/Parser/control-scope.c
index 8c4e19965edb..53149802c4cb 100644
--- a/test/Parser/control-scope.c
+++ b/test/Parser/control-scope.c
@@ -1,5 +1,5 @@
-// RUN: clang-cc %s -std=c90 -verify
-// RUN: clang-cc %s -std=c99
+// RUN: %clang_cc1 %s -std=c90 -verify
+// RUN: %clang_cc1 %s -std=c99
int f (int z) {
if (z + sizeof (enum {a})) // expected-note {{previous definition is here}}
diff --git a/test/Parser/cxx-ambig-paren-expr.cpp b/test/Parser/cxx-ambig-paren-expr.cpp
index 324f6b5f9f88..398820567237 100644
--- a/test/Parser/cxx-ambig-paren-expr.cpp
+++ b/test/Parser/cxx-ambig-paren-expr.cpp
@@ -1,4 +1,4 @@
-// RUN: clang-cc -fsyntax-only -pedantic -verify %s
+// RUN: %clang_cc1 -fsyntax-only -pedantic -verify %s
void f() {
typedef int T;
@@ -24,3 +24,43 @@ void f() {
// FIXME: Special case: "++" is postfix here, not prefix
// (S())++;
}
+
+// Make sure we do tentative parsing correctly in conditions.
+typedef int type;
+struct rec { rec(int); };
+
+namespace ns {
+ typedef int type;
+ struct rec { rec(int); };
+}
+
+struct cls {
+ typedef int type;
+ struct rec { rec(int); };
+};
+
+struct result {
+ template <class T> result(T);
+ bool check();
+};
+
+void test(int i) {
+ if (result((cls::type) i).check())
+ return;
+
+ if (result((ns::type) i).check())
+ return;
+
+ if (result((::type) i).check())
+ return;
+
+ if (result((cls::rec) i).check())
+ return;
+
+ if (result((ns::rec) i).check())
+ return;
+
+ if (result((::rec) i).check())
+ return;
+}
+
diff --git a/test/Parser/cxx-attributes.cpp b/test/Parser/cxx-attributes.cpp
index 743d9b9ec1f2..192193a6dfdc 100644
--- a/test/Parser/cxx-attributes.cpp
+++ b/test/Parser/cxx-attributes.cpp
@@ -1,4 +1,4 @@
-// RUN: clang-cc -fsyntax-only -verify %s
+// RUN: %clang_cc1 -fsyntax-only -verify %s
class c {
virtual void f1(const char* a, ...)
diff --git a/test/Parser/cxx-bool.cpp b/test/Parser/cxx-bool.cpp
index f0b3a9f9f038..a8a161edb105 100644
--- a/test/Parser/cxx-bool.cpp
+++ b/test/Parser/cxx-bool.cpp
@@ -1,4 +1,4 @@
-// RUN: clang-cc -fsyntax-only %s
+// RUN: %clang_cc1 -fsyntax-only %s
bool a = true;
bool b = false;
diff --git a/test/Parser/cxx-casting.cpp b/test/Parser/cxx-casting.cpp
index 1fdc28d2c880..c8b4716aa356 100644
--- a/test/Parser/cxx-casting.cpp
+++ b/test/Parser/cxx-casting.cpp
@@ -1,4 +1,4 @@
-// RUN: clang-cc -fsyntax-only %s
+// RUN: %clang_cc1 -fsyntax-only %s
char *const_cast_test(const char *var)
{
diff --git a/test/Parser/cxx-class.cpp b/test/Parser/cxx-class.cpp
index ff452b919114..576e57d0716a 100644
--- a/test/Parser/cxx-class.cpp
+++ b/test/Parser/cxx-class.cpp
@@ -1,4 +1,4 @@
-// RUN: clang-cc -fsyntax-only -verify %s
+// RUN: %clang_cc1 -fsyntax-only -verify %s
class C;
class C {
public:
diff --git a/test/Parser/cxx-condition.cpp b/test/Parser/cxx-condition.cpp
index 8fbca2a90f78..a3991c45f24e 100644
--- a/test/Parser/cxx-condition.cpp
+++ b/test/Parser/cxx-condition.cpp
@@ -1,4 +1,4 @@
-// RUN: clang-cc -parse-noop -verify %s
+// RUN: %clang_cc1 -parse-noop -verify %s
void f() {
int a;
diff --git a/test/Parser/cxx-decl.cpp b/test/Parser/cxx-decl.cpp
index 6f3fd391b95a..3c88b7adfa84 100644
--- a/test/Parser/cxx-decl.cpp
+++ b/test/Parser/cxx-decl.cpp
@@ -1,4 +1,4 @@
-// RUN: clang-cc -verify -fsyntax-only %s
+// RUN: %clang_cc1 -verify -fsyntax-only %s
int x(*g); // expected-error {{use of undeclared identifier 'g'}}
@@ -51,4 +51,4 @@ void test(struct Type *P) {
Type = 1 ? (
(y:b) // expected-error {{unexpected ':' in nested name specifier}}
4) : 5;
-} \ No newline at end of file
+}
diff --git a/test/Parser/cxx-exception-spec.cpp b/test/Parser/cxx-exception-spec.cpp
index 0a87ab702302..e6c3c757f012 100644
--- a/test/Parser/cxx-exception-spec.cpp
+++ b/test/Parser/cxx-exception-spec.cpp
@@ -1,4 +1,4 @@
-// RUN: clang-cc -fsyntax-only %s
+// RUN: %clang_cc1 -fsyntax-only %s
struct X { };
diff --git a/test/Parser/cxx-extern-c-array.cpp b/test/Parser/cxx-extern-c-array.cpp
index 1a04fa05c24e..14912fd1067b 100644
--- a/test/Parser/cxx-extern-c-array.cpp
+++ b/test/Parser/cxx-extern-c-array.cpp
@@ -1,4 +1,4 @@
-// RUN: clang-cc -fsyntax-only -verify %s
+// RUN: %clang_cc1 -fsyntax-only -verify %s
extern "C" int myarray[];
int myarray[12] = {0};
diff --git a/test/Parser/cxx-friend.cpp b/test/Parser/cxx-friend.cpp
index 6505ad0f6f76..2fe30cd3e428 100644
--- a/test/Parser/cxx-friend.cpp
+++ b/test/Parser/cxx-friend.cpp
@@ -1,4 +1,4 @@
-// RUN: clang-cc -fsyntax-only -verify %s
+// RUN: %clang_cc1 -fsyntax-only -verify %s
class C {
friend class D;
diff --git a/test/Parser/cxx-member-initializers.cpp b/test/Parser/cxx-member-initializers.cpp
index bebb5c5e40d1..34a725ff43af 100644
--- a/test/Parser/cxx-member-initializers.cpp
+++ b/test/Parser/cxx-member-initializers.cpp
@@ -1,4 +1,4 @@
-// RUN: clang-cc -fsyntax-only -verify %s
+// RUN: %clang_cc1 -fsyntax-only -verify %s
struct x {
x() : a(4) ; // expected-error {{expected '{'}}
diff --git a/test/Parser/cxx-namespace-alias.cpp b/test/Parser/cxx-namespace-alias.cpp
index 65e1459d379b..2e4d7af6bf30 100644
--- a/test/Parser/cxx-namespace-alias.cpp
+++ b/test/Parser/cxx-namespace-alias.cpp
@@ -1,4 +1,4 @@
-// RUN: clang-cc -parse-noop -verify %s
+// RUN: %clang_cc1 -parse-noop -verify %s
namespace A = B;
diff --git a/test/Parser/cxx-reference.cpp b/test/Parser/cxx-reference.cpp
index 0d2b9d29c369..46f9fb07dba0 100644
--- a/test/Parser/cxx-reference.cpp
+++ b/test/Parser/cxx-reference.cpp
@@ -1,4 +1,4 @@
-// RUN: clang-cc -fsyntax-only -verify %s
+// RUN: %clang_cc1 -fsyntax-only -verify %s
extern char *bork;
char *& bar = bork;
diff --git a/test/Parser/cxx-stmt.cpp b/test/Parser/cxx-stmt.cpp
index cc35ba153f6b..fdd573e6bfa5 100644
--- a/test/Parser/cxx-stmt.cpp
+++ b/test/Parser/cxx-stmt.cpp
@@ -1,4 +1,4 @@
-// RUN: clang-cc -fsyntax-only -verify %s
+// RUN: %clang_cc1 -fsyntax-only -verify %s
void f1()
{
@@ -51,4 +51,10 @@ void f4() {
switch (Kind) {
case Type: i = 7; break; // no error.
}
-} \ No newline at end of file
+}
+
+// PR5500
+void f5() {
+ asm volatile ("":: :"memory");
+ asm volatile ("": ::"memory");
+}
diff --git a/test/Parser/cxx-template-argument.cpp b/test/Parser/cxx-template-argument.cpp
new file mode 100644
index 000000000000..80389a07b0ac
--- /dev/null
+++ b/test/Parser/cxx-template-argument.cpp
@@ -0,0 +1,9 @@
+// RUN: %clang_cc1 -fsyntax-only -verify %s
+
+template<typename T> struct A {};
+
+// Check for template argument lists followed by junk
+// FIXME: The diagnostics here aren't great...
+A<int+> int x; // expected-error {{expected '>'}} expected-error {{expected unqualified-id}}
+A<int x; // expected-error {{expected '>'}} expected-error {{C++ requires a type specifier for all declarations}}
+
diff --git a/test/Parser/cxx-template-decl.cpp b/test/Parser/cxx-template-decl.cpp
index 644f0def79c9..5cb84a63069b 100644
--- a/test/Parser/cxx-template-decl.cpp
+++ b/test/Parser/cxx-template-decl.cpp
@@ -1,4 +1,4 @@
-// RUN: clang-cc -fsyntax-only -verify %s
+// RUN: %clang_cc1 -fsyntax-only -verify %s
// Errors
export class foo { }; // expected-error {{expected template}}
diff --git a/test/Parser/cxx-throw.cpp b/test/Parser/cxx-throw.cpp
index bcc49ec1b4fb..a87881647dd4 100644
--- a/test/Parser/cxx-throw.cpp
+++ b/test/Parser/cxx-throw.cpp
@@ -1,4 +1,4 @@
-// RUN: clang-cc -fsyntax-only -verify %s
+// RUN: %clang_cc1 -fsyntax-only -verify %s
int i;
diff --git a/test/Parser/cxx-typeid.cpp b/test/Parser/cxx-typeid.cpp
index 5a92e7322f1f..a825dc3cc7a5 100644
--- a/test/Parser/cxx-typeid.cpp
+++ b/test/Parser/cxx-typeid.cpp
@@ -1,4 +1,4 @@
-// RUN: clang-cc -fsyntax-only -verify %s
+// RUN: %clang_cc1 -fsyntax-only -verify %s
// FIXME: This should really include <typeinfo>, but we don't have that yet.
namespace std {
diff --git a/test/Parser/cxx-typeof.cpp b/test/Parser/cxx-typeof.cpp
index 0bf446316cfc..7e891013e92c 100644
--- a/test/Parser/cxx-typeof.cpp
+++ b/test/Parser/cxx-typeof.cpp
@@ -1,4 +1,4 @@
-// RUN: clang-cc -fsyntax-only -verify %s
+// RUN: %clang_cc1 -fsyntax-only -verify %s
static void test() {
int *pi;
diff --git a/test/Parser/cxx-using-declaration.cpp b/test/Parser/cxx-using-declaration.cpp
index 20c9fb391a80..2b2a69d1a421 100644
--- a/test/Parser/cxx-using-declaration.cpp
+++ b/test/Parser/cxx-using-declaration.cpp
@@ -1,4 +1,4 @@
-// RUN: clang-cc -fsyntax-only -verify %s
+// RUN: %clang_cc1 -fsyntax-only -verify %s
namespace A {
int VA;
diff --git a/test/Parser/cxx-using-directive.cpp b/test/Parser/cxx-using-directive.cpp
index 504d026b4391..1e918996d147 100644
--- a/test/Parser/cxx-using-directive.cpp
+++ b/test/Parser/cxx-using-directive.cpp
@@ -1,4 +1,4 @@
-// RUN: clang-cc -fsyntax-only -verify %s
+// RUN: %clang_cc1 -fsyntax-only -verify %s
class A {};
diff --git a/test/Parser/cxx-variadic-func.cpp b/test/Parser/cxx-variadic-func.cpp
index 86d6b6bf2c5d..b9360d6ed10a 100644
--- a/test/Parser/cxx-variadic-func.cpp
+++ b/test/Parser/cxx-variadic-func.cpp
@@ -1,4 +1,4 @@
-// RUN: clang-cc -fsyntax-only %s
+// RUN: %clang_cc1 -fsyntax-only %s
void f(...) {
int g(int(...));
diff --git a/test/Parser/cxx0x-attributes.cpp b/test/Parser/cxx0x-attributes.cpp
index a66e3e059766..67b2ea6f62ea 100644
--- a/test/Parser/cxx0x-attributes.cpp
+++ b/test/Parser/cxx0x-attributes.cpp
@@ -1,4 +1,4 @@
-// RUN: clang-cc -fsyntax-only -verify -std=c++0x %s
+// RUN: %clang_cc1 -fsyntax-only -verify -std=c++0x %s
// Declaration syntax checks
[[]] int before_attr;
diff --git a/test/Parser/cxx0x-literal-operators.cpp b/test/Parser/cxx0x-literal-operators.cpp
index c5514601d116..830754e56ae0 100644
--- a/test/Parser/cxx0x-literal-operators.cpp
+++ b/test/Parser/cxx0x-literal-operators.cpp
@@ -1,4 +1,4 @@
-// RUN: clang-cc -fsyntax-only -verify -std=c++0x %s
+// RUN: %clang_cc1 -fsyntax-only -verify -std=c++0x %s
void operator "" (); // expected-error {{expected identifier}}
void operator "k" foo(); // expected-error {{string literal after 'operator' must be '""'}}
diff --git a/test/Parser/cxx0x-rvalue-reference.cpp b/test/Parser/cxx0x-rvalue-reference.cpp
index 389f2b947003..ae568e8859c0 100644
--- a/test/Parser/cxx0x-rvalue-reference.cpp
+++ b/test/Parser/cxx0x-rvalue-reference.cpp
@@ -1,4 +1,4 @@
-// RUN: clang-cc -fsyntax-only -verify -std=c++0x %s
+// RUN: %clang_cc1 -fsyntax-only -verify -std=c++0x %s
int && r1(int &&a);
diff --git a/test/Parser/declarators.c b/test/Parser/declarators.c
index da8327a1e834..3831199c8d71 100644
--- a/test/Parser/declarators.c
+++ b/test/Parser/declarators.c
@@ -1,4 +1,4 @@
-// RUN: clang-cc %s -fsyntax-only -verify -pedantic
+// RUN: %clang_cc1 %s -fsyntax-only -verify -pedantic
extern int a1[];
diff --git a/test/Parser/designator.c b/test/Parser/designator.c
index 76c2d435227f..6badab7a75c3 100644
--- a/test/Parser/designator.c
+++ b/test/Parser/designator.c
@@ -1,4 +1,4 @@
-// RUN: clang-cc -fsyntax-only %s -verify -pedantic
+// RUN: %clang_cc1 -fsyntax-only %s -verify -pedantic
int X[] = {
[4]4, // expected-warning {{use of GNU 'missing =' extension in designator}}
diff --git a/test/Parser/encode.m b/test/Parser/encode.m
index 15e9fe9828be..e0e753508119 100644
--- a/test/Parser/encode.m
+++ b/test/Parser/encode.m
@@ -1,4 +1,4 @@
-// RUN: clang -cc1 -fsyntax-only -verify %s
+// RUN: %clang_cc1 -fsyntax-only -verify %s
int main(void) {
const char ch = @encode(char *)[2];
diff --git a/test/Parser/enhanced-proto-1.m b/test/Parser/enhanced-proto-1.m
index b80eb7d09d8f..a3819f3a1958 100644
--- a/test/Parser/enhanced-proto-1.m
+++ b/test/Parser/enhanced-proto-1.m
@@ -1,4 +1,4 @@
-// RUN: clang -cc1 -fsyntax-only -verify %s
+// RUN: %clang_cc1 -fsyntax-only -verify %s
@protocol MyProto1
@optional
diff --git a/test/Parser/expressions.c b/test/Parser/expressions.c
index 2b4d4636ebb1..44ebe661befd 100644
--- a/test/Parser/expressions.c
+++ b/test/Parser/expressions.c
@@ -1,4 +1,4 @@
-// RUN: clang-cc -parse-noop -verify %s
+// RUN: %clang_cc1 -parse-noop -verify %s
void test1() {
if (sizeof (int){ 1}); // sizeof compound literal
diff --git a/test/Parser/expressions.m b/test/Parser/expressions.m
index 9adc34af1fc7..e27f40506926 100644
--- a/test/Parser/expressions.m
+++ b/test/Parser/expressions.m
@@ -1,4 +1,4 @@
-// RUN: clang -cc1 -parse-noop %s
+// RUN: %clang_cc1 -parse-noop %s
void test1() {
@"s"; // expected-warning {{expression result unused}}
diff --git a/test/Parser/extension.c b/test/Parser/extension.c
index 519dc053c82f..fd4cf8086748 100644
--- a/test/Parser/extension.c
+++ b/test/Parser/extension.c
@@ -1,4 +1,4 @@
-/* RUN: clang-cc %s -fsyntax-only -pedantic -verify -std=c89
+/* RUN: %clang_cc1 %s -fsyntax-only -pedantic -verify -std=c89
*/
/* Top level extension marker. */
diff --git a/test/Parser/function-decls.c b/test/Parser/function-decls.c
index 28bb5c2e18da..db9a98b391e6 100644
--- a/test/Parser/function-decls.c
+++ b/test/Parser/function-decls.c
@@ -1,4 +1,4 @@
-/* RUN: clang-cc %s -ast-print
+/* RUN: %clang_cc1 %s -ast-print
*/
void foo() {
diff --git a/test/Parser/goto-ident.c b/test/Parser/goto-ident.c
index e8d1963e38c2..32051dc677ec 100644
--- a/test/Parser/goto-ident.c
+++ b/test/Parser/goto-ident.c
@@ -1,4 +1,4 @@
-/* RUN: clang-cc -fsyntax-only -verify %s
+/* RUN: %clang_cc1 -fsyntax-only -verify %s
*/
void foo() {
diff --git a/test/Parser/if-scope-c90.c b/test/Parser/if-scope-c90.c
index c372f0fc4f4d..c368fabb80ed 100644
--- a/test/Parser/if-scope-c90.c
+++ b/test/Parser/if-scope-c90.c
@@ -1,4 +1,4 @@
-// RUN: clang-cc -fsyntax-only -verify -std=c90 %s
+// RUN: %clang_cc1 -fsyntax-only -verify -std=c90 %s
int f (int z)
{
diff --git a/test/Parser/if-scope-c99.c b/test/Parser/if-scope-c99.c
index 0cb2495efce2..63f82e0f7aa7 100644
--- a/test/Parser/if-scope-c99.c
+++ b/test/Parser/if-scope-c99.c
@@ -1,4 +1,4 @@
-// RUN: clang-cc -fsyntax-only -verify -std=c99 %s
+// RUN: %clang_cc1 -fsyntax-only -verify -std=c99 %s
int f (int z)
{
diff --git a/test/Parser/implicit-casts.c b/test/Parser/implicit-casts.c
index 3e8f599047c4..900b4ece8bab 100644
--- a/test/Parser/implicit-casts.c
+++ b/test/Parser/implicit-casts.c
@@ -1,4 +1,4 @@
-// RUN: clang-cc -fsyntax-only -verify -pedantic %s
+// RUN: %clang_cc1 -fsyntax-only -verify -pedantic %s
_Complex double X;
void test1(int c) {
X = 5;
diff --git a/test/Parser/method-prototype-1.m b/test/Parser/method-prototype-1.m
index 86a912f46eb7..d2d9563a2ec4 100644
--- a/test/Parser/method-prototype-1.m
+++ b/test/Parser/method-prototype-1.m
@@ -1,4 +1,4 @@
-// RUN: clang -cc1 %s -parse-noop
+// RUN: %clang_cc1 %s -parse-noop
@interface MyObject
- (void) bycopy : (int) woodo, ... ;
- (void) break : (int) woodo, ... ;
diff --git a/test/Parser/namelookup-bug-1.c b/test/Parser/namelookup-bug-1.c
index 3c8b85a2d61a..8667a71657cc 100644
--- a/test/Parser/namelookup-bug-1.c
+++ b/test/Parser/namelookup-bug-1.c
@@ -1,4 +1,4 @@
-// RUN: clang-cc -verify %s
+// RUN: %clang_cc1 -verify %s
typedef int Object;
diff --git a/test/Parser/namelookup-bug-2.c b/test/Parser/namelookup-bug-2.c
index 42298c39c46f..84850ffafb17 100644
--- a/test/Parser/namelookup-bug-2.c
+++ b/test/Parser/namelookup-bug-2.c
@@ -1,4 +1,4 @@
-// RUN: clang-cc -verify %s
+// RUN: %clang_cc1 -verify %s
typedef int Object;
diff --git a/test/Parser/namespace-alias-attr.cpp b/test/Parser/namespace-alias-attr.cpp
index 9e4072cde225..ba809229a646 100644
--- a/test/Parser/namespace-alias-attr.cpp
+++ b/test/Parser/namespace-alias-attr.cpp
@@ -1,4 +1,4 @@
-// RUN: clang-cc -verify %s
+// RUN: %clang_cc1 -verify %s
namespace A
{
diff --git a/test/Parser/objc-alias-printing.m b/test/Parser/objc-alias-printing.m
index afb522cfa3d9..8b9cc6e13924 100644
--- a/test/Parser/objc-alias-printing.m
+++ b/test/Parser/objc-alias-printing.m
@@ -1,4 +1,4 @@
-// RUN: clang -cc1 -ast-print %s
+// RUN: %clang_cc1 -ast-print %s
@protocol P1 @end
@protocol P2 @end
diff --git a/test/Parser/objc-category-neg-1.m b/test/Parser/objc-category-neg-1.m
index 957dbde2d7fa..5799db0bd2e7 100644
--- a/test/Parser/objc-category-neg-1.m
+++ b/test/Parser/objc-category-neg-1.m
@@ -1,4 +1,4 @@
-// RUN: clang -cc1 -fsyntax-only -verify %s
+// RUN: %clang_cc1 -fsyntax-only -verify %s
void __assert_rtn(const char *, const char *, int, const char *) __attribute__((__noreturn__));
static __inline__ int __inline_isfinitef (float ) __attribute__ ((always_inline));
diff --git a/test/Parser/objc-forcollection-1.m b/test/Parser/objc-forcollection-1.m
index 6075332dcd5b..4850deb1fa9a 100644
--- a/test/Parser/objc-forcollection-1.m
+++ b/test/Parser/objc-forcollection-1.m
@@ -1,4 +1,4 @@
-// RUN: clang -cc1 -fsyntax-only %s
+// RUN: %clang_cc1 -fsyntax-only %s
typedef struct objc_class *Class;
typedef struct objc_object {
diff --git a/test/Parser/objc-forcollection-neg-2.m b/test/Parser/objc-forcollection-neg-2.m
index 9019d441a60a..e02c51c1ba35 100644
--- a/test/Parser/objc-forcollection-neg-2.m
+++ b/test/Parser/objc-forcollection-neg-2.m
@@ -1,4 +1,4 @@
-// RUN: clang -cc1 -fsyntax-only -verify %s
+// RUN: %clang_cc1 -fsyntax-only -verify %s
typedef struct objc_class *Class;
typedef struct objc_object {
diff --git a/test/Parser/objc-forcollection-neg.m b/test/Parser/objc-forcollection-neg.m
index 464759e0d175..0ba093efa08a 100644
--- a/test/Parser/objc-forcollection-neg.m
+++ b/test/Parser/objc-forcollection-neg.m
@@ -1,4 +1,4 @@
-// RUN: clang -cc1 -fsyntax-only -verify %s
+// RUN: %clang_cc1 -fsyntax-only -verify %s
typedef struct objc_class *Class;
typedef struct objc_object {
diff --git a/test/Parser/objc-foreach-syntax.m b/test/Parser/objc-foreach-syntax.m
index 294a6029378c..943540ef1f23 100644
--- a/test/Parser/objc-foreach-syntax.m
+++ b/test/Parser/objc-foreach-syntax.m
@@ -1,4 +1,4 @@
-// RUN: clang -cc1 -fsyntax-only -verify %s
+// RUN: %clang_cc1 -fsyntax-only -verify %s
diff --git a/test/Parser/objc-init.m b/test/Parser/objc-init.m
index b3f033ea25f1..0c23aebc878c 100644
--- a/test/Parser/objc-init.m
+++ b/test/Parser/objc-init.m
@@ -1,4 +1,4 @@
-// RUN: clang -cc1 -fsyntax-only -verify %s -pedantic
+// RUN: %clang_cc1 -fsyntax-only -verify %s -pedantic
// rdar://5707001
@interface NSNumber;
diff --git a/test/Parser/objc-interfaces.m b/test/Parser/objc-interfaces.m
index fdb52e763f2c..aac3faa4350a 100644
--- a/test/Parser/objc-interfaces.m
+++ b/test/Parser/objc-interfaces.m
@@ -1,4 +1,4 @@
-// RUN: clang -cc1 %s -fsyntax-only -verify
+// RUN: %clang_cc1 %s -fsyntax-only -verify
// Test features and error recovery for objc interfaces.
diff --git a/test/Parser/objc-messaging-1.m b/test/Parser/objc-messaging-1.m
index 2ee3639b06cb..511290eabfc0 100644
--- a/test/Parser/objc-messaging-1.m
+++ b/test/Parser/objc-messaging-1.m
@@ -1,4 +1,4 @@
-// RUN: clang -cc1 %s -parse-noop
+// RUN: %clang_cc1 %s -parse-noop
int main ()
{
int i,j;
diff --git a/test/Parser/objc-messaging-neg-1.m b/test/Parser/objc-messaging-neg-1.m
index 4dcbb79a996a..0d0cb9d8d6fe 100644
--- a/test/Parser/objc-messaging-neg-1.m
+++ b/test/Parser/objc-messaging-neg-1.m
@@ -1,4 +1,4 @@
-// RUN: clang -cc1 -fsyntax-only -verify %s
+// RUN: %clang_cc1 -fsyntax-only -verify %s
int main() {
id a;
diff --git a/test/Parser/objc-missing-impl.m b/test/Parser/objc-missing-impl.m
index 392b26f63838..05d9d6c0b232 100644
--- a/test/Parser/objc-missing-impl.m
+++ b/test/Parser/objc-missing-impl.m
@@ -1,2 +1,2 @@
-// RUN: clang -cc1 -fsyntax-only -verify %s
+// RUN: %clang_cc1 -fsyntax-only -verify %s
@end // expected-warning {{@end must appear in an @implementation context}}
diff --git a/test/Parser/objc-property-syntax.m b/test/Parser/objc-property-syntax.m
index 294fb541e474..b5f57f305f39 100644
--- a/test/Parser/objc-property-syntax.m
+++ b/test/Parser/objc-property-syntax.m
@@ -1,4 +1,4 @@
-// RUN: clang -cc1 -fsyntax-only -verify %s
+// RUN: %clang_cc1 -fsyntax-only -verify %s
@interface MyClass {
diff --git a/test/Parser/objc-quirks.m b/test/Parser/objc-quirks.m
index 233739bc38d0..62984a458f36 100644
--- a/test/Parser/objc-quirks.m
+++ b/test/Parser/objc-quirks.m
@@ -1,4 +1,4 @@
-// RUN: clang -cc1 -fsyntax-only -verify %s
+// RUN: %clang_cc1 -fsyntax-only -verify %s
// FIXME: This is a horrible error message here. Fix.
int @"s" = 5; // expected-error {{prefix attribute must be}}
diff --git a/test/Parser/objc-synthesized-recover.m b/test/Parser/objc-synthesized-recover.m
index dbe9b1d93b61..3f04a8c21d39 100644
--- a/test/Parser/objc-synthesized-recover.m
+++ b/test/Parser/objc-synthesized-recover.m
@@ -1,4 +1,4 @@
-// RUN: clang -cc1 -fsyntax-only -verify %s
+// RUN: %clang_cc1 -fsyntax-only -verify %s
@interface I1
{
diff --git a/test/Parser/objc-try-catch-1.m b/test/Parser/objc-try-catch-1.m
index 25b52794a77d..1934cbd3b83d 100644
--- a/test/Parser/objc-try-catch-1.m
+++ b/test/Parser/objc-try-catch-1.m
@@ -1,5 +1,5 @@
-// RUN: clang -cc1 -fsyntax-only -verify %s
-// RUN: clang -cc1 -fsyntax-only -verify -x objective-c++ %s
+// RUN: %clang_cc1 -fsyntax-only -verify %s
+// RUN: %clang_cc1 -fsyntax-only -verify -x objective-c++ %s
void * proc();
@interface NSConstantString
diff --git a/test/Parser/objc-type-printing.m b/test/Parser/objc-type-printing.m
index e619b72ab6b1..9bbdac98bcbd 100644
--- a/test/Parser/objc-type-printing.m
+++ b/test/Parser/objc-type-printing.m
@@ -1,4 +1,4 @@
-// RUN: clang -cc1 -ast-print %s
+// RUN: %clang_cc1 -ast-print %s
@protocol P1 @end
@protocol P2 @end
diff --git a/test/Parser/offsetof.c b/test/Parser/offsetof.c
index 6c4e3feaa694..3a5b9f36c7f2 100644
--- a/test/Parser/offsetof.c
+++ b/test/Parser/offsetof.c
@@ -1,4 +1,4 @@
-// RUN: clang-cc -fsyntax-only -verify %s
+// RUN: %clang_cc1 -fsyntax-only -verify %s
struct a { struct { int b; } x[2]; };
diff --git a/test/Parser/parmvardecl_conversion.c b/test/Parser/parmvardecl_conversion.c
index f35487ee95c6..9fa8a6880a21 100644
--- a/test/Parser/parmvardecl_conversion.c
+++ b/test/Parser/parmvardecl_conversion.c
@@ -1,4 +1,4 @@
-// RUN: clang-cc -fsyntax-only -verify %s
+// RUN: %clang_cc1 -fsyntax-only -verify %s
void f (int p[]) { p++; }
diff --git a/test/Parser/pointer-arithmetic.c b/test/Parser/pointer-arithmetic.c
index d252b42c9b15..87eb1a270494 100644
--- a/test/Parser/pointer-arithmetic.c
+++ b/test/Parser/pointer-arithmetic.c
@@ -1,4 +1,4 @@
-// RUN: clang-cc -fsyntax-only -verify %s
+// RUN: %clang_cc1 -fsyntax-only -verify %s
int *test1(int *a) { return a + 1; }
int *test2(int *a) { return 1 + a; }
diff --git a/test/Parser/pointer_promotion.c b/test/Parser/pointer_promotion.c
index 3226eabbf53d..30589d01326f 100644
--- a/test/Parser/pointer_promotion.c
+++ b/test/Parser/pointer_promotion.c
@@ -1,4 +1,4 @@
-// RUN: clang-cc -fsyntax-only -verify %s
+// RUN: %clang_cc1 -fsyntax-only -verify %s
void test() {
void *vp;
diff --git a/test/Parser/pragma-pack.c b/test/Parser/pragma-pack.c
index d42bbe5c40d2..84778cd501d0 100644
--- a/test/Parser/pragma-pack.c
+++ b/test/Parser/pragma-pack.c
@@ -1,4 +1,4 @@
-// RUN: clang-cc -fsyntax-only -verify %s
+// RUN: %clang_cc1 -fsyntax-only -verify %s
// Note that this puts the expected lines before the directives to work around
// limitations in the -verify mode.
diff --git a/test/Parser/pragma-weak.c b/test/Parser/pragma-weak.c
index dca0f8dd4c15..7e5740b48308 100644
--- a/test/Parser/pragma-weak.c
+++ b/test/Parser/pragma-weak.c
@@ -1,4 +1,4 @@
-// RUN: clang-cc -fsyntax-only -verify %s
+// RUN: %clang_cc1 -fsyntax-only -verify %s
// Note that this puts the expected lines before the directives to work around
// limitations in the -verify mode.
diff --git a/test/Parser/prefix-attributes.m b/test/Parser/prefix-attributes.m
index 31be34076fe3..399421fd728f 100644
--- a/test/Parser/prefix-attributes.m
+++ b/test/Parser/prefix-attributes.m
@@ -1,4 +1,4 @@
-// RUN: clang -cc1 -verify -fsyntax-only %s
+// RUN: %clang_cc1 -verify -fsyntax-only %s
__attribute__((deprecated)) @class B; // expected-error {{prefix attribute must be followed by an interface or protocol}}
diff --git a/test/Parser/promote_types_in_proto.c b/test/Parser/promote_types_in_proto.c
index faff3e35d5a3..969ba28120f2 100644
--- a/test/Parser/promote_types_in_proto.c
+++ b/test/Parser/promote_types_in_proto.c
@@ -1,4 +1,4 @@
-// RUN: clang-cc %s
+// RUN: %clang_cc1 %s
void functionPromotion(void f(char *const []));
void arrayPromotion(char * const argv[]);
diff --git a/test/Parser/recovery.c b/test/Parser/recovery.c
index 43d3e2d8a69d..8e7181e0ba05 100644
--- a/test/Parser/recovery.c
+++ b/test/Parser/recovery.c
@@ -1,4 +1,4 @@
-// RUN: clang-cc -fsyntax-only -verify -pedantic -fblocks %s
+// RUN: %clang_cc1 -fsyntax-only -verify -pedantic -fblocks %s
// PR2241
float test2241[2] = {
diff --git a/test/Parser/selector-1.m b/test/Parser/selector-1.m
index fdc74ff4b424..1f9cad62aee3 100644
--- a/test/Parser/selector-1.m
+++ b/test/Parser/selector-1.m
@@ -1,4 +1,4 @@
-// RUN: clang -cc1 -parse-noop %s
+// RUN: %clang_cc1 -parse-noop %s
int main() {
SEL s = @selector(retain);
diff --git a/test/Parser/statements.c b/test/Parser/statements.c
index 25e06a27bd13..8fec0f1b262f 100644
--- a/test/Parser/statements.c
+++ b/test/Parser/statements.c
@@ -1,4 +1,4 @@
-// RUN: clang-cc -fsyntax-only -verify %s
+// RUN: %clang_cc1 -fsyntax-only -verify %s
void test1() {
{ ; { ;;}} ;;
diff --git a/test/Parser/struct-recursion.c b/test/Parser/struct-recursion.c
index 11e5f7e97ab1..834c5d0f771f 100644
--- a/test/Parser/struct-recursion.c
+++ b/test/Parser/struct-recursion.c
@@ -1,4 +1,4 @@
-// RUN: clang-cc %s -fsyntax-only
+// RUN: %clang_cc1 %s -fsyntax-only
// C99 6.7.2.3p11
diff --git a/test/Parser/top-level-semi-cxx0x.cpp b/test/Parser/top-level-semi-cxx0x.cpp
index e83fd9e8dbd7..592483c86bb6 100644
--- a/test/Parser/top-level-semi-cxx0x.cpp
+++ b/test/Parser/top-level-semi-cxx0x.cpp
@@ -1,4 +1,4 @@
-// RUN: clang-cc -fsyntax-only -pedantic -std=c++0x -verify %s
+// RUN: %clang_cc1 -fsyntax-only -pedantic -std=c++0x -verify %s
void foo();
diff --git a/test/Parser/traditional_arg_scope.c b/test/Parser/traditional_arg_scope.c
index 2a21ec3708d4..3811d0d88cde 100644
--- a/test/Parser/traditional_arg_scope.c
+++ b/test/Parser/traditional_arg_scope.c
@@ -1,4 +1,4 @@
-// RUN: clang-cc -fsyntax-only %s -verify
+// RUN: %clang_cc1 -fsyntax-only %s -verify
int x(a) int a; {return a;}
int y(b) int b; {return a;} // expected-error {{use of undeclared identifier}}
diff --git a/test/Parser/typeof.c b/test/Parser/typeof.c
index a7c488023ae2..cf0e47a6b124 100644
--- a/test/Parser/typeof.c
+++ b/test/Parser/typeof.c
@@ -1,4 +1,4 @@
-// RUN: clang-cc -fsyntax-only -verify %s
+// RUN: %clang_cc1 -fsyntax-only -verify %s
typedef int TInt;
diff --git a/test/Parser/types.c b/test/Parser/types.c
index 2131ab0346f4..0e8a63d81fc0 100644
--- a/test/Parser/types.c
+++ b/test/Parser/types.c
@@ -1,4 +1,4 @@
-// RUN: clang-cc %s -parse-noop
+// RUN: %clang_cc1 %s -parse-noop
// Test the X can be overloaded inside the struct.
typedef int X;