summaryrefslogtreecommitdiffstats
path: root/clang/test/Misc/pragma-attribute-cxx-subject-match-rules.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'clang/test/Misc/pragma-attribute-cxx-subject-match-rules.cpp')
-rw-r--r--clang/test/Misc/pragma-attribute-cxx-subject-match-rules.cpp169
1 files changed, 0 insertions, 169 deletions
diff --git a/clang/test/Misc/pragma-attribute-cxx-subject-match-rules.cpp b/clang/test/Misc/pragma-attribute-cxx-subject-match-rules.cpp
deleted file mode 100644
index b7741343ad4..00000000000
--- a/clang/test/Misc/pragma-attribute-cxx-subject-match-rules.cpp
+++ /dev/null
@@ -1,169 +0,0 @@
-// RUN: %clang_cc1 -std=c++11 -fsyntax-only -ast-dump -ast-dump-filter test "-DSUBJECT=namespace" %s | FileCheck --check-prefix=CHECK-NAMESPACE %s
-// RUN: %clang_cc1 -std=c++11 -fsyntax-only -ast-dump -ast-dump-filter test "-DSUBJECT=type_alias" %s | FileCheck --check-prefix=CHECK-TYPE_ALIAS %s
-// RUN: %clang_cc1 -std=c++11 -fsyntax-only -ast-dump -ast-dump-filter test "-DSUBJECT=enum" %s | FileCheck --check-prefix=CHECK-ENUM %s
-// RUN: %clang_cc1 -std=c++11 -fsyntax-only -ast-dump -ast-dump-filter test "-DSUBJECT=enum_constant" %s | FileCheck --check-prefix=CHECK-ENUM_CONSTANT %s
-// RUN: %clang_cc1 -std=c++11 -fsyntax-only -ast-dump -ast-dump-filter test "-DSUBJECT=record" %s | FileCheck --check-prefix=CHECK-RECORD %s
-// RUN: %clang_cc1 -std=c++11 -fsyntax-only -ast-dump -ast-dump-filter test "-DSUBJECT=record(unless(is_union))" %s | FileCheck --check-prefix=CHECK-RECORD_UNLESS_IS_UNION %s
-// RUN: %clang_cc1 -std=c++11 -fsyntax-only -ast-dump -ast-dump-filter test "-DSUBJECT=field" %s | FileCheck --check-prefix=CHECK-FIELD %s
-// RUN: %clang_cc1 -std=c++11 -fsyntax-only -ast-dump -ast-dump-filter test "-DSUBJECT=function" %s | FileCheck --check-prefix=CHECK-FUNCTION %s
-// RUN: %clang_cc1 -std=c++11 -fsyntax-only -ast-dump -ast-dump-filter test "-DSUBJECT=hasType(functionType)" %s | FileCheck --check-prefix=CHECK-HAS_TYPE_FUNCTION_TYPE %s
-// RUN: %clang_cc1 -std=c++11 -fsyntax-only -ast-dump -ast-dump-filter test "-DSUBJECT=function(is_member)" %s | FileCheck --check-prefix=CHECK-FUNCTION_IS_MEMBER %s
-// RUN: %clang_cc1 -std=c++11 -fsyntax-only -ast-dump -ast-dump-filter test "-DSUBJECT=variable" %s | FileCheck --check-prefix=CHECK-VARIABLE %s
-// RUN: %clang_cc1 -std=c++11 -fsyntax-only -ast-dump -ast-dump-filter test "-DSUBJECT=variable(is_global)" %s | FileCheck --check-prefix=CHECK-VARIABLE_IS_GLOBAL %s
-// RUN: %clang_cc1 -std=c++11 -fsyntax-only -ast-dump -ast-dump-filter test "-DSUBJECT=variable(is_parameter)" %s | FileCheck --check-prefix=CHECK-VARIABLE_IS_PARAMETER %s
-// RUN: %clang_cc1 -std=c++11 -fsyntax-only -ast-dump -ast-dump-filter test "-DSUBJECT=variable(unless(is_parameter))" %s | FileCheck --check-prefix=CHECK-VARIABLE_UNLESS_IS_PARAMETER %s
-
-#pragma clang attribute push (__attribute__((annotate("test"))), apply_to = any(SUBJECT))
-
-namespace testNamespace {
-// CHECK-NAMESPACE: NamespaceDecl{{.*}} testNamespace
-// CHECK-NAMESPACE-NEXT: AnnotateAttr{{.*}} "test"
-
-typedef int testTypedef;
-// CHECK-TYPE_ALIAS: TypedefDecl{{.*}} testTypedef
-// CHECK-TYPE_ALIAS-NEXT: BuiltinType
-// CHECK-TYPE_ALIAS-NEXT: AnnotateAttr{{.*}} "test"
-
-using testTypeAlias = double;
-// CHECK-TYPE_ALIAS: TypeAliasDecl{{.*}} testTypeAlias
-// CHECK-TYPE_ALIAS-NEXT: BuiltinType
-// CHECK-TYPE_ALIAS-NEXT: AnnotateAttr{{.*}} "test"
-
-enum testEnum {
- testEnumCase1,
- testEnumCase2
-};
-// CHECK-ENUM: EnumDecl{{.*}} testEnum
-// CHECK-ENUM-NEXT: AnnotateAttr{{.*}} "test"
-// CHECK-ENUM_CONSTANT: EnumConstantDecl{{.*}} testEnumCase1
-// CHECK-ENUM_CONSTANT-NEXT: AnnotateAttr{{.*}} "test"
-// CHECK-ENUM_CONSTANT: EnumConstantDecl{{.*}} testEnumCase2
-// CHECK-ENUM_CONSTANT-NEXT: AnnotateAttr{{.*}} "test"
-
-struct testStructRecord {
- int testStructRecordField;
-};
-// CHECK-RECORD: CXXRecordDecl{{.*}} testStructRecord
-// CHECK-RECORD-NEXT: AnnotateAttr{{.*}} "test"
-// CHECK-RECORD_UNLESS_IS_UNION-LABEL: CXXRecordDecl{{.*}} testStructRecord
-// CHECK-RECORD_UNLESS_IS_UNION-NEXT: AnnotateAttr{{.*}} "test"
-// CHECK-FIELD: FieldDecl{{.*}} testStructRecordField
-// CHECK-FIELD-NEXT: AnnotateAttr{{.*}} "test"
-
-class testClassRecord {
- int testClassRecordField;
-};
-// CHECK-RECORD: CXXRecordDecl{{.*}} testClassRecord
-// CHECK-RECORD-NEXT: AnnotateAttr{{.*}} "test"
-// CHECK-RECORD_UNLESS_IS_UNION-LABEL: CXXRecordDecl{{.*}} testClassRecord
-// CHECK-RECORD_UNLESS_IS_UNION-NEXT: AnnotateAttr{{.*}} "test"
-// CHECK-FIELD: FieldDecl{{.*}} testClassRecordField
-// CHECK-FIELD-NEXT: AnnotateAttr{{.*}} "test"
-
-union testUnionRecord {
- int testUnionRecordField;
-};
-// CHECK-RECORD: CXXRecordDecl{{.*}} testUnionRecord
-// CHECK-RECORD-NEXT: AnnotateAttr{{.*}} "test"
-// CHECK-RECORD_UNLESS_IS_UNION-LABEL: CXXRecordDecl{{.*}} testUnionRecord
-// CHECK-RECORD_UNLESS_IS_UNION-NOT: AnnotateAttr{{.*}} "test"
-// CHECK-FIELD: FieldDecl{{.*}} testUnionRecordField
-// CHECK-FIELD-NEXT: AnnotateAttr{{.*}} "test"
-
-// CHECK-RECORD_UNLESS_IS_UNION-LABEL: CXXRecordDecl
-void testFunctionDecl();
-// CHECK-FUNCTION: FunctionDecl{{.*}} testFunctionDecl
-// CHECK-FUNCTION-NEXT: AnnotateAttr{{.*}} "test"
-// CHECK-HAS_TYPE_FUNCTION_TYPE: FunctionDecl{{.*}} testFunctionDecl
-// CHECK-HAS_TYPE_FUNCTION_TYPE-NEXT: AnnotateAttr{{.*}} "test"
-
-void testFunctionDecl() { }
-// CHECK-FUNCTION: FunctionDecl{{.*}} testFunctionDecl
-// CHECK-FUNCTION-NEXT: CompoundStmt
-// CHECK-FUNCTION-NEXT: AnnotateAttr{{.*}} "test"
-// CHECK-HAS_TYPE_FUNCTION_TYPE: FunctionDecl{{.*}} testFunctionDecl
-// CHECK-HAS_TYPE_FUNCTION_TYPE-NEXT: CompoundStmt
-// CHECK-HAS_TYPE_FUNCTION_TYPE-NEXT: AnnotateAttr{{.*}} "test"
-
-void (*testFunctionVar)();
-// CHECK-HAS_TYPE_FUNCTION_TYPE: VarDecl{{.*}} testFunctionVar
-// CHECK-HAS_TYPE_FUNCTION_TYPE-NEXT: AnnotateAttr{{.*}} "test"
-// 'function' should not apply to variables with a function type!
-// CHECK-FUNCTION: VarDecl{{.*}} testFunctionVar
-// CHECK-FUNCTION-NOT: AnnotateAttr{{.*}} "test"
-
-class testMethods {
- testMethods();
- void testMethod();
-};
-void testMethods::testMethod() { }
-void testFunctionNotMethod();
-// CHECK-FUNCTION-LABEL: CXXConstructorDecl{{.*}} testMethods
-// CHECK-FUNCTION-NEXT: AnnotateAttr{{.*}} "test"
-// CHECK-FUNCTION_IS_MEMBER: CXXConstructorDecl{{.*}} testMethods
-// CHECK-FUNCTION_IS_MEMBER-NEXT: AnnotateAttr{{.*}} "test"
-// CHECK-HAS_TYPE_FUNCTION_TYPE: CXXConstructorDecl{{.*}} testMethods
-// CHECK-HAS_TYPE_FUNCTION_TYPE-NEXT: AnnotateAttr{{.*}} "test"
-// CHECK-FUNCTION: CXXMethodDecl{{.*}} testMethod
-// CHECK-FUNCTION-NEXT: AnnotateAttr{{.*}} "test"
-// CHECK-FUNCTION_IS_MEMBER: CXXMethodDecl{{.*}} testMethod
-// CHECK-FUNCTION_IS_MEMBER-NEXT: AnnotateAttr{{.*}} "test"
-// CHECK-HAS_TYPE_FUNCTION_TYPE: CXXMethodDecl{{.*}} testMethod
-// CHECK-HAS_TYPE_FUNCTION_TYPE-NEXT: AnnotateAttr{{.*}} "test"
-// CHECK-FUNCTION: CXXMethodDecl{{.*}} testMethod
-// CHECK-FUNCTION-NEXT: CompoundStmt
-// CHECK-FUNCTION-NEXT: AnnotateAttr{{.*}} "test"
-// CHECK-FUNCTION_IS_MEMBER: CXXMethodDecl{{.*}} testMethod
-// CHECK-FUNCTION_IS_MEMBER-NEXT: CompoundStmt
-// CHECK-CXX_METHOD-NEXT: AnnotateAttr{{.*}} "test"
-// CHECK-HAS_TYPE_FUNCTION_TYPE: CXXMethodDecl{{.*}} testMethod
-// CHECK-HAS_TYPE_FUNCTION_TYPE-NEXT: CompoundStmt
-// CHECK-HAS_TYPE_FUNCTION_TYPE-NEXT: AnnotateAttr{{.*}} "test"
-// CHECK-FUNCTION_IS_MEMBER: FunctionDecl{{.*}} testFunctionNotMethod
-// CHECK-FUNCTION_IS_MEMBER-NOT: AnnotateAttr{{.*}} "test"
-
-int testVariable;
-// CHECK-VARIABLE: VarDecl{{.*}} testVariable
-// CHECK-VARIABLE-NEXT: AnnotateAttr{{.*}} "test"
-// CHECK-VARIABLE_IS_GLOBAL-LABEL: VarDecl{{.*}} testVariable
-// CHECK-VARIABLE_IS_GLOBAL-NEXT: AnnotateAttr{{.*}} "test"
-// CHECK-VARIABLE_IS_PARAMETER-LABEL: VarDecl{{.*}} testVariable
-// CHECK-VARIABLE_IS_PARAMETER-NOT: AnnotateAttr{{.*}} "test"
-// CHECK-VARIABLE_UNLESS_IS_PARAMETER-LABEL: VarDecl{{.*}} testVariable
-// CHECK-VARIABLE_UNLESS_IS_PARAMETER-NEXT: AnnotateAttr{{.*}} "test"
-void testVarFunction(int testParam) {
-// CHECK-VARIABLE: VarDecl{{.*}} testParam
-// CHECK-VARIABLE-NEXT: AnnotateAttr{{.*}} "test"
-// CHECK-VARIABLE_IS_GLOBAL-LABEL: VarDecl{{.*}} testParam
-// CHECK-VARIABLE_IS_GLOBAL-NOT: AnnotateAttr{{.*}} "test"
-// CHECK-VARIABLE_IS_PARAMETER-LABEL: VarDecl{{.*}} testParam
-// CHECK-VARIABLE_IS_PARAMETER-NEXT: AnnotateAttr{{.*}} "test"
-// CHECK-VARIABLE_UNLESS_IS_PARAMETER-LABEL: VarDecl{{.*}} testParam
-// CHECK-VARIABLE_UNLESS_IS_PARAMETER-NOT: AnnotateAttr{{.*}} "test"
-
- int testLocalVariable;
-// CHECK-VARIABLE: VarDecl{{.*}} testLocalVariable
-// CHECK-VARIABLE-NEXT: AnnotateAttr{{.*}} "test"
-// CHECK-VARIABLE_IS_GLOBAL-LABEL: VarDecl{{.*}} testLocalVariable
-// CHECK-VARIABLE_IS_GLOBAL-NOT: AnnotateAttr{{.*}} "test"
-// CHECK-VARIABLE_IS_PARAMETER-LABEL: VarDecl{{.*}} testLocalVariable
-// CHECK-VARIABLE_IS_PARAMETER-NOT: AnnotateAttr{{.*}} "test"
-// CHECK-VARIABLE_UNLESS_IS_PARAMETER-LABEL: VarDecl{{.*}} testLocalVariable
-// CHECK-VARIABLE_UNLESS_IS_PARAMETER-NEXT: AnnotateAttr{{.*}} "test"
-}
-class testVarClass {
- static int testStaticVar;
-};
-// CHECK-VARIABLE: VarDecl{{.*}} testStaticVar
-// CHECK-VARIABLE-NEXT: AnnotateAttr{{.*}} "test"
-// CHECK-VARIABLE_IS_GLOBAL-LABEL: VarDecl{{.*}} testStaticVar
-// CHECK-VARIABLE_IS_GLOBAL-NEXT: AnnotateAttr{{.*}} "test"
-// CHECK-VARIABLE_IS_PARAMETER-LABEL: VarDecl{{.*}} testStaticVar
-// CHECK-VARIABLE_IS_PARAMETER-NOT: AnnotateAttr{{.*}} "test"
-// CHECK-VARIABLE_UNLESS_IS_PARAMETER-LABEL: VarDecl{{.*}} testStaticVar
-// CHECK-VARIABLE_UNLESS_IS_PARAMETER-NEXT: AnnotateAttr{{.*}} "test"
-
-
-}
-
-#pragma clang attribute pop
OpenPOWER on IntegriCloud