r348017 - Move AST tests into their own test directory; NFC.
Aaron Ballman via cfe-commits
cfe-commits at lists.llvm.org
Fri Nov 30 10:43:03 PST 2018
Author: aaronballman
Date: Fri Nov 30 10:43:02 2018
New Revision: 348017
URL: http://llvm.org/viewvc/llvm-project?rev=348017&view=rev
Log:
Move AST tests into their own test directory; NFC.
This moves everything primarily testing the functionality of -ast-dump and -ast-print into their own directory, rather than leaving the tests spread around the testing directory.
Added:
cfe/trunk/test/AST/
cfe/trunk/test/AST/Inputs/
cfe/trunk/test/AST/Inputs/module.modulemap
- copied unchanged from r348016, cfe/trunk/test/Misc/Inputs/module.modulemap
cfe/trunk/test/AST/ast-dump-arm-attr.c
- copied unchanged from r348016, cfe/trunk/test/Misc/ast-dump-arm-attr.c
cfe/trunk/test/AST/ast-dump-attr.cpp
- copied unchanged from r348016, cfe/trunk/test/Misc/ast-dump-attr.cpp
cfe/trunk/test/AST/ast-dump-attr.m
- copied unchanged from r348016, cfe/trunk/test/Misc/ast-dump-attr.m
cfe/trunk/test/AST/ast-dump-c-attr.c
- copied unchanged from r348016, cfe/trunk/test/Misc/ast-dump-c-attr.c
cfe/trunk/test/AST/ast-dump-color.cpp
- copied unchanged from r348016, cfe/trunk/test/Misc/ast-dump-color.cpp
cfe/trunk/test/AST/ast-dump-comment.cpp
- copied unchanged from r348016, cfe/trunk/test/Misc/ast-dump-comment.cpp
cfe/trunk/test/AST/ast-dump-decl-stmts.cpp
- copied unchanged from r348016, cfe/trunk/test/Misc/ast-dump-decl-stmts.cpp
cfe/trunk/test/AST/ast-dump-decl.c
- copied unchanged from r348016, cfe/trunk/test/Misc/ast-dump-decl.c
cfe/trunk/test/AST/ast-dump-decl.cpp
- copied unchanged from r348016, cfe/trunk/test/Misc/ast-dump-decl.cpp
cfe/trunk/test/AST/ast-dump-decl.m
- copied unchanged from r348016, cfe/trunk/test/Misc/ast-dump-decl.m
cfe/trunk/test/AST/ast-dump-decl.mm
- copied unchanged from r348016, cfe/trunk/test/Misc/ast-dump-decl.mm
cfe/trunk/test/AST/ast-dump-funcs.cpp
- copied unchanged from r348016, cfe/trunk/test/Misc/ast-dump-funcs.cpp
cfe/trunk/test/AST/ast-dump-invalid.cpp
- copied unchanged from r348016, cfe/trunk/test/Misc/ast-dump-invalid.cpp
cfe/trunk/test/AST/ast-dump-lookups.cpp
- copied unchanged from r348016, cfe/trunk/test/Misc/ast-dump-lookups.cpp
cfe/trunk/test/AST/ast-dump-msp430-attr.c
- copied unchanged from r348016, cfe/trunk/test/Misc/ast-dump-msp430-attr.c
cfe/trunk/test/AST/ast-dump-pipe.cl
- copied unchanged from r348016, cfe/trunk/test/Misc/ast-dump-pipe.cl
cfe/trunk/test/AST/ast-dump-stmt.c
- copied unchanged from r348016, cfe/trunk/test/Misc/ast-dump-stmt.c
cfe/trunk/test/AST/ast-dump-stmt.cpp
- copied unchanged from r348016, cfe/trunk/test/Misc/ast-dump-stmt.cpp
cfe/trunk/test/AST/ast-dump-stmt.m
- copied unchanged from r348016, cfe/trunk/test/Misc/ast-dump-stmt.m
cfe/trunk/test/AST/ast-dump-templates.cpp
- copied unchanged from r348016, cfe/trunk/test/Misc/ast-dump-templates.cpp
cfe/trunk/test/AST/ast-dump-wchar.cpp
- copied unchanged from r348016, cfe/trunk/test/Misc/ast-dump-wchar.cpp
cfe/trunk/test/AST/ast-print-attr.c
- copied unchanged from r348016, cfe/trunk/test/Misc/ast-print-attr.c
cfe/trunk/test/AST/ast-print-bool.c
- copied unchanged from r348016, cfe/trunk/test/Misc/ast-print-bool.c
cfe/trunk/test/AST/ast-print-char-literal.cpp
- copied unchanged from r348016, cfe/trunk/test/Misc/ast-print-char-literal.cpp
cfe/trunk/test/AST/ast-print-enum-decl.c
- copied unchanged from r348016, cfe/trunk/test/Misc/ast-print-enum-decl.c
cfe/trunk/test/AST/ast-print-objectivec.m
- copied unchanged from r348016, cfe/trunk/test/Misc/ast-print-objectivec.m
cfe/trunk/test/AST/ast-print-out-of-line-func.cpp
- copied unchanged from r348016, cfe/trunk/test/Misc/ast-print-out-of-line-func.cpp
cfe/trunk/test/AST/ast-print-pragmas-xfail.cpp
- copied unchanged from r348016, cfe/trunk/test/Misc/ast-print-pragmas-xfail.cpp
cfe/trunk/test/AST/ast-print-pragmas.cpp
- copied unchanged from r348016, cfe/trunk/test/Misc/ast-print-pragmas.cpp
cfe/trunk/test/AST/ast-print-record-decl.c
- copied unchanged from r348016, cfe/trunk/test/Misc/ast-print-record-decl.c
cfe/trunk/test/AST/attr-print-emit.cpp
- copied unchanged from r348016, cfe/trunk/test/Misc/attr-print-emit.cpp
cfe/trunk/test/AST/attr-target-ast.c
- copied unchanged from r348016, cfe/trunk/test/Sema/attr-target-ast.c
cfe/trunk/test/AST/auto-pragma.cpp
- copied unchanged from r348016, cfe/trunk/test/SemaCXX/auto-pragma.cpp
cfe/trunk/test/AST/bool-type.m
- copied unchanged from r348016, cfe/trunk/test/SemaObjC/bool-type.m
cfe/trunk/test/AST/builtins-arm-strex-rettype.c
- copied unchanged from r348016, cfe/trunk/test/Sema/builtins-arm-strex-rettype.c
cfe/trunk/test/AST/c-casts.c
- copied unchanged from r348016, cfe/trunk/test/Sema/c-casts.c
cfe/trunk/test/AST/category-attribute.m
- copied unchanged from r348016, cfe/trunk/test/SemaObjC/category-attribute.m
cfe/trunk/test/AST/coroutine-source-location-crash.cpp
- copied, changed from r348016, cfe/trunk/test/SemaCXX/coroutine-source-location-crash.cpp
cfe/trunk/test/AST/dump.cpp
- copied unchanged from r348016, cfe/trunk/test/OpenMP/dump.cpp
cfe/trunk/test/AST/finally-msvc.m
- copied unchanged from r348016, cfe/trunk/test/SemaObjC/finally-msvc.m
cfe/trunk/test/AST/fixed_point.c
- copied unchanged from r348016, cfe/trunk/test/Frontend/fixed_point.c
cfe/trunk/test/AST/fixed_point_to_string.c
- copied unchanged from r348016, cfe/trunk/test/Frontend/fixed_point_to_string.c
cfe/trunk/test/AST/float16.cpp
- copied unchanged from r348016, cfe/trunk/test/Frontend/float16.cpp
cfe/trunk/test/AST/foreachtemplatized.mm
- copied unchanged from r348016, cfe/trunk/test/SemaObjC/foreachtemplatized.mm
cfe/trunk/test/AST/implicit-cast-dump.c
- copied unchanged from r348016, cfe/trunk/test/Sema/implicit-cast-dump.c
cfe/trunk/test/AST/multistep-explicit-cast.c
- copied unchanged from r348016, cfe/trunk/test/Sema/multistep-explicit-cast.c
cfe/trunk/test/AST/multistep-explicit-cast.cpp
- copied unchanged from r348016, cfe/trunk/test/SemaCXX/multistep-explicit-cast.cpp
cfe/trunk/test/AST/objc-default-ctor-init.mm
- copied unchanged from r348016, cfe/trunk/test/Parser/objc-default-ctor-init.mm
cfe/trunk/test/AST/pragma-attribute-cxx-subject-match-rules.cpp
- copied unchanged from r348016, cfe/trunk/test/Misc/pragma-attribute-cxx-subject-match-rules.cpp
cfe/trunk/test/AST/pragma-attribute-objc-subject-match-rules.m
- copied unchanged from r348016, cfe/trunk/test/Misc/pragma-attribute-objc-subject-match-rules.m
cfe/trunk/test/AST/property-atomic-bool.m
- copied unchanged from r348016, cfe/trunk/test/SemaObjC/property-atomic-bool.m
cfe/trunk/test/AST/rdr6094103-unordered-compare-promote.c
- copied unchanged from r348016, cfe/trunk/test/Sema/rdr6094103-unordered-compare-promote.c
cfe/trunk/test/AST/sourceranges.cpp
- copied unchanged from r348016, cfe/trunk/test/SemaCXX/sourceranges.cpp
cfe/trunk/test/AST/template-implicit-vars.cpp
- copied unchanged from r348016, cfe/trunk/test/SemaCXX/template-implicit-vars.cpp
cfe/trunk/test/AST/variadic-promotion.c
- copied unchanged from r348016, cfe/trunk/test/Sema/variadic-promotion.c
Removed:
cfe/trunk/test/Frontend/fixed_point.c
cfe/trunk/test/Frontend/fixed_point_to_string.c
cfe/trunk/test/Frontend/float16.cpp
cfe/trunk/test/Misc/Inputs/module.modulemap
cfe/trunk/test/Misc/ast-dump-arm-attr.c
cfe/trunk/test/Misc/ast-dump-attr.cpp
cfe/trunk/test/Misc/ast-dump-attr.m
cfe/trunk/test/Misc/ast-dump-c-attr.c
cfe/trunk/test/Misc/ast-dump-color.cpp
cfe/trunk/test/Misc/ast-dump-comment.cpp
cfe/trunk/test/Misc/ast-dump-decl-stmts.cpp
cfe/trunk/test/Misc/ast-dump-decl.c
cfe/trunk/test/Misc/ast-dump-decl.cpp
cfe/trunk/test/Misc/ast-dump-decl.m
cfe/trunk/test/Misc/ast-dump-decl.mm
cfe/trunk/test/Misc/ast-dump-funcs.cpp
cfe/trunk/test/Misc/ast-dump-invalid.cpp
cfe/trunk/test/Misc/ast-dump-lookups.cpp
cfe/trunk/test/Misc/ast-dump-msp430-attr.c
cfe/trunk/test/Misc/ast-dump-pipe.cl
cfe/trunk/test/Misc/ast-dump-stmt.c
cfe/trunk/test/Misc/ast-dump-stmt.cpp
cfe/trunk/test/Misc/ast-dump-stmt.m
cfe/trunk/test/Misc/ast-dump-templates.cpp
cfe/trunk/test/Misc/ast-dump-wchar.cpp
cfe/trunk/test/Misc/ast-print-attr.c
cfe/trunk/test/Misc/ast-print-bool.c
cfe/trunk/test/Misc/ast-print-char-literal.cpp
cfe/trunk/test/Misc/ast-print-enum-decl.c
cfe/trunk/test/Misc/ast-print-objectivec.m
cfe/trunk/test/Misc/ast-print-out-of-line-func.cpp
cfe/trunk/test/Misc/ast-print-pragmas-xfail.cpp
cfe/trunk/test/Misc/ast-print-pragmas.cpp
cfe/trunk/test/Misc/ast-print-record-decl.c
cfe/trunk/test/Misc/attr-print-emit.cpp
cfe/trunk/test/Misc/pragma-attribute-cxx-subject-match-rules.cpp
cfe/trunk/test/Misc/pragma-attribute-objc-subject-match-rules.m
cfe/trunk/test/OpenMP/dump.cpp
cfe/trunk/test/Parser/objc-default-ctor-init.mm
cfe/trunk/test/Sema/attr-target-ast.c
cfe/trunk/test/Sema/builtins-arm-strex-rettype.c
cfe/trunk/test/Sema/c-casts.c
cfe/trunk/test/Sema/implicit-cast-dump.c
cfe/trunk/test/Sema/multistep-explicit-cast.c
cfe/trunk/test/Sema/rdr6094103-unordered-compare-promote.c
cfe/trunk/test/Sema/variadic-promotion.c
cfe/trunk/test/SemaCXX/auto-pragma.cpp
cfe/trunk/test/SemaCXX/coroutine-source-location-crash.cpp
cfe/trunk/test/SemaCXX/multistep-explicit-cast.cpp
cfe/trunk/test/SemaCXX/sourceranges.cpp
cfe/trunk/test/SemaCXX/template-implicit-vars.cpp
cfe/trunk/test/SemaObjC/bool-type.m
cfe/trunk/test/SemaObjC/category-attribute.m
cfe/trunk/test/SemaObjC/finally-msvc.m
cfe/trunk/test/SemaObjC/foreachtemplatized.mm
cfe/trunk/test/SemaObjC/property-atomic-bool.m
Copied: cfe/trunk/test/AST/coroutine-source-location-crash.cpp (from r348016, cfe/trunk/test/SemaCXX/coroutine-source-location-crash.cpp)
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/AST/coroutine-source-location-crash.cpp?p2=cfe/trunk/test/AST/coroutine-source-location-crash.cpp&p1=cfe/trunk/test/SemaCXX/coroutine-source-location-crash.cpp&r1=348016&r2=348017&rev=348017&view=diff
==============================================================================
--- cfe/trunk/test/SemaCXX/coroutine-source-location-crash.cpp (original)
+++ cfe/trunk/test/AST/coroutine-source-location-crash.cpp Fri Nov 30 10:43:02 2018
@@ -1,6 +1,6 @@
// RUN: %clang_cc1 -triple x86_64-apple-darwin9 %s -std=c++14 -fcoroutines-ts \
// RUN: -fsyntax-only -ast-dump | FileCheck %s
-#include "Inputs/std-coroutine.h"
+#include "../SemaCXX/Inputs/std-coroutine.h"
using namespace std::experimental;
Removed: cfe/trunk/test/Frontend/fixed_point.c
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Frontend/fixed_point.c?rev=348016&view=auto
==============================================================================
--- cfe/trunk/test/Frontend/fixed_point.c (original)
+++ cfe/trunk/test/Frontend/fixed_point.c (removed)
@@ -1,399 +0,0 @@
-// RUN: %clang_cc1 -x c -ffixed-point -ast-dump %s | FileCheck %s --strict-whitespace
-
-/* Various contexts where type _Accum can appear. */
-
-// Primary fixed point types
-signed short _Accum s_short_accum;
-signed _Accum s_accum;
-signed long _Accum s_long_accum;
-unsigned short _Accum u_short_accum;
-unsigned _Accum u_accum;
-unsigned long _Accum u_long_accum;
-signed short _Fract s_short_fract;
-signed _Fract s_fract;
-signed long _Fract s_long_fract;
-unsigned short _Fract u_short_fract;
-unsigned _Fract u_fract;
-unsigned long _Fract u_long_fract;
-
-// Aliased fixed point types
-short _Accum short_accum;
-_Accum accum;
-long _Accum long_accum;
-short _Fract short_fract;
-_Fract fract;
-long _Fract long_fract;
-
-// Saturated fixed point types
-_Sat signed short _Accum sat_s_short_accum;
-_Sat signed _Accum sat_s_accum;
-_Sat signed long _Accum sat_s_long_accum;
-_Sat unsigned short _Accum sat_u_short_accum;
-_Sat unsigned _Accum sat_u_accum;
-_Sat unsigned long _Accum sat_u_long_accum;
-_Sat signed short _Fract sat_s_short_fract;
-_Sat signed _Fract sat_s_fract;
-_Sat signed long _Fract sat_s_long_fract;
-_Sat unsigned short _Fract sat_u_short_fract;
-_Sat unsigned _Fract sat_u_fract;
-_Sat unsigned long _Fract sat_u_long_fract;
-
-// Aliased saturated fixed point types
-_Sat short _Accum sat_short_accum;
-_Sat _Accum sat_accum;
-_Sat long _Accum sat_long_accum;
-_Sat short _Fract sat_short_fract;
-_Sat _Fract sat_fract;
-_Sat long _Fract sat_long_fract;
-
-//CHECK: |-VarDecl {{.*}} s_short_accum 'short _Accum'
-//CHECK-NEXT: |-VarDecl {{.*}} s_accum '_Accum'
-//CHECK-NEXT: |-VarDecl {{.*}} s_long_accum 'long _Accum'
-//CHECK-NEXT: |-VarDecl {{.*}} u_short_accum 'unsigned short _Accum'
-//CHECK-NEXT: |-VarDecl {{.*}} u_accum 'unsigned _Accum'
-//CHECK-NEXT: |-VarDecl {{.*}} u_long_accum 'unsigned long _Accum'
-//CHECK-NEXT: |-VarDecl {{.*}} s_short_fract 'short _Fract'
-//CHECK-NEXT: |-VarDecl {{.*}} s_fract '_Fract'
-//CHECK-NEXT: |-VarDecl {{.*}} s_long_fract 'long _Fract'
-//CHECK-NEXT: |-VarDecl {{.*}} u_short_fract 'unsigned short _Fract'
-//CHECK-NEXT: |-VarDecl {{.*}} u_fract 'unsigned _Fract'
-//CHECK-NEXT: |-VarDecl {{.*}} u_long_fract 'unsigned long _Fract'
-//CHECK-NEXT: |-VarDecl {{.*}} short_accum 'short _Accum'
-//CHECK-NEXT: |-VarDecl {{.*}} accum '_Accum'
-//CHECK-NEXT: |-VarDecl {{.*}} long_accum 'long _Accum'
-//CHECK-NEXT: |-VarDecl {{.*}} short_fract 'short _Fract'
-//CHECK-NEXT: |-VarDecl {{.*}} fract '_Fract'
-//CHECK-NEXT: |-VarDecl {{.*}} long_fract 'long _Fract'
-//CHECK-NEXT: |-VarDecl {{.*}} sat_s_short_accum '_Sat short _Accum'
-//CHECK-NEXT: |-VarDecl {{.*}} sat_s_accum '_Sat _Accum'
-//CHECK-NEXT: |-VarDecl {{.*}} sat_s_long_accum '_Sat long _Accum'
-//CHECK-NEXT: |-VarDecl {{.*}} sat_u_short_accum '_Sat unsigned short _Accum'
-//CHECK-NEXT: |-VarDecl {{.*}} sat_u_accum '_Sat unsigned _Accum'
-//CHECK-NEXT: |-VarDecl {{.*}} sat_u_long_accum '_Sat unsigned long _Accum'
-//CHECK-NEXT: |-VarDecl {{.*}} sat_s_short_fract '_Sat short _Fract'
-//CHECK-NEXT: |-VarDecl {{.*}} sat_s_fract '_Sat _Fract'
-//CHECK-NEXT: |-VarDecl {{.*}} sat_s_long_fract '_Sat long _Fract'
-//CHECK-NEXT: |-VarDecl {{.*}} sat_u_short_fract '_Sat unsigned short _Fract'
-//CHECK-NEXT: |-VarDecl {{.*}} sat_u_fract '_Sat unsigned _Fract'
-//CHECK-NEXT: |-VarDecl {{.*}} sat_u_long_fract '_Sat unsigned long _Fract'
-//CHECK-NEXT: |-VarDecl {{.*}} sat_short_accum '_Sat short _Accum'
-//CHECK-NEXT: |-VarDecl {{.*}} sat_accum '_Sat _Accum'
-//CHECK-NEXT: |-VarDecl {{.*}} sat_long_accum '_Sat long _Accum'
-//CHECK-NEXT: |-VarDecl {{.*}} sat_short_fract '_Sat short _Fract'
-//CHECK-NEXT: |-VarDecl {{.*}} sat_fract '_Sat _Fract'
-//CHECK-NEXT: |-VarDecl {{.*}} sat_long_fract '_Sat long _Fract'
-
-#define MIX_TYPE_SPEC(SPEC, SIGN, SIZE, ID) \
- SPEC SIGN SIZE _Accum ID; \
- SIGN SPEC SIZE _Accum ID ## 2; \
- SIGN SIZE SPEC _Accum ID ## 3; \
- SIGN SIZE _Accum SPEC ID ## 4;
-
-/* Mixing fixed point types with other type specifiers */
-
-#define MIX_VOLATILE(SIGN, SIZE, ID) MIX_TYPE_SPEC(volatile, SIGN, SIZE, ID)
-#define MIX_ATOMIC(SIGN, SIZE, ID) MIX_TYPE_SPEC(_Atomic, SIGN, SIZE, ID)
-#define MIX_CONST(SIGN, SIZE, ID) MIX_TYPE_SPEC(const, SIGN, SIZE, ID)
-
-MIX_VOLATILE(signed, short, vol_s_short_accum)
-MIX_ATOMIC(signed, short, atm_s_short_accum)
-MIX_CONST(signed, short, const_s_short_accum)
-
-// CHECK-NEXT: |-VarDecl {{.*}} vol_s_short_accum 'volatile short _Accum'
-// CHECK-NEXT: |-VarDecl {{.*}} vol_s_short_accum2 'volatile short _Accum'
-// CHECK-NEXT: |-VarDecl {{.*}} vol_s_short_accum3 'volatile short _Accum'
-// CHECK-NEXT: |-VarDecl {{.*}} vol_s_short_accum4 'volatile short _Accum'
-
-// CHECK-NEXT: |-VarDecl {{.*}} atm_s_short_accum '_Atomic(short _Accum)'
-// CHECK-NEXT: |-VarDecl {{.*}} atm_s_short_accum2 '_Atomic(short _Accum)'
-// CHECK-NEXT: |-VarDecl {{.*}} atm_s_short_accum3 '_Atomic(short _Accum)'
-// CHECK-NEXT: |-VarDecl {{.*}} atm_s_short_accum4 '_Atomic(short _Accum)'
-
-// CHECK-NEXT: |-VarDecl {{.*}} const_s_short_accum 'const short _Accum'
-// CHECK-NEXT: |-VarDecl {{.*}} const_s_short_accum2 'const short _Accum'
-// CHECK-NEXT: |-VarDecl {{.*}} const_s_short_accum3 'const short _Accum'
-// CHECK-NEXT: |-VarDecl {{.*}} const_s_short_accum4 'const short _Accum'
-
-/* Typedefs */
-
-// Primary fixed point types
-typedef signed short _Accum SsA_t;
-typedef signed _Accum SA_t;
-typedef signed long _Accum SlA_t;
-typedef unsigned short _Accum UsA_t;
-typedef unsigned _Accum UA_t;
-typedef unsigned long _Accum UlA_t;
-typedef signed short _Fract SsF_t;
-typedef signed _Fract SF_t;
-typedef signed long _Fract SlF_t;
-typedef unsigned short _Fract UsF_t;
-typedef unsigned _Fract UF_t;
-typedef unsigned long _Fract UlF_t;
-
-// Aliased fixed point types
-typedef short _Accum sA_t;
-typedef _Accum A_t;
-typedef long _Accum lA_t;
-typedef short _Fract sF_t;
-typedef _Fract F_t;
-typedef long _Fract lF_t;
-
-// Saturated fixed point types
-typedef _Sat signed short _Accum SatSsA_t;
-typedef _Sat signed _Accum SatSA_t;
-typedef _Sat signed long _Accum SatSlA_t;
-typedef _Sat unsigned short _Accum SatUsA_t;
-typedef _Sat unsigned _Accum SatUA_t;
-typedef _Sat unsigned long _Accum SatUlA_t;
-typedef _Sat signed short _Fract SatSsF_t;
-typedef _Sat signed _Fract SatSF_t;
-typedef _Sat signed long _Fract SatSlF_t;
-typedef _Sat unsigned short _Fract SatUsF_t;
-typedef _Sat unsigned _Fract SatUF_t;
-typedef _Sat unsigned long _Fract SatUlF_t;
-
-// Aliased saturated fixed point types
-typedef _Sat short _Accum SatsA_t;
-typedef _Sat _Accum SatA_t;
-typedef _Sat long _Accum SatlA_t;
-typedef _Sat short _Fract SatsF_t;
-typedef _Sat _Fract SatF_t;
-typedef _Sat long _Fract SatlF_t;
-
-SsA_t SsA_type;
-SA_t SA_type;
-SlA_t SlA_type;
-UsA_t UsA_type;
-UA_t UA_type;
-UlA_t UlA_type;
-SsF_t SsF_type;
-SF_t SF_type;
-SlF_t SlF_type;
-UsF_t UsF_type;
-UF_t UF_type;
-UlF_t UlF_type;
-
-sA_t sA_type;
-A_t A_type;
-lA_t lA_type;
-sF_t sF_type;
-F_t F_type;
-lF_t lF_type;
-
-SatSsA_t SatSsA_type;
-SatSA_t SatSA_type;
-SatSlA_t SatSlA_type;
-SatUsA_t SatUsA_type;
-SatUA_t SatUA_type;
-SatUlA_t SatUlA_type;
-SatSsF_t SatSsF_type;
-SatSF_t SatSF_type;
-SatSlF_t SatSlF_type;
-SatUsF_t SatUsF_type;
-SatUF_t SatUF_type;
-SatUlF_t SatUlF_type;
-
-SatsA_t SatsA_type;
-SatA_t SatA_type;
-SatlA_t SatlA_type;
-SatsF_t SatsF_type;
-SatF_t SatF_type;
-SatlF_t SatlF_type;
-
-//CHECK: |-VarDecl {{.*}} SsA_type 'SsA_t':'short _Accum'
-//CHECK-NEXT: |-VarDecl {{.*}} SA_type 'SA_t':'_Accum'
-//CHECK-NEXT: |-VarDecl {{.*}} SlA_type 'SlA_t':'long _Accum'
-//CHECK-NEXT: |-VarDecl {{.*}} UsA_type 'UsA_t':'unsigned short _Accum'
-//CHECK-NEXT: |-VarDecl {{.*}} UA_type 'UA_t':'unsigned _Accum'
-//CHECK-NEXT: |-VarDecl {{.*}} UlA_type 'UlA_t':'unsigned long _Accum'
-//CHECK-NEXT: |-VarDecl {{.*}} SsF_type 'SsF_t':'short _Fract'
-//CHECK-NEXT: |-VarDecl {{.*}} SF_type 'SF_t':'_Fract'
-//CHECK-NEXT: |-VarDecl {{.*}} SlF_type 'SlF_t':'long _Fract'
-//CHECK-NEXT: |-VarDecl {{.*}} UsF_type 'UsF_t':'unsigned short _Fract'
-//CHECK-NEXT: |-VarDecl {{.*}} UF_type 'UF_t':'unsigned _Fract'
-//CHECK-NEXT: |-VarDecl {{.*}} UlF_type 'UlF_t':'unsigned long _Fract'
-//CHECK-NEXT: |-VarDecl {{.*}} sA_type 'sA_t':'short _Accum'
-//CHECK-NEXT: |-VarDecl {{.*}} A_type 'A_t':'_Accum'
-//CHECK-NEXT: |-VarDecl {{.*}} lA_type 'lA_t':'long _Accum'
-//CHECK-NEXT: |-VarDecl {{.*}} sF_type 'sF_t':'short _Fract'
-//CHECK-NEXT: |-VarDecl {{.*}} F_type 'F_t':'_Fract'
-//CHECK-NEXT: |-VarDecl {{.*}} lF_type 'lF_t':'long _Fract'
-
-//CHECK-NEXT: |-VarDecl {{.*}} SatSsA_type 'SatSsA_t':'_Sat short _Accum'
-//CHECK-NEXT: |-VarDecl {{.*}} SatSA_type 'SatSA_t':'_Sat _Accum'
-//CHECK-NEXT: |-VarDecl {{.*}} SatSlA_type 'SatSlA_t':'_Sat long _Accum'
-//CHECK-NEXT: |-VarDecl {{.*}} SatUsA_type 'SatUsA_t':'_Sat unsigned short _Accum'
-//CHECK-NEXT: |-VarDecl {{.*}} SatUA_type 'SatUA_t':'_Sat unsigned _Accum'
-//CHECK-NEXT: |-VarDecl {{.*}} SatUlA_type 'SatUlA_t':'_Sat unsigned long _Accum'
-//CHECK-NEXT: |-VarDecl {{.*}} SatSsF_type 'SatSsF_t':'_Sat short _Fract'
-//CHECK-NEXT: |-VarDecl {{.*}} SatSF_type 'SatSF_t':'_Sat _Fract'
-//CHECK-NEXT: |-VarDecl {{.*}} SatSlF_type 'SatSlF_t':'_Sat long _Fract'
-//CHECK-NEXT: |-VarDecl {{.*}} SatUsF_type 'SatUsF_t':'_Sat unsigned short _Fract'
-//CHECK-NEXT: |-VarDecl {{.*}} SatUF_type 'SatUF_t':'_Sat unsigned _Fract'
-//CHECK-NEXT: |-VarDecl {{.*}} SatUlF_type 'SatUlF_t':'_Sat unsigned long _Fract'
-//CHECK-NEXT: |-VarDecl {{.*}} SatsA_type 'SatsA_t':'_Sat short _Accum'
-//CHECK-NEXT: |-VarDecl {{.*}} SatA_type 'SatA_t':'_Sat _Accum'
-//CHECK-NEXT: |-VarDecl {{.*}} SatlA_type 'SatlA_t':'_Sat long _Accum'
-//CHECK-NEXT: |-VarDecl {{.*}} SatsF_type 'SatsF_t':'_Sat short _Fract'
-//CHECK-NEXT: |-VarDecl {{.*}} SatF_type 'SatF_t':'_Sat _Fract'
-//CHECK-NEXT: |-VarDecl {{.*}} SatlF_type 'SatlF_t':'_Sat long _Fract'
-
-// Fixed point literal exponent syntax
-_Accum decexp1 = 1.575e1k;
-_Accum decexp2 = 1.575E1k;
-_Accum decexp3 = 1575e-2k;
-_Accum decexp4 = 1575E-2k;
-
-_Accum hexexp1 = 0x0.3p10k;
-_Accum hexexp2 = 0x0.3P10k;
-_Accum hexexp3 = 0x30000p-10k;
-_Accum hexexp4 = 0x30000P-10k;
-
-_Accum zeroexp1 = 1e0k;
-_Accum zeroexp2 = 1e-0k;
-
-//CHECK-NEXT: |-VarDecl {{.*}} decexp1 '_Accum' cinit
-//CHECK-NEXT: `-FixedPointLiteral {{.*}} '_Accum' 15.75
-//CHECK-NEXT: |-VarDecl {{.*}} decexp2 '_Accum' cinit
-//CHECK-NEXT: `-FixedPointLiteral {{.*}} '_Accum' 15.75
-//CHECK-NEXT: |-VarDecl {{.*}} decexp3 '_Accum' cinit
-//CHECK-NEXT: `-FixedPointLiteral {{.*}} '_Accum' 15.75
-//CHECK-NEXT: |-VarDecl {{.*}} decexp4 '_Accum' cinit
-//CHECK-NEXT: `-FixedPointLiteral {{.*}} '_Accum' 15.75
-
-//CHECK-NEXT: |-VarDecl {{.*}} hexexp1 '_Accum' cinit
-//CHECK-NEXT: `-FixedPointLiteral {{.*}} '_Accum' 192.0
-//CHECK-NEXT: |-VarDecl {{.*}} hexexp2 '_Accum' cinit
-//CHECK-NEXT: `-FixedPointLiteral {{.*}} '_Accum' 192.0
-//CHECK-NEXT: |-VarDecl {{.*}} hexexp3 '_Accum' cinit
-//CHECK-NEXT: `-FixedPointLiteral {{.*}} '_Accum' 192.0
-//CHECK-NEXT: |-VarDecl {{.*}} hexexp4 '_Accum' cinit
-//CHECK-NEXT: `-FixedPointLiteral {{.*}} '_Accum' 192.0
-
-//CHECK-NEXT: |-VarDecl {{.*}} zeroexp1 '_Accum' cinit
-//CHECK-NEXT: `-FixedPointLiteral {{.*}} '_Accum' 1.0
-//CHECK-NEXT: |-VarDecl {{.*}} zeroexp2 '_Accum' cinit
-//CHECK-NEXT: `-FixedPointLiteral {{.*}} '_Accum' 1.0
-
-// Fixed point literal values
-_Accum literal1 = 2.5k; // Precise decimal
-_Accum literal2 = 0.0k; // Zero
-_Accum literal3 = 1.1k; // Imprecise decimal
-_Accum literal4 = 1.11k;
-_Accum literal5 = 1.111k;
-_Accum literal6 = 1.1111k;
-_Accum literal7 = 1.11111k; // After some point after the radix, adding any more
- // digits to the literal will not result in any
- // further precision since the nth digit added may
- // be less than the precision that can be
- // represented by the fractional bits of the type.
- // This results in the same value being stored for
- // the type.
-
-//CHECK-NEXT: |-VarDecl {{.*}} literal1 '_Accum' cinit
-//CHECK-NEXT: `-FixedPointLiteral {{.*}} '_Accum' 2.5
-//CHECK-NEXT: |-VarDecl {{.*}} literal2 '_Accum' cinit
-//CHECK-NEXT: `-FixedPointLiteral {{.*}} '_Accum' 0.0
-//CHECK-NEXT: |-VarDecl {{.*}} literal3 '_Accum' cinit
-//CHECK-NEXT: `-FixedPointLiteral {{.*}} '_Accum' 1.0999755859375
-//CHECK-NEXT: |-VarDecl {{.*}} literal4 '_Accum' cinit
-//CHECK-NEXT: `-FixedPointLiteral {{.*}} '_Accum' 1.1099853515625
-//CHECK-NEXT: |-VarDecl {{.*}} literal5 '_Accum' cinit
-//CHECK-NEXT: `-FixedPointLiteral {{.*}} '_Accum' 1.110992431640625
-//CHECK-NEXT: |-VarDecl {{.*}} literal6 '_Accum' cinit
-//CHECK-NEXT: `-FixedPointLiteral {{.*}} '_Accum' 1.111083984375
-//CHECK-NEXT: |-VarDecl {{.*}} literal7 '_Accum' cinit
-//CHECK-NEXT: `-FixedPointLiteral {{.*}} '_Accum' 1.111083984375
-
-long _Accum longaccumliteral = 0.99999999lk;
-long _Accum longaccumliteral2 = 0.999999999lk;
-long _Accum verylongaccumliteral = 0.99999999999999999999999999lk;
-long _Fract longfractliteral = 0.99999999lr;
-long _Fract longfractliteral2 = 0.999999999lr;
-long _Fract verylongfractliteral = 0.99999999999999999999999999lr;
-
-//CHECK-NEXT: |-VarDecl {{.*}} longaccumliteral 'long _Accum' cinit
-//CHECK-NEXT: `-FixedPointLiteral {{.*}} 'long _Accum' 0.999999989755451679229736328125
-//CHECK-NEXT: |-VarDecl {{.*}} longaccumliteral2 'long _Accum' cinit
-//CHECK-NEXT: `-FixedPointLiteral {{.*}} 'long _Accum' 0.9999999986030161380767822265625
-//CHECK-NEXT: |-VarDecl {{.*}} verylongaccumliteral 'long _Accum' cinit
-//CHECK-NEXT: `-FixedPointLiteral {{.*}} 'long _Accum' 0.9999999995343387126922607421875
-//CHECK-NEXT: |-VarDecl {{.*}} longfractliteral 'long _Fract' cinit
-//CHECK-NEXT: `-FixedPointLiteral {{.*}} 'long _Fract' 0.999999989755451679229736328125
-//CHECK-NEXT: |-VarDecl {{.*}} longfractliteral2 'long _Fract' cinit
-//CHECK-NEXT: `-FixedPointLiteral {{.*}} 'long _Fract' 0.9999999986030161380767822265625
-//CHECK-NEXT: |-VarDecl {{.*}} verylongfractliteral 'long _Fract' cinit
-//CHECK-NEXT: `-FixedPointLiteral {{.*}} 'long _Fract' 0.9999999995343387126922607421875
-
-unsigned _Accum uliteral1 = 2.5uk; // Unsigned
-_Accum literal8 = -2.5k; // Negative
-
-//CHECK-NEXT: |-VarDecl {{.*}} uliteral1 'unsigned _Accum' cinit
-//CHECK-NEXT: `-FixedPointLiteral {{.*}} 'unsigned _Accum' 2.5
-//CHECK-NEXT: |-VarDecl {{.*}} literal8 '_Accum' cinit
-//CHECK-NEXT: `-UnaryOperator {{.*}} '_Accum' prefix '-'
-//CHECK-NEXT: `-FixedPointLiteral {{.*}} '_Accum' 2.5
-
-short _Accum literalexact1 = 0.9921875hk; // Exact value
-_Accum literalexact2 = 0.999969482421875k;
-
-//CHECK-NEXT: |-VarDecl {{.*}} literalexact1 'short _Accum' cinit
-//CHECK-NEXT: `-FixedPointLiteral {{.*}} 'short _Accum' 0.9921875
-//CHECK-NEXT: |-VarDecl {{.*}} literalexact2 '_Accum' cinit
-//CHECK-NEXT: `-FixedPointLiteral {{.*}} '_Accum' 0.999969482421875
-
-// Unfortunately we do not have enough space to store the exact decimal value of
-// 0.9999999995343387126922607421875 ((1 << 31) - 1), but we can still use a
-// large number of 9s to get the max fractional value.
-long _Accum long_accum_max = 0.999999999999999999999999999lk;
-
-//CHECK-NEXT: |-VarDecl {{.*}} long_accum_max 'long _Accum' cinit
-//CHECK-NEXT: `-FixedPointLiteral {{.*}} 'long _Accum' 0.9999999995343387126922607421875
-
-// Epsilon
-short _Accum short_accum_eps = 0.0078125hk;
-short _Accum short_accum_eps2 = 0.0078124hk; // Less than epsilon floors to zero
-_Accum accum_eps = 0.000030517578125k;
-_Accum accum_eps2 = 0.000030517578124k;
-long _Accum long_accum_eps = 0x1p-31lk;
-long _Accum long_accum_eps2 = 0x0.99999999p-31lk;
-
-//CHECK-NEXT: |-VarDecl {{.*}} short_accum_eps 'short _Accum' cinit
-//CHECK-NEXT: `-FixedPointLiteral {{.*}} 'short _Accum' 0.0078125
-//CHECK-NEXT: |-VarDecl {{.*}} short_accum_eps2 'short _Accum' cinit
-//CHECK-NEXT: `-FixedPointLiteral {{.*}} 'short _Accum' 0.0
-//CHECK-NEXT: |-VarDecl {{.*}} accum_eps '_Accum' cinit
-//CHECK-NEXT: `-FixedPointLiteral {{.*}} '_Accum' 0.000030517578125
-//CHECK-NEXT: |-VarDecl {{.*}} accum_eps2 '_Accum' cinit
-//CHECK-NEXT: `-FixedPointLiteral {{.*}} '_Accum' 0.0
-//CHECK-NEXT: |-VarDecl {{.*}} long_accum_eps 'long _Accum' cinit
-//CHECK-NEXT: `-FixedPointLiteral {{.*}} 'long _Accum' 0.0000000004656612873077392578125
-//CHECK-NEXT: |-VarDecl {{.*}} long_accum_eps2 'long _Accum' cinit
-//CHECK-NEXT: `-FixedPointLiteral {{.*}} 'long _Accum' 0.0
-
-// Fract literals can be one but evaluate to the respective Fract max
-short _Fract short_fract_one = 1.0hr;
-_Fract fract_one = 1.0r;
-long _Fract long_fract_one = 1.0lr;
-unsigned short _Fract u_short_fract_one = 1.0uhr;
-unsigned _Fract u_fract_one = 1.0ur;
-unsigned long _Fract u_long_fract_one = 1.0ulr;
-
-//CHECK-NEXT: |-VarDecl {{.*}} short_fract_one 'short _Fract' cinit
-//CHECK-NEXT: `-FixedPointLiteral {{.*}} 'short _Fract' 0.9921875
-//CHECK-NEXT: |-VarDecl {{.*}} fract_one '_Fract' cinit
-//CHECK-NEXT: `-FixedPointLiteral {{.*}} '_Fract' 0.999969482421875
-//CHECK-NEXT: |-VarDecl {{.*}} long_fract_one 'long _Fract' cinit
-//CHECK-NEXT: `-FixedPointLiteral {{.*}} 'long _Fract' 0.9999999995343387126922607421875
-
-//CHECK-NEXT: |-VarDecl {{.*}} u_short_fract_one 'unsigned short _Fract' cinit
-//CHECK-NEXT: `-FixedPointLiteral {{.*}} 'unsigned short _Fract' 0.99609375
-//CHECK-NEXT: |-VarDecl {{.*}} u_fract_one 'unsigned _Fract' cinit
-//CHECK-NEXT: `-FixedPointLiteral {{.*}} 'unsigned _Fract' 0.9999847412109375
-//CHECK-NEXT: |-VarDecl {{.*}} u_long_fract_one 'unsigned long _Fract' cinit
-//CHECK-NEXT: `-FixedPointLiteral {{.*}} 'unsigned long _Fract' 0.99999999976716935634613037109375
-
-_Accum literallast = 1.0k; // One
-
-//CHECK-NEXT: `-VarDecl {{.*}} literallast '_Accum' cinit
-//CHECK-NEXT: `-FixedPointLiteral {{.*}} '_Accum' 1.0
Removed: cfe/trunk/test/Frontend/fixed_point_to_string.c
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Frontend/fixed_point_to_string.c?rev=348016&view=auto
==============================================================================
--- cfe/trunk/test/Frontend/fixed_point_to_string.c (original)
+++ cfe/trunk/test/Frontend/fixed_point_to_string.c (removed)
@@ -1,21 +0,0 @@
-// RUN: %clang_cc1 -ast-dump -ffixed-point %s | FileCheck %s
-// RUN: %clang_cc1 -ast-dump -ffixed-point -fpadding-on-unsigned-fixed-point %s | FileCheck %s
-
-/**
- * Check the same values are printed in the AST regardless of if unsigned types
- * have the same number of fractional bits as signed types.
- */
-
-unsigned short _Accum u_short_accum = 0.5uhk;
-unsigned _Accum u_accum = 0.5uk;
-unsigned long _Accum u_long_accum = 0.5ulk;
-unsigned short _Fract u_short_fract = 0.5uhr;
-unsigned _Fract u_fract = 0.5ur;
-unsigned long _Fract u_long_fract = 0.5ulr;
-
-//CHECK: FixedPointLiteral {{.*}} 'unsigned short _Accum' 0.5
-//CHECK: FixedPointLiteral {{.*}} 'unsigned _Accum' 0.5
-//CHECK: FixedPointLiteral {{.*}} 'unsigned long _Accum' 0.5
-//CHECK: FixedPointLiteral {{.*}} 'unsigned short _Fract' 0.5
-//CHECK: FixedPointLiteral {{.*}} 'unsigned _Fract' 0.5
-//CHECK: FixedPointLiteral {{.*}} 'unsigned long _Fract' 0.5
Removed: cfe/trunk/test/Frontend/float16.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Frontend/float16.cpp?rev=348016&view=auto
==============================================================================
--- cfe/trunk/test/Frontend/float16.cpp (original)
+++ cfe/trunk/test/Frontend/float16.cpp (removed)
@@ -1,326 +0,0 @@
-// RUN: %clang_cc1 -std=c++11 -ast-dump %s | FileCheck %s --strict-whitespace
-// RUN: %clang_cc1 -std=c++11 -ast-dump -fnative-half-type %s | FileCheck %s --check-prefix=CHECK-NATIVE --strict-whitespace
-
-/* Various contexts where type _Float16 can appear. */
-
-/* Namespace */
-namespace {
- _Float16 f1n;
- _Float16 f2n = 33.f16;
- _Float16 arr1n[10];
- _Float16 arr2n[] = { 1.2, 3.0, 3.e4 };
- const volatile _Float16 func1n(const _Float16 &arg) {
- return arg + f2n + arr1n[4] - arr2n[1];
- }
-}
-
-//CHECK: |-NamespaceDecl
-//CHECK-NEXT: | |-VarDecl {{.*}} f1n '_Float16'
-//CHECK-NEXT: | |-VarDecl {{.*}} f2n '_Float16' cinit
-//CHECK-NEXT: | | `-FloatingLiteral {{.*}} '_Float16' 3.300000e+01
-//CHECK-NEXT: | |-VarDecl {{.*}} arr1n '_Float16 [10]'
-//CHECK-NEXT: | |-VarDecl {{.*}} arr2n '_Float16 [3]' cinit
-//CHECK-NEXT: | | `-InitListExpr {{.*}} '_Float16 [3]'
-//CHECK-NEXT: | | |-ImplicitCastExpr {{.*}} '_Float16' <FloatingCast>
-//CHECK-NEXT: | | | `-FloatingLiteral {{.*}} 'double' 1.200000e+00
-//CHECK-NEXT: | | |-ImplicitCastExpr {{.*}} '_Float16' <FloatingCast>
-//CHECK-NEXT: | | | `-FloatingLiteral {{.*}} 'double' 3.000000e+00
-//CHECK-NEXT: | | `-ImplicitCastExpr {{.*}} '_Float16' <FloatingCast>
-//CHECK-NEXT: | | `-FloatingLiteral {{.*}} 'double' 3.000000e+04
-//CHECK-NEXT: | `-FunctionDecl {{.*}} func1n 'const volatile _Float16 (const _Float16 &)'
-
-/* File */
-_Float16 f1f;
-_Float16 f2f = 32.4;
-_Float16 arr1f[10];
-_Float16 arr2f[] = { -1.2, -3.0, -3.e4 };
-_Float16 func1f(_Float16 arg);
-
-//CHECK: |-VarDecl {{.*}} f1f '_Float16'
-//CHECK-NEXT: |-VarDecl {{.*}} f2f '_Float16' cinit
-//CHECK-NEXT: | `-ImplicitCastExpr {{.*}} '_Float16' <FloatingCast>
-//CHECK-NEXT: | `-FloatingLiteral {{.*}} 'double' 3.240000e+01
-//CHECK-NEXT: |-VarDecl {{.*}} arr1f '_Float16 [10]'
-//CHECK-NEXT: |-VarDecl {{.*}} arr2f '_Float16 [3]' cinit
-//CHECK-NEXT: | `-InitListExpr {{.*}} '_Float16 [3]'
-//CHECK-NEXT: | |-ImplicitCastExpr {{.*}} '_Float16' <FloatingCast>
-//CHECK-NEXT: | | `-UnaryOperator {{.*}} 'double' prefix '-'
-//CHECK-NEXT: | | `-FloatingLiteral {{.*}} 'double' 1.200000e+00
-//CHECK-NEXT: | |-ImplicitCastExpr {{.*}} '_Float16' <FloatingCast>
-//CHECK-NEXT: | | `-UnaryOperator {{.*}} 'double' prefix '-'
-//CHECK-NEXT: | | `-FloatingLiteral {{.*}} 'double' 3.000000e+00
-//CHECK-NEXT: | `-ImplicitCastExpr {{.*}} '_Float16' <FloatingCast>
-//CHECK-NEXT: | `-UnaryOperator {{.*}} 'double' prefix '-'
-//CHECK-NEXT: | `-FloatingLiteral {{.*}} 'double' 3.000000e+04
-//CHECK-NEXT: |-FunctionDecl {{.*}} func1f '_Float16 (_Float16)'
-//CHECK-NEXT: | `-ParmVarDecl {{.*}} arg '_Float16'
-
-
-// Mixing __fp16 and Float16 types:
-// The _Float16 type is first converted to __fp16 type and then the operation
-// is completed as if both operands were of __fp16 type.
-
-__fp16 B = -0.1;
-auto C = -1.0f16 + B;
-
-// When we do *not* have native half types, we expect __fp16 to be promoted to
-// float, and consequently also _Float16 promotions to float:
-
-//CHECK: -VarDecl {{.*}} used B '__fp16' cinit
-//CHECK-NEXT: | `-ImplicitCastExpr {{.*}} '__fp16' <FloatingCast>
-//CHECK-NEXT: | `-UnaryOperator {{.*}} 'double' prefix '-'
-//CHECK-NEXT: | `-FloatingLiteral {{.*}} 'double' 1.000000e-01
-//CHECK-NEXT: |-VarDecl {{.*}} C 'float':'float' cinit
-//CHECK-NEXT: | `-BinaryOperator {{.*}} 'float' '+'
-//CHECK-NEXT: | |-ImplicitCastExpr {{.*}} 'float' <FloatingCast>
-//CHECK-NEXT: | | `-UnaryOperator {{.*}} '_Float16' prefix '-'
-//CHECK-NEXT: | | `-FloatingLiteral {{.*}} '_Float16' 1.000000e+00
-//CHECK-NEXT: | `-ImplicitCastExpr {{.*}} 'float' <FloatingCast>
-//CHECK-NEXT: | `-ImplicitCastExpr {{.*}} '__fp16' <LValueToRValue>
-//CHECK-NEXT: | `-DeclRefExpr {{.*}} '__fp16' lvalue Var 0x{{.*}} 'B' '__fp16'
-
-// When do have native half types, we expect to see promotions to fp16:
-
-//CHECK-NATIVE: |-VarDecl {{.*}} used B '__fp16' cinit
-//CHECK-NATIVE: | `-ImplicitCastExpr {{.*}} '__fp16' <FloatingCast>
-//CHECK-NATIVE: | `-UnaryOperator {{.*}} 'double' prefix '-'
-//CHECK-NATIVE: | `-FloatingLiteral {{.*}} 'double' 1.000000e-01
-//CHECK-NATIVE: |-VarDecl {{.*}} C '__fp16':'__fp16' cinit
-//CHECK-NATIVE: | `-BinaryOperator {{.*}} '__fp16' '+'
-//CHECK-NATIVE: | |-ImplicitCastExpr {{.*}} '__fp16' <FloatingCast>
-//CHECK-NATIVE: | | `-UnaryOperator {{.*}} '_Float16' prefix '-'
-//CHECK-NATIVE: | | `-FloatingLiteral {{.*}} '_Float16' 1.000000e+00
-//CHECK-NATIVE: | `-ImplicitCastExpr {{.*}} '__fp16' <LValueToRValue>
-//CHECK-NATIVE: | `-DeclRefExpr {{.*}} '__fp16' lvalue Var 0x{{.*}} 'B' '__fp16'
-
-
-/* Class */
-
-class C1 {
- _Float16 f1c;
- static const _Float16 f2c;
- volatile _Float16 f3c;
-public:
- C1(_Float16 arg) : f1c(arg), f3c(arg) { }
- _Float16 func1c(_Float16 arg ) {
- return f1c + arg;
- }
- static _Float16 func2c(_Float16 arg) {
- return arg * C1::f2c;
- }
-};
-
-//CHECK: |-CXXRecordDecl {{.*}} referenced class C1 definition
-//CHECK: | |-CXXRecordDecl {{.*}} implicit referenced class C1
-//CHECK-NEXT: | |-FieldDecl {{.*}} referenced f1c '_Float16'
-//CHECK-NEXT: | |-VarDecl {{.*}} used f2c 'const _Float16' static
-//CHECK-NEXT: | |-FieldDecl {{.*}} f3c 'volatile _Float16'
-//CHECK-NEXT: | |-AccessSpecDecl
-//CHECK-NEXT: | |-CXXConstructorDecl {{.*}} used C1 'void (_Float16)
-//CHECK-NEXT: | | |-ParmVarDecl {{.*}} used arg '_Float16'
-//CHECK-NEXT: | | |-CXXCtorInitializer Field {{.*}} 'f1c' '_Float16'
-//CHECK-NEXT: | | | `-ImplicitCastExpr {{.*}} '_Float16' <LValueToRValue>
-//CHECK-NEXT: | | | `-DeclRefExpr {{.*}} '_Float16' lvalue ParmVar 0x{{.*}} 'arg' '_Float16'
-//CHECK-NEXT: | | |-CXXCtorInitializer Field {{.*}} 'f3c' 'volatile _Float16'
-//CHECK-NEXT: | | | `-ImplicitCastExpr {{.*}} '_Float16' <LValueToRValue>
-//CHECK-NEXT: | | | `-DeclRefExpr {{.*}} '_Float16' lvalue ParmVar 0x{{.*}} 'arg' '_Float16'
-//CHECK-NEXT: | | `-CompoundStmt
-//CHECK-NEXT: | |-CXXMethodDecl {{.*}} used func1c '_Float16 (_Float16)
-//CHECK-NEXT: | | |-ParmVarDecl {{.*}} used arg '_Float16'
-//CHECK-NEXT: | | `-CompoundStmt
-//CHECK-NEXT: | | `-ReturnStmt
-//CHECK-NEXT: | | `-BinaryOperator {{.*}} '_Float16' '+'
-//CHECK-NEXT: | | |-ImplicitCastExpr {{.*}} '_Float16' <LValueToRValue>
-//CHECK-NEXT: | | | `-MemberExpr {{.*}} '_Float16' lvalue ->f1c 0x{{.*}}
-//CHECK-NEXT: | | | `-CXXThisExpr {{.*}} 'C1 *' this
-//CHECK-NEXT: | | `-ImplicitCastExpr {{.*}} '_Float16' <LValueToRValue>
-//CHECK-NEXT: | | `-DeclRefExpr {{.*}} '_Float16' lvalue ParmVar 0x{{.*}} 'arg' '_Float16'
-//CHECK-NEXT: | |-CXXMethodDecl {{.*}} used func2c '_Float16 (_Float16)' static
-//CHECK-NEXT: | | |-ParmVarDecl {{.*}} used arg '_Float16'
-//CHECK-NEXT: | | `-CompoundStmt
-//CHECK-NEXT: | | `-ReturnStmt
-//CHECK-NEXT: | | `-BinaryOperator {{.*}} '_Float16' '*'
-//CHECK-NEXT: | | |-ImplicitCastExpr {{.*}} '_Float16' <LValueToRValue>
-//CHECK-NEXT: | | | `-DeclRefExpr {{.*}} '_Float16' lvalue ParmVar 0x{{.*}} 'arg' '_Float16'
-//CHECK-NEXT: | | `-ImplicitCastExpr {{.*}} '_Float16' <LValueToRValue>
-//CHECK-NEXT: | | `-DeclRefExpr {{.*}} 'const _Float16' lvalue Var 0x{{.*}} 'f2c' 'const _Float16'
-
-
-/* Template */
-
-template <class C> C func1t(C arg) {
- return arg * 2.f16;
-}
-
-//CHECK: |-FunctionTemplateDecl {{.*}} func1t
-//CHECK-NEXT: | |-TemplateTypeParmDecl {{.*}} C
-//CHECK-NEXT: | |-FunctionDecl {{.*}} func1t 'C (C)'
-//CHECK-NEXT: | | |-ParmVarDecl {{.*}} referenced arg 'C'
-//CHECK-NEXT: | | `-CompoundStmt
-//CHECK-NEXT: | | `-ReturnStmt
-//CHECK-NEXT: | | `-BinaryOperator {{.*}} '<dependent type>' '*'
-//CHECK-NEXT: | | |-DeclRefExpr {{.*}} 'C' lvalue ParmVar {{.*}} 'arg' 'C'
-//CHECK-NEXT: | | `-FloatingLiteral {{.*}} '_Float16' 2.000000e+00
-//CHECK-NEXT: | `-FunctionDecl {{.*}} used func1t '_Float16 (_Float16)'
-//CHECK-NEXT: | |-TemplateArgument type '_Float16'
-//CHECK-NEXT: | |-ParmVarDecl {{.*}} used arg '_Float16':'_Float16'
-//CHECK-NEXT: | `-CompoundStmt
-//CHECK-NEXT: | `-ReturnStmt
-//CHECK-NEXT: | `-BinaryOperator {{.*}} '_Float16' '*'
-//CHECK-NEXT: | |-ImplicitCastExpr {{.*}} '_Float16':'_Float16' <LValueToRValue>
-//CHECK-NEXT: | | `-DeclRefExpr {{.*}} '_Float16':'_Float16' lvalue ParmVar {{.*}} 'arg' '_Float16':'_Float16'
-//CHECK-NEXT: | `-FloatingLiteral {{.*}} '_Float16' 2.000000e+00
-
-
-template <class C> struct S1 {
- C mem1;
-};
-
-//CHECK: |-ClassTemplateDecl {{.*}} S1
-//CHECK-NEXT: | |-TemplateTypeParmDecl {{.*}} referenced class depth 0 index 0 C
-//CHECK-NEXT: | |-CXXRecordDecl {{.*}} struct S1 definition
-//CHECK: | | |-CXXRecordDecl {{.*}} implicit struct S1
-//CHECK-NEXT: | | `-FieldDecl {{.*}} mem1 'C'
-//CHECK-NEXT: | `-ClassTemplateSpecialization {{.*}} 'S1'
-
-template <> struct S1<_Float16> {
- _Float16 mem2;
-};
-
-
-/* Local */
-
-extern int printf (const char *__restrict __format, ...);
-
-int main(void) {
- _Float16 f1l = 1e3f16;
-//CHECK: | `-VarDecl {{.*}} used f1l '_Float16' cinit
-//CHECK-NEXT: | `-FloatingLiteral {{.*}} '_Float16' 1.000000e+03
-
- _Float16 f2l = -0.f16;
-//CHECK: | `-VarDecl {{.*}} used f2l '_Float16' cinit
-//CHECK-NEXT: | `-UnaryOperator {{.*}} '_Float16' prefix '-'
-//CHECK-NEXT: | `-FloatingLiteral {{.*}} '_Float16' 0.000000e+00
-
- _Float16 f3l = 1.000976562;
-//CHECK: | `-VarDecl {{.*}} used f3l '_Float16' cinit
-//CHECK-NEXT: | `-ImplicitCastExpr {{.*}} '_Float16' <FloatingCast>
-//CHECK-NEXT: | `-FloatingLiteral {{.*}} 'double' 1.000977e+00
-
- C1 c1(f1l);
-//CHECK: | `-VarDecl{{.*}} used c1 'C1' callinit
-//CHECK-NEXT: | `-CXXConstructExpr {{.*}} 'C1' 'void (_Float16)
-//CHECK-NEXT: | `-ImplicitCastExpr {{.*}} '_Float16' <LValueToRValue>
-//CHECK-NEXT: | `-DeclRefExpr {{.*}} '_Float16' lvalue Var 0x{{.*}} 'f1l' '_Float16'
-
- S1<_Float16> s1 = { 132.f16 };
-//CHECK: | `-VarDecl {{.*}} used s1 'S1<_Float16>':'S1<_Float16>' cinit
-//CHECK-NEXT: | `-InitListExpr {{.*}} 'S1<_Float16>':'S1<_Float16>'
-//CHECK-NEXT: | `-FloatingLiteral {{.*}} '_Float16' 1.320000e+02
-
- _Float16 f4l = func1n(f1l) + func1f(f2l) + c1.func1c(f3l) + c1.func2c(f1l) +
- func1t(f1l) + s1.mem2 - f1n + f2n;
-//CHECK: | `-VarDecl {{.*}} used f4l '_Float16' cinit
-//CHECK-NEXT: | `-BinaryOperator {{.*}} '_Float16' '+'
-//CHECK-NEXT: | |-BinaryOperator {{.*}} '_Float16' '-'
-//CHECK-NEXT: | | |-BinaryOperator {{.*}} '_Float16' '+'
-//CHECK-NEXT: | | | |-BinaryOperator {{.*}} '_Float16' '+'
-//CHECK-NEXT: | | | | |-BinaryOperator {{.*}} '_Float16' '+'
-//CHECK-NEXT: | | | | | |-BinaryOperator {{.*}} '_Float16' '+'
-//CHECK-NEXT: | | | | | | |-BinaryOperator {{.*}} '_Float16' '+'
-//CHECK-NEXT: | | | | | | | |-CallExpr {{.*}} '_Float16'
-//CHECK-NEXT: | | | | | | | | |-ImplicitCastExpr {{.*}} 'const volatile _Float16 (*)(const _Float16 &)' <FunctionToPointerDecay>
-//CHECK-NEXT: | | | | | | | | | `-DeclRefExpr {{.*}} 'const volatile _Float16 (const _Float16 &)' lvalue Function {{.*}} 'func1n' 'const volatile _Float16 (const _Float16 &)'
-//CHECK-NEXT: | | | | | | | | `-ImplicitCastExpr {{.*}} 'const _Float16' lvalue <NoOp>
-//CHECK-NEXT: | | | | | | | | `-DeclRefExpr {{.*}} '_Float16' lvalue Var {{.*}} 'f1l' '_Float16'
-//CHECK-NEXT: | | | | | | | `-CallExpr {{.*}} '_Float16'
-//CHECK-NEXT: | | | | | | | |-ImplicitCastExpr {{.*}} '_Float16 (*)(_Float16)' <FunctionToPointerDecay>
-//CHECK-NEXT: | | | | | | | | `-DeclRefExpr {{.*}} '_Float16 (_Float16)' lvalue Function {{.*}} 'func1f' '_Float16 (_Float16)'
-//CHECK-NEXT: | | | | | | | `-ImplicitCastExpr {{.*}} '_Float16' <LValueToRValue>
-//CHECK-NEXT: | | | | | | | `-DeclRefExpr {{.*}} '_Float16' lvalue Var {{.*}} 'f2l' '_Float16'
-//CHECK-NEXT: | | | | | | `-CXXMemberCallExpr {{.*}} '_Float16'
-//CHECK-NEXT: | | | | | | |-MemberExpr {{.*}} '<bound member function type>' .func1c {{.*}}
-//CHECK-NEXT: | | | | | | | `-DeclRefExpr {{.*}} 'C1' lvalue Var {{.*}} 'c1' 'C1'
-//CHECK-NEXT: | | | | | | `-ImplicitCastExpr {{.*}} '_Float16' <LValueToRValue>
-//CHECK-NEXT: | | | | | | `-DeclRefExpr {{.*}} '_Float16' lvalue Var {{.*}} 'f3l' '_Float16'
-//CHECK-NEXT: | | | | | `-CallExpr {{.*}} '_Float16'
-//CHECK-NEXT: | | | | | |-ImplicitCastExpr {{.*}} '_Float16 (*)(_Float16)' <FunctionToPointerDecay>
-//CHECK-NEXT: | | | | | | `-MemberExpr {{.*}} '_Float16 (_Float16)' lvalue .func2c {{.*}}
-//CHECK-NEXT: | | | | | | `-DeclRefExpr {{.*}} 'C1' lvalue Var {{.*}} 'c1' 'C1'
-//CHECK-NEXT: | | | | | `-ImplicitCastExpr {{.*}} '_Float16' <LValueToRValue>
-//CHECK-NEXT: | | | | | `-DeclRefExpr {{.*}} '_Float16' lvalue Var {{.*}} 'f1l' '_Float16'
-//CHECK-NEXT: | | | | `-CallExpr {{.*}} '_Float16':'_Float16'
-//CHECK-NEXT: | | | | |-ImplicitCastExpr {{.*}} '_Float16 (*)(_Float16)' <FunctionToPointerDecay>
-//CHECK-NEXT: | | | | | `-DeclRefExpr {{.*}} '_Float16 (_Float16)' lvalue Function {{.*}} 'func1t' '_Float16 (_Float16)' (FunctionTemplate {{.*}} 'func1t')
-//CHECK-NEXT: | | | | `-ImplicitCastExpr {{.*}} '_Float16' <LValueToRValue>
-//CHECK-NEXT: | | | | `-DeclRefExpr {{.*}} '_Float16' lvalue Var {{.*}} 'f1l' '_Float16'
-//CHECK-NEXT: | | | `-ImplicitCastExpr {{.*}} '_Float16' <LValueToRValue>
-//CHECK-NEXT: | | | `-MemberExpr {{.*}} '_Float16' lvalue .mem2 {{.*}}
-//CHECK-NEXT: | | | `-DeclRefExpr {{.*}} 'S1<_Float16>':'S1<_Float16>' lvalue Var {{.*}} 's1' 'S1<_Float16>':'S1<_Float16>'
-//CHECK-NEXT: | | `-ImplicitCastExpr {{.*}} '_Float16' <LValueToRValue>
-//CHECK-NEXT: | | `-DeclRefExpr {{.*}} '_Float16' lvalue Var {{.*}} 'f1n' '_Float16'
-//CHECK-NEXT: | `-ImplicitCastExpr {{.*}} '_Float16' <LValueToRValue>
-//CHECK-NEXT: | `-DeclRefExpr {{.*}} '_Float16' lvalue Var {{.*}} 'f2n' '_Float16'
-
- auto f5l = -1.f16, *f6l = &f2l, f7l = func1t(f3l);
-//CHECK: | |-VarDecl {{.*}} f5l '_Float16':'_Float16' cinit
-//CHECK-NEXT: | | `-UnaryOperator {{.*}} '_Float16' prefix '-'
-//CHECK-NEXT: | | `-FloatingLiteral {{.*}} '_Float16' 1.000000e+00
-//CHECK-NEXT: | |-VarDecl {{.*}} f6l '_Float16 *' cinit
-//CHECK-NEXT: | | `-UnaryOperator {{.*}} '_Float16 *' prefix '&'
-//CHECK-NEXT: | | `-DeclRefExpr {{.*}} '_Float16' lvalue Var {{.*}} 'f2l' '_Float16'
-//CHECK-NEXT: | `-VarDecl {{.*}} f7l '_Float16':'_Float16' cinit
-//CHECK-NEXT: | `-CallExpr {{.*}} '_Float16':'_Float16'
-//CHECK-NEXT: | |-ImplicitCastExpr {{.*}} '_Float16 (*)(_Float16)' <FunctionToPointerDecay>
-//CHECK-NEXT: | | `-DeclRefExpr {{.*}} '_Float16 (_Float16)' lvalue Function {{.*}} 'func1t' '_Float16 (_Float16)' (FunctionTemplate {{.*}} 'func1t')
-//CHECK-NEXT: | `-ImplicitCastExpr {{.*}} '_Float16' <LValueToRValue>
-//CHECK-NEXT: | `-DeclRefExpr {{.*}} '_Float16' lvalue Var {{.*}} 'f3l' '_Float16'
-
- _Float16 f8l = f4l++;
-//CHECK: | `-VarDecl {{.*}} f8l '_Float16' cinit
-//CHECK-NEXT: | `-UnaryOperator {{.*}} '_Float16' postfix '++'
-//CHECK-NEXT: | `-DeclRefExpr {{.*}} '_Float16' lvalue Var {{.*}} 'f4l' '_Float16'
-
- _Float16 arr1l[] = { -1.f16, -0.f16, -11.f16 };
-//CHECK: `-VarDecl {{.*}} arr1l '_Float16 [3]' cinit
-//CHECK-NEXT: `-InitListExpr {{.*}} '_Float16 [3]'
-//CHECK-NEXT: |-UnaryOperator {{.*}} '_Float16' prefix '-'
-//CHECK-NEXT: | `-FloatingLiteral {{.*}} '_Float16' 1.000000e+00
-//CHECK-NEXT: |-UnaryOperator {{.*}} '_Float16' prefix '-'
-//CHECK-NEXT: | `-FloatingLiteral {{.*}} '_Float16' 0.000000e+00
-//CHECK-NEXT: `-UnaryOperator {{.*}} '_Float16' prefix '-'
-//CHECK-NEXT: `-FloatingLiteral {{.*}} '_Float16' 1.100000e+01
-
- float cvtf = f2n;
-//CHECK: `-VarDecl {{.*}} cvtf 'float' cinit
-//CHECK-NEXT: `-ImplicitCastExpr {{.*}} 'float' <FloatingCast>
-//CHECK-NEXT: `-ImplicitCastExpr {{.*}} '_Float16' <LValueToRValue>
-//CHECK-NEXT: `-DeclRefExpr {{.*}} '_Float16' lvalue Var {{.*}} 'f2n' '_Float16'
-
- double cvtd = f2n;
-//CHECK: `-VarDecl {{.*}} cvtd 'double' cinit
-//CHECK-NEXT: `-ImplicitCastExpr {{.*}} 'double' <FloatingCast>
-//CHECK-NEXT: `-ImplicitCastExpr {{.*}} '_Float16' <LValueToRValue>
-//CHECK-NEXT: `-DeclRefExpr {{.*}} '_Float16' lvalue Var {{.*}} 'f2n' '_Float16'
-
- long double cvtld = f2n;
-//CHECK: `-VarDecl {{.*}} cvtld 'long double' cinit
-//CHECK-NEXT: `-ImplicitCastExpr {{.*}} 'long double' <FloatingCast>
-//CHECK-NEXT: `-ImplicitCastExpr {{.*}} '_Float16' <LValueToRValue>
-//CHECK-NEXT: `-DeclRefExpr {{.*}} '_Float16' lvalue Var {{.*}} 'f2n' '_Float16'
-
- _Float16 f2h = 42.0f;
-//CHECK: `-VarDecl {{.*}} f2h '_Float16' cinit
-//CHECK-NEXT: `-ImplicitCastExpr {{.*}} '_Float16' <FloatingCast>
-//CHECK-NEXT: `-FloatingLiteral {{.*}} 'float' 4.200000e+01
-
- _Float16 d2h = 42.0;
-//CHECK: `-VarDecl {{.*}} d2h '_Float16' cinit
-//CHECK-NEXT: `-ImplicitCastExpr {{.*}} '_Float16' <FloatingCast>
-//CHECK-NEXT: `-FloatingLiteral {{.*}} 'double' 4.200000e+01
-
- _Float16 ld2h = 42.0l;
-//CHECK: `-VarDecl {{.*}} ld2h '_Float16' cinit
-//CHECK-NEXT: `-ImplicitCastExpr {{.*}} '_Float16' <FloatingCast>
-//CHECK-NEXT: `-FloatingLiteral {{.*}} 'long double' 4.200000e+01
-}
Removed: cfe/trunk/test/Misc/Inputs/module.modulemap
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Misc/Inputs/module.modulemap?rev=348016&view=auto
==============================================================================
--- cfe/trunk/test/Misc/Inputs/module.modulemap (original)
+++ cfe/trunk/test/Misc/Inputs/module.modulemap (removed)
@@ -1 +0,0 @@
-module X {}
Removed: cfe/trunk/test/Misc/ast-dump-arm-attr.c
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Misc/ast-dump-arm-attr.c?rev=348016&view=auto
==============================================================================
--- cfe/trunk/test/Misc/ast-dump-arm-attr.c (original)
+++ cfe/trunk/test/Misc/ast-dump-arm-attr.c (removed)
@@ -1,5 +0,0 @@
-// RUN: %clang_cc1 -triple arm-apple-darwin -ast-dump -ast-dump-filter Test %s | FileCheck --strict-whitespace %s
-
-__attribute__((interrupt)) void Test(void);
-// CHECK: FunctionDecl{{.*}}Test
-// CHECK-NEXT: ARMInterruptAttr
Removed: cfe/trunk/test/Misc/ast-dump-attr.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Misc/ast-dump-attr.cpp?rev=348016&view=auto
==============================================================================
--- cfe/trunk/test/Misc/ast-dump-attr.cpp (original)
+++ cfe/trunk/test/Misc/ast-dump-attr.cpp (removed)
@@ -1,233 +0,0 @@
-// RUN: %clang_cc1 -triple x86_64-pc-linux -std=c++11 -Wno-deprecated-declarations -ast-dump -ast-dump-filter Test %s | FileCheck --strict-whitespace %s
-
-int TestLocation
-__attribute__((unused));
-// CHECK: VarDecl{{.*}}TestLocation
-// CHECK-NEXT: UnusedAttr 0x{{[^ ]*}} <line:[[@LINE-2]]:16>
-
-int TestIndent
-__attribute__((unused));
-// CHECK: {{^}}VarDecl{{.*TestIndent[^()]*$}}
-// CHECK-NEXT: {{^}}`-UnusedAttr{{[^()]*$}}
-
-void TestAttributedStmt() {
- switch (1) {
- case 1:
- [[clang::fallthrough]];
- case 2:
- ;
- }
-}
-// CHECK: FunctionDecl{{.*}}TestAttributedStmt
-// CHECK: AttributedStmt
-// CHECK-NEXT: FallThroughAttr
-// CHECK-NEXT: NullStmt
-
-[[clang::warn_unused_result]] int TestCXX11DeclAttr();
-// CHECK: FunctionDecl{{.*}}TestCXX11DeclAttr
-// CHECK-NEXT: WarnUnusedResultAttr
-
-int TestAlignedNull __attribute__((aligned));
-// CHECK: VarDecl{{.*}}TestAlignedNull
-// CHECK-NEXT: AlignedAttr {{.*}} aligned
-// CHECK-NEXT: <<<NULL>>>
-
-int TestAlignedExpr __attribute__((aligned(4)));
-// CHECK: VarDecl{{.*}}TestAlignedExpr
-// CHECK-NEXT: AlignedAttr {{.*}} aligned
-// CHECK-NEXT: ConstantExpr
-// CHECK-NEXT: IntegerLiteral
-
-int TestEnum __attribute__((visibility("default")));
-// CHECK: VarDecl{{.*}}TestEnum
-// CHECK-NEXT: VisibilityAttr{{.*}} Default
-
-class __attribute__((lockable)) Mutex {
-} mu1, mu2;
-int TestExpr __attribute__((guarded_by(mu1)));
-// CHECK: VarDecl{{.*}}TestExpr
-// CHECK-NEXT: GuardedByAttr
-// CHECK-NEXT: DeclRefExpr{{.*}}mu1
-
-class Mutex TestVariadicExpr __attribute__((acquired_after(mu1, mu2)));
-// CHECK: VarDecl{{.*}}TestVariadicExpr
-// CHECK: AcquiredAfterAttr
-// CHECK-NEXT: DeclRefExpr{{.*}}mu1
-// CHECK-NEXT: DeclRefExpr{{.*}}mu2
-
-void function1(void *) {
- int TestFunction __attribute__((cleanup(function1)));
-}
-// CHECK: VarDecl{{.*}}TestFunction
-// CHECK-NEXT: CleanupAttr{{.*}} Function{{.*}}function1
-
-void TestIdentifier(void *, int)
-__attribute__((pointer_with_type_tag(ident1,1,2)));
-// CHECK: FunctionDecl{{.*}}TestIdentifier
-// CHECK: ArgumentWithTypeTagAttr{{.*}} pointer_with_type_tag ident1
-
-void TestBool(void *, int)
-__attribute__((pointer_with_type_tag(bool1,1,2)));
-// CHECK: FunctionDecl{{.*}}TestBool
-// CHECK: ArgumentWithTypeTagAttr{{.*}}pointer_with_type_tag bool1 1 2 IsPointer
-
-void TestUnsigned(void *, int)
-__attribute__((pointer_with_type_tag(unsigned1,1,2)));
-// CHECK: FunctionDecl{{.*}}TestUnsigned
-// CHECK: ArgumentWithTypeTagAttr{{.*}} pointer_with_type_tag unsigned1 1 2
-
-void TestInt(void) __attribute__((constructor(123)));
-// CHECK: FunctionDecl{{.*}}TestInt
-// CHECK-NEXT: ConstructorAttr{{.*}} 123
-
-static int TestString __attribute__((alias("alias1")));
-// CHECK: VarDecl{{.*}}TestString
-// CHECK-NEXT: AliasAttr{{.*}} "alias1"
-
-extern struct s1 TestType
-__attribute__((type_tag_for_datatype(ident1,int)));
-// CHECK: VarDecl{{.*}}TestType
-// CHECK-NEXT: TypeTagForDatatypeAttr{{.*}} int
-
-void TestLabel() {
-L: __attribute__((unused)) int i;
-// CHECK: LabelStmt{{.*}}'L'
-// CHECK: VarDecl{{.*}}i 'int'
-// CHECK-NEXT: UnusedAttr{{.*}}
-
-M: __attribute(()) int j;
-// CHECK: LabelStmt {{.*}} 'M'
-// CHECK-NEXT: DeclStmt
-// CHECK-NEXT: VarDecl {{.*}} j 'int'
-
-N: __attribute(()) ;
-// CHECK: LabelStmt {{.*}} 'N'
-// CHECK-NEXT: NullStmt
-}
-
-namespace Test {
-extern "C" int printf(const char *format, ...);
-// CHECK: FunctionDecl{{.*}}printf
-// CHECK-NEXT: ParmVarDecl{{.*}}format{{.*}}'const char *'
-// CHECK-NEXT: FormatAttr{{.*}}Implicit printf 1 2
-
-alignas(8) extern int x;
-extern int x;
-// CHECK: VarDecl{{.*}} x 'int'
-// CHECK: VarDecl{{.*}} x 'int'
-// CHECK-NEXT: AlignedAttr{{.*}} Inherited
-}
-
-int __attribute__((cdecl)) TestOne(void), TestTwo(void);
-// CHECK: FunctionDecl{{.*}}TestOne{{.*}}__attribute__((cdecl))
-// CHECK: FunctionDecl{{.*}}TestTwo{{.*}}__attribute__((cdecl))
-
-void func() {
- auto Test = []() __attribute__((no_thread_safety_analysis)) {};
- // CHECK: CXXMethodDecl{{.*}}operator() 'void () const'
- // CHECK: NoThreadSafetyAnalysisAttr
-
- // Because GNU's noreturn applies to the function type, and this lambda does
- // not have a capture list, the call operator and the function pointer
- // conversion should both be noreturn, but the method should not contain a
- // NoReturnAttr because the attribute applied to the type.
- auto Test2 = []() __attribute__((noreturn)) { while(1); };
- // CHECK: CXXMethodDecl{{.*}}operator() 'void () __attribute__((noreturn)) const'
- // CHECK-NOT: NoReturnAttr
- // CHECK: CXXConversionDecl{{.*}}operator void (*)() __attribute__((noreturn))
-}
-
-namespace PR20930 {
-struct S {
- struct { int Test __attribute__((deprecated)); };
- // CHECK: FieldDecl{{.*}}Test 'int'
- // CHECK-NEXT: DeprecatedAttr
-};
-
-void f() {
- S s;
- s.Test = 1;
- // CHECK: IndirectFieldDecl{{.*}}Test 'int'
- // CHECK: DeprecatedAttr
-}
-}
-
-struct __attribute__((objc_bridge_related(NSParagraphStyle,,))) TestBridgedRef;
-// CHECK: CXXRecordDecl{{.*}} struct TestBridgedRef
-// CHECK-NEXT: ObjCBridgeRelatedAttr{{.*}} NSParagraphStyle
-
-void TestExternalSourceSymbolAttr1()
-__attribute__((external_source_symbol(language="Swift", defined_in="module", generated_declaration)));
-// CHECK: FunctionDecl{{.*}} TestExternalSourceSymbolAttr1
-// CHECK-NEXT: ExternalSourceSymbolAttr{{.*}} "Swift" "module" GeneratedDeclaration
-
-void TestExternalSourceSymbolAttr2()
-__attribute__((external_source_symbol(defined_in="module", language="Swift")));
-// CHECK: FunctionDecl{{.*}} TestExternalSourceSymbolAttr2
-// CHECK-NEXT: ExternalSourceSymbolAttr{{.*}} "Swift" "module"{{$}}
-
-void TestExternalSourceSymbolAttr3()
-__attribute__((external_source_symbol(generated_declaration, language="Objective-C++", defined_in="module")));
-// CHECK: FunctionDecl{{.*}} TestExternalSourceSymbolAttr3
-// CHECK-NEXT: ExternalSourceSymbolAttr{{.*}} "Objective-C++" "module" GeneratedDeclaration
-
-void TestExternalSourceSymbolAttr4()
-__attribute__((external_source_symbol(defined_in="Some external file.cs", generated_declaration, language="C Sharp")));
-// CHECK: FunctionDecl{{.*}} TestExternalSourceSymbolAttr4
-// CHECK-NEXT: ExternalSourceSymbolAttr{{.*}} "C Sharp" "Some external file.cs" GeneratedDeclaration
-
-void TestExternalSourceSymbolAttr5()
-__attribute__((external_source_symbol(generated_declaration, defined_in="module", language="Swift")));
-// CHECK: FunctionDecl{{.*}} TestExternalSourceSymbolAttr5
-// CHECK-NEXT: ExternalSourceSymbolAttr{{.*}} "Swift" "module" GeneratedDeclaration
-
-namespace TestNoEscape {
- void noescapeFunc(int *p0, __attribute__((noescape)) int *p1) {}
- // CHECK: `-FunctionDecl{{.*}} noescapeFunc 'void (int *, __attribute__((noescape)) int *)'
- // CHECK-NEXT: ParmVarDecl
- // CHECK-NEXT: ParmVarDecl
- // CHECK-NEXT: NoEscapeAttr
-}
-
-namespace TestSuppress {
- [[gsl::suppress("at-namespace")]];
- // CHECK: NamespaceDecl{{.*}} TestSuppress
- // CHECK-NEXT: EmptyDecl{{.*}}
- // CHECK-NEXT: SuppressAttr{{.*}} at-namespace
- [[gsl::suppress("on-decl")]]
- void TestSuppressFunction();
- // CHECK: FunctionDecl{{.*}} TestSuppressFunction
- // CHECK-NEXT SuppressAttr{{.*}} on-decl
-
- void f() {
- int *i;
-
- [[gsl::suppress("on-stmt")]] {
- // CHECK: AttributedStmt
- // CHECK-NEXT: SuppressAttr{{.*}} on-stmt
- // CHECK-NEXT: CompoundStmt
- i = reinterpret_cast<int*>(7);
- }
- }
-}
-
-// Verify the order of attributes in the Ast. It must reflect the order
-// in the parsed source.
-int mergeAttrTest() __attribute__((deprecated)) __attribute__((warn_unused_result));
-int mergeAttrTest() __attribute__((annotate("test")));
-int mergeAttrTest() __attribute__((unused,no_thread_safety_analysis));
-// CHECK: FunctionDecl{{.*}} mergeAttrTest
-// CHECK-NEXT: DeprecatedAttr
-// CHECK-NEXT: WarnUnusedResultAttr
-
-// CHECK: FunctionDecl{{.*}} mergeAttrTest
-// CHECK-NEXT: DeprecatedAttr{{.*}} Inherited
-// CHECK-NEXT: WarnUnusedResultAttr{{.*}} Inherited
-// CHECK-NEXT: AnnotateAttr{{.*}}
-
-// CHECK: FunctionDecl{{.*}} mergeAttrTest
-// CHECK-NEXT: DeprecatedAttr{{.*}} Inherited
-// CHECK-NEXT: WarnUnusedResultAttr{{.*}} Inherited
-// CHECK-NEXT: AnnotateAttr{{.*}} Inherited
-// CHECK-NEXT: UnusedAttr
-// CHECK-NEXT: NoThreadSafetyAnalysisAttr
Removed: cfe/trunk/test/Misc/ast-dump-attr.m
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Misc/ast-dump-attr.m?rev=348016&view=auto
==============================================================================
--- cfe/trunk/test/Misc/ast-dump-attr.m (original)
+++ cfe/trunk/test/Misc/ast-dump-attr.m (removed)
@@ -1,57 +0,0 @@
-// RUN: %clang_cc1 -fdouble-square-bracket-attributes -triple x86_64-apple-macosx10.10.0 -ast-dump -ast-dump-filter Test %s | FileCheck --strict-whitespace %s
-
- at interface NSObject
- at end
-
-[[clang::objc_exception]]
- at interface Test1 {
-// CHECK: ObjCInterfaceDecl{{.*}} Test1
-// CHECK-NEXT: ObjCExceptionAttr{{.*}}
- [[clang::iboutlet]] NSObject *Test2;
-// CHECK: ObjCIvarDecl{{.*}} Test2
-// CHECK-NEXT: IBOutletAttr
-}
- at property (readonly) [[clang::objc_returns_inner_pointer]] void *Test3, *Test4;
-// CHECK: ObjCPropertyDecl{{.*}} Test3 'void *' readonly
-// CHECK-NEXT: ObjCReturnsInnerPointerAttr
-// CHECK-NEXT: ObjCPropertyDecl{{.*}} Test4 'void *' readonly
-// CHECK-NEXT: ObjCReturnsInnerPointerAttr
-
- at property (readonly) [[clang::iboutlet]] NSObject *Test5;
-// CHECK: ObjCPropertyDecl{{.*}} Test5 'NSObject *' readonly
-// CHECK-NEXT: IBOutletAttr
-
-// CHECK: ObjCMethodDecl{{.*}} implicit{{.*}} Test3
-// CHECK-NEXT: ObjCReturnsInnerPointerAttr
-// CHECK: ObjCMethodDecl{{.*}} implicit{{.*}} Test4
-// CHECK-NEXT: ObjCReturnsInnerPointerAttr
-// CHECK: ObjCMethodDecl{{.*}} implicit{{.*}} Test5
-// CHECK-NOT: IBOutletAttr
- at end
-
-[[clang::objc_runtime_name("name")]] @protocol Test6;
-// CHECK: ObjCProtocolDecl{{.*}} Test6
-// CHECK-NEXT: ObjCRuntimeNameAttr{{.*}} "name"
-
-[[clang::objc_protocol_requires_explicit_implementation]]
- at protocol Test7
-// CHECK: ObjCProtocolDecl{{.*}} Test7
-// CHECK-NEXT: ObjCExplicitProtocolImplAttr
- at end
-
- at interface Test8
-// CHECK: ObjCInterfaceDecl{{.*}} Test8
--(void)Test9 [[clang::ns_consumes_self]];
-// CHECK: ObjCMethodDecl{{.*}} Test9 'void'
-// CHECK-NEXT: NSConsumesSelfAttr
--(void) [[clang::ns_consumes_self]] Test10: (int)Test11;
-// CHECK: ObjCMethodDecl{{.*}} Test10: 'void'
-// CHECK-NEXT: |-ParmVarDecl{{.*}} Test11 'int'
-// CHECK-NEXT: `-NSConsumesSelfAttr
--(void)Test12: (int *) [[clang::noescape]] Test13 to:(int)Test14 [[clang::ns_consumes_self]];
-// CHECK: ObjCMethodDecl{{.*}} Test12:to: 'void'
-// CHECK-NEXT: |-ParmVarDecl{{.*}} Test13 'int *'
-// CHECK-NEXT: | `-NoEscapeAttr
-// CHECK-NEXT: |-ParmVarDecl{{.*}} Test14 'int'
-// CHECK-NEXT: `-NSConsumesSelfAttr
- at end
Removed: cfe/trunk/test/Misc/ast-dump-c-attr.c
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Misc/ast-dump-c-attr.c?rev=348016&view=auto
==============================================================================
--- cfe/trunk/test/Misc/ast-dump-c-attr.c (original)
+++ cfe/trunk/test/Misc/ast-dump-c-attr.c (removed)
@@ -1,47 +0,0 @@
-// RUN: %clang_cc1 -triple x86_64-pc-linux -fdouble-square-bracket-attributes -Wno-deprecated-declarations -ast-dump -ast-dump-filter Test %s | FileCheck --strict-whitespace %s
-
-int Test1 [[deprecated]];
-// CHECK: VarDecl{{.*}}Test1
-// CHECK-NEXT: DeprecatedAttr 0x{{[^ ]*}} <col:13> "" ""
-
-enum [[deprecated("Frobble")]] Test2 {
- Test3 [[deprecated]]
-};
-// CHECK: EnumDecl{{.*}}Test2
-// CHECK-NEXT: DeprecatedAttr 0x{{[^ ]*}} <col:8, col:28> "Frobble" ""
-// CHECK-NEXT: EnumConstantDecl{{.*}}Test3
-// CHECK-NEXT: DeprecatedAttr 0x{{[^ ]*}} <col:11> "" ""
-
-struct [[deprecated]] Test4 {
- [[deprecated("Frobble")]] int Test5, Test6;
- int Test7 [[deprecated]] : 12;
-};
-// CHECK: RecordDecl{{.*}}Test4
-// CHECK-NEXT: DeprecatedAttr 0x{{[^ ]*}} <col:10> "" ""
-// CHECK-NEXT: FieldDecl{{.*}}Test5
-// CHECK-NEXT: DeprecatedAttr 0x{{[^ ]*}} <col:5, col:25> "Frobble" ""
-// CHECK-NEXT: FieldDecl{{.*}}Test6
-// CHECK-NEXT: DeprecatedAttr 0x{{[^ ]*}} <col:5, col:25> "Frobble" ""
-// CHECK-NEXT: FieldDecl{{.*}}Test7
-// CHECK-NEXT: Constant{{.*}}'int'
-// CHECK-NEXT: IntegerLiteral{{.*}}'int' 12
-// CHECK-NEXT: DeprecatedAttr 0x{{[^ ]*}} <col:15> "" ""
-
-struct [[deprecated]] Test8;
-// CHECK: RecordDecl{{.*}}Test8
-// CHECK-NEXT: DeprecatedAttr 0x{{[^ ]*}} <col:10> "" ""
-
-[[deprecated]] void Test9(int Test10 [[deprecated]]);
-// CHECK: FunctionDecl{{.*}}Test9
-// CHECK-NEXT: ParmVarDecl{{.*}}Test10
-// CHECK-NEXT: DeprecatedAttr 0x{{[^ ]*}} <col:40> "" ""
-// CHECK-NEXT: DeprecatedAttr 0x{{[^ ]*}} <col:3> "" ""
-
-void Test11 [[deprecated]](void);
-// CHECK: FunctionDecl{{.*}}Test11
-// CHECK-NEXT: DeprecatedAttr 0x{{[^ ]*}} <col:15> "" ""
-
-void Test12(void) [[deprecated]] {}
-// CHECK: FunctionDecl{{.*}}Test12
-// CHECK-NEXT: CompoundStmt
-// CHECK-NEXT: DeprecatedAttr 0x{{[^ ]*}} <col:21> "" ""
Removed: cfe/trunk/test/Misc/ast-dump-color.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Misc/ast-dump-color.cpp?rev=348016&view=auto
==============================================================================
--- cfe/trunk/test/Misc/ast-dump-color.cpp (original)
+++ cfe/trunk/test/Misc/ast-dump-color.cpp (removed)
@@ -1,102 +0,0 @@
-// RUN: not %clang_cc1 -triple x86_64-pc-linux -std=c++11 -ast-dump -fcolor-diagnostics %s | FileCheck --strict-whitespace %s
-// REQUIRES: ansi-escape-sequences
-
-/// <a>Hello</a>
-/// <br/>
-int Test __attribute__((unused));
-
-/// Comment
-void TestAttributedStmt() {
- switch (1) {
- case 1:
- [[clang::fallthrough]];
- case 2:
- ;
- }
-}
-
-class __attribute__((lockable)) Mutex {
- /// A variable
- int var1;
- /// Another variable
- ///
- /// Like the other variable, but different
- int var2;
-} mu1, mu2;
-int TestExpr __attribute__((guarded_by(mu1)));
-
-struct Invalid {
- __attribute__((noinline)) Invalid(error);
-} Invalid;
-
-//CHECK: {{^}}[[GREEN:.\[0;1;32m]]TranslationUnitDecl[[RESET:.\[0m]][[Yellow:.\[0;33m]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]<invalid sloc>[[RESET]]> [[Yellow]]<invalid sloc>[[RESET]]{{$}}
-//CHECK: {{^}}[[Blue:.\[0;34m]]|-[[RESET]][[GREEN]]TypedefDecl[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]<invalid sloc>[[RESET]]> [[Yellow]]<invalid sloc>[[RESET]] implicit[[CYAN:.\[0;1;36m]] __int128_t[[RESET]] [[Green:.\[0;32m]]'__int128'[[RESET]]{{$}}
-//CHECK: {{^}}[[Blue]]|-[[RESET]][[GREEN]]TypedefDecl[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]<invalid sloc>[[RESET]]> [[Yellow]]<invalid sloc>[[RESET]] implicit[[CYAN]] __uint128_t[[RESET]] [[Green]]'unsigned __int128'[[RESET]]{{$}}
-//CHECK: {{^}}[[Blue]]|-[[RESET]][[GREEN]]TypedefDecl[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]<invalid sloc>[[RESET]]> [[Yellow]]<invalid sloc>[[RESET]] implicit[[CYAN]] __builtin_va_list[[RESET]] [[Green]]'__va_list_tag [1]'[[RESET]]{{$}}
-//CHECK: {{^}}[[Blue]]|-[[RESET]][[GREEN]]VarDecl[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]{{.*}}ast-dump-color.cpp:6:1[[RESET]], [[Yellow]]col:5[[RESET]]> [[Yellow]]col:5[[RESET]][[CYAN]] Test[[RESET]] [[Green]]'int'[[RESET]]
-//CHECK: {{^}}[[Blue]]| |-[[RESET]][[BLUE:.\[0;1;34m]]UnusedAttr[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]col:25[[RESET]]> unused{{$}}
-//CHECK: {{^}}[[Blue]]| `-[[RESET]][[Blue]]FullComment[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]line:4:4[[RESET]], [[Yellow]]line:5:8[[RESET]]>{{$}}
-//CHECK: {{^}}[[Blue]]| `-[[RESET]][[Blue]]ParagraphComment[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]line:4:4[[RESET]], [[Yellow]]line:5:8[[RESET]]>{{$}}
-//CHECK: {{^}}[[Blue]]| |-[[RESET]][[Blue]]TextComment[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]line:4:4[[RESET]]> Text=" "{{$}}
-//CHECK: {{^}}[[Blue]]| |-[[RESET]][[Blue]]HTMLStartTagComment[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]col:5[[RESET]], [[Yellow]]col:7[[RESET]]> Name="a"{{$}}
-//CHECK: {{^}}[[Blue]]| |-[[RESET]][[Blue]]TextComment[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]col:8[[RESET]], [[Yellow]]col:12[[RESET]]> Text="Hello"{{$}}
-//CHECK: {{^}}[[Blue]]| |-[[RESET]][[Blue]]HTMLEndTagComment[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]col:13[[RESET]], [[Yellow]]col:16[[RESET]]> Name="a"{{$}}
-//CHECK: {{^}}[[Blue]]| |-[[RESET]][[Blue]]TextComment[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]line:5:4[[RESET]]> Text=" "{{$}}
-//CHECK: {{^}}[[Blue]]| `-[[RESET]][[Blue]]HTMLStartTagComment[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]col:5[[RESET]], [[Yellow]]col:8[[RESET]]> Name="br" SelfClosing{{$}}
-//CHECK: {{^}}[[Blue]]|-[[RESET]][[GREEN]]FunctionDecl[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]line:9:1[[RESET]], [[Yellow]]line:16:1[[RESET]]> [[Yellow]]line:9:6[[RESET]][[CYAN]] TestAttributedStmt[[RESET]] [[Green]]'void ()'[[RESET]]{{$}}
-//CHECK: {{^}}[[Blue]]| |-[[RESET]][[MAGENTA:.\[0;1;35m]]CompoundStmt[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]col:27[[RESET]], [[Yellow]]line:16:1[[RESET]]>{{$}}
-//CHECK: {{^}}[[Blue]]| | `-[[RESET]][[MAGENTA]]SwitchStmt[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]line:10:3[[RESET]], [[Yellow]]line:15:3[[RESET]]>{{$}}
-//CHECK: {{^}}[[Blue]]| | |-[[RESET]][[MAGENTA]]IntegerLiteral[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]line:10:11[[RESET]]> [[Green]]'int'[[RESET]][[Cyan:.\[0;36m]][[RESET]][[Cyan]][[RESET]][[CYAN]] 1[[RESET]]{{$}}
-//CHECK: {{^}}[[Blue]]| | `-[[RESET]][[MAGENTA]]CompoundStmt[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]col:14[[RESET]], [[Yellow]]line:15:3[[RESET]]>{{$}}
-//CHECK: {{^}}[[Blue]]| | |-[[RESET]][[MAGENTA]]CaseStmt[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]line:11:3[[RESET]], [[Yellow]]line:12:27[[RESET]]>{{$}}
-//CHECK: {{^}}[[Blue]]| | | |-[[RESET]][[MAGENTA]]ConstantExpr[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]line:11:8[[RESET]]> [[Green]]'int'[[RESET]][[Cyan]][[RESET]][[Cyan]][[RESET]]{{$}}
-//CHECK: {{^}}[[Blue]]| | | | `-[[RESET]][[MAGENTA]]IntegerLiteral[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]col:8[[RESET]]> [[Green]]'int'[[RESET]][[Cyan]][[RESET]][[Cyan]][[RESET]][[CYAN]] 1[[RESET]]{{$}}
-//CHECK: {{^}}[[Blue]]| | | `-[[RESET]][[MAGENTA]]AttributedStmt[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]line:12:5[[RESET]], [[Yellow]]col:27[[RESET]]>{{$}}
-//CHECK: {{^}}[[Blue]]| | | |-[[RESET]][[BLUE]]FallThroughAttr[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]col:7[[RESET]], [[Yellow]]col:14[[RESET]]>{{$}}
-//CHECK: {{^}}[[Blue]]| | | `-[[RESET]][[MAGENTA]]NullStmt[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]col:27[[RESET]]>{{$}}
-//CHECK: {{^}}[[Blue]]| | `-[[RESET]][[MAGENTA]]CaseStmt[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]line:13:3[[RESET]], [[Yellow]]line:14:5[[RESET]]>{{$}}
-//CHECK: {{^}}[[Blue]]| | |-[[RESET]][[MAGENTA]]ConstantExpr[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]line:13:8[[RESET]]> [[Green]]'int'[[RESET]][[Cyan]][[RESET]][[Cyan]][[RESET]]{{$}}
-//CHECK: {{^}}[[Blue]]| | | `-[[RESET]][[MAGENTA]]IntegerLiteral[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]col:8[[RESET]]> [[Green]]'int'[[RESET]][[Cyan]][[RESET]][[Cyan]][[RESET]][[CYAN]] 2[[RESET]]{{$}}
-//CHECK: {{^}}[[Blue]]| | `-[[RESET]][[MAGENTA]]NullStmt[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]line:14:5[[RESET]]>{{$}}
-//CHECK: {{^}}[[Blue]]| `-[[RESET]][[Blue]]FullComment[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]line:8:4[[RESET]], [[Yellow]]col:11[[RESET]]>{{$}}
-//CHECK: {{^}}[[Blue]]| `-[[RESET]][[Blue]]ParagraphComment[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]col:4[[RESET]], [[Yellow]]col:11[[RESET]]>{{$}}
-//CHECK: {{^}}[[Blue]]| `-[[RESET]][[Blue]]TextComment[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]col:4[[RESET]], [[Yellow]]col:11[[RESET]]> Text=" Comment"{{$}}
-//CHECK: {{^}}[[Blue]]|-[[RESET]][[GREEN]]CXXRecordDecl[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]line:18:1[[RESET]], [[Yellow]]line:25:1[[RESET]]> [[Yellow]]line:18:33[[RESET]] class[[CYAN]] Mutex[[RESET]] definition{{$}}
-//CHECK: {{^}}[[Blue]]| |-[[RESET]][[BLUE]]CapabilityAttr[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]col:22[[RESET]]> capability "mutex"{{$}}
-//CHECK: {{^}}[[Blue]]| |-[[RESET]][[GREEN]]CXXRecordDecl[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]col:1[[RESET]], [[Yellow]]col:33[[RESET]]> [[Yellow]]col:33[[RESET]] implicit class[[CYAN]] Mutex[[RESET]]{{$}}
-//CHECK: {{^}}[[Blue]]| |-[[RESET]][[GREEN]]FieldDecl[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]line:20:3[[RESET]], [[Yellow]]col:7[[RESET]]> [[Yellow]]col:7[[RESET]][[CYAN]] var1[[RESET]] [[Green]]'int'[[RESET]]{{$}}
-//CHECK: {{^}}[[Blue]]| | `-[[RESET]][[Blue]]FullComment[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]line:19:6[[RESET]], [[Yellow]]col:16[[RESET]]>{{$}}
-//CHECK: {{^}}[[Blue]]| | `-[[RESET]][[Blue]]ParagraphComment[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]col:6[[RESET]], [[Yellow]]col:16[[RESET]]>{{$}}
-//CHECK: {{^}}[[Blue]]| | `-[[RESET]][[Blue]]TextComment[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]col:6[[RESET]], [[Yellow]]col:16[[RESET]]> Text=" A variable"{{$}}
-//CHECK: {{^}}[[Blue]]| |-[[RESET]][[GREEN]]FieldDecl[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]line:24:3[[RESET]], [[Yellow]]col:7[[RESET]]> [[Yellow]]col:7[[RESET]][[CYAN]] var2[[RESET]] [[Green]]'int'[[RESET]]{{$}}
-//CHECK: {{^}}[[Blue]]| | `-[[RESET]][[Blue]]FullComment[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]line:21:6[[RESET]], [[Yellow]]line:23:44[[RESET]]>{{$}}
-//CHECK: {{^}}[[Blue]]| | |-[[RESET]][[Blue]]ParagraphComment[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]line:21:6[[RESET]], [[Yellow]]col:22[[RESET]]>{{$}}
-//CHECK: {{^}}[[Blue]]| | | `-[[RESET]][[Blue]]TextComment[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]col:6[[RESET]], [[Yellow]]col:22[[RESET]]> Text=" Another variable"{{$}}
-//CHECK: {{^}}[[Blue]]| | `-[[RESET]][[Blue]]ParagraphComment[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]line:23:6[[RESET]], [[Yellow]]col:44[[RESET]]>{{$}}
-//CHECK: {{^}}[[Blue]]| | `-[[RESET]][[Blue]]TextComment[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]col:6[[RESET]], [[Yellow]]col:44[[RESET]]> Text=" Like the other variable, but different"{{$}}
-//CHECK: {{^}}[[Blue]]| |-[[RESET]][[GREEN]]CXXConstructorDecl[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]line:18:33[[RESET]]> [[Yellow]]col:33[[RESET]] implicit used[[CYAN]] Mutex[[RESET]] [[Green]]'void () noexcept'[[RESET]] inline{{.*$}}
-//CHECK: {{^}}[[Blue]]| | `-[[RESET]][[MAGENTA]]CompoundStmt[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]col:33[[RESET]]>{{$}}
-//CHECK: {{^}}[[Blue]]| |-[[RESET]][[GREEN]]CXXConstructorDecl[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]col:33[[RESET]]> [[Yellow]]col:33[[RESET]] implicit constexpr[[CYAN]] Mutex[[RESET]] [[Green]]'void (const Mutex &)'[[RESET]] inline{{ .*$}}
-//CHECK: {{^}}[[Blue]]| | `-[[RESET]][[GREEN]]ParmVarDecl[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]col:33[[RESET]]> [[Yellow]]col:33[[RESET]] [[Green]]'const Mutex &'[[RESET]]{{$}}
-//CHECK: {{^}}[[Blue]]| `-[[RESET]][[GREEN]]CXXConstructorDecl[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]col:33[[RESET]]> [[Yellow]]col:33[[RESET]] implicit constexpr[[CYAN]] Mutex[[RESET]] [[Green]]'void (Mutex &&)'[[RESET]] inline{{ .*$}}
-//CHECK: {{^}}[[Blue]]| `-[[RESET]][[GREEN]]ParmVarDecl[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]col:33[[RESET]]> [[Yellow]]col:33[[RESET]] [[Green]]'Mutex &&'[[RESET]]{{$}}
-//CHECK: {{^}}[[Blue]]|-[[RESET]][[GREEN]]VarDecl[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]col:1[[RESET]], [[Yellow]]line:25:3[[RESET]]> [[Yellow]]col:3[[RESET]] referenced[[CYAN]] mu1[[RESET]] [[Green]]'class Mutex':'Mutex'[[RESET]]
-//CHECK: {{^}}[[Blue]]| `-[[RESET]][[MAGENTA]]CXXConstructExpr[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]col:3[[RESET]]> [[Green]]'class Mutex':'Mutex'[[RESET]][[Cyan]][[RESET]][[Cyan]][[RESET]] [[Green]]'void () noexcept'[[RESET]]{{$}}
-//CHECK: {{^}}[[Blue]]|-[[RESET]][[GREEN]]VarDecl[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]line:18:1[[RESET]], [[Yellow]]line:25:8[[RESET]]> [[Yellow]]col:8[[RESET]][[CYAN]] mu2[[RESET]] [[Green]]'class Mutex':'Mutex'[[RESET]]
-//CHECK: {{^}}[[Blue]]| `-[[RESET]][[MAGENTA]]CXXConstructExpr[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]col:8[[RESET]]> [[Green]]'class Mutex':'Mutex'[[RESET]][[Cyan]][[RESET]][[Cyan]][[RESET]] [[Green]]'void () noexcept'[[RESET]]{{$}}
-//CHECK: {{^}}[[Blue]]|-[[RESET]][[GREEN]]VarDecl[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]line:26:1[[RESET]], [[Yellow]]col:5[[RESET]]> [[Yellow]]col:5[[RESET]][[CYAN]] TestExpr[[RESET]] [[Green]]'int'[[RESET]]
-//CHECK: {{^}}[[Blue]]| `-[[RESET]][[BLUE]]GuardedByAttr[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]col:29[[RESET]], [[Yellow]]col:43[[RESET]]>{{$}}
-//CHECK: {{^}}[[Blue]]| `-[[RESET]][[MAGENTA]]DeclRefExpr[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]col:40[[RESET]]> [[Green]]'class Mutex':'Mutex'[[RESET]][[Cyan]] lvalue[[RESET]][[Cyan]][[RESET]] [[GREEN]]Var[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]][[CYAN]] 'mu1'[[RESET]] [[Green]]'class Mutex':'Mutex'[[RESET]]{{$}}
-//CHECK: {{^}}[[Blue]]|-[[RESET]][[GREEN]]CXXRecordDecl[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]line:28:1[[RESET]], [[Yellow]]line:30:1[[RESET]]> [[Yellow]]line:28:8[[RESET]] struct[[CYAN]] Invalid[[RESET]] definition
-//CHECK: {{^}}[[Blue]]| |-[[RESET]][[GREEN]]CXXRecordDecl[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]col:1[[RESET]], [[Yellow]]col:8[[RESET]]> [[Yellow]]col:8[[RESET]] implicit referenced struct[[CYAN]] Invalid[[RESET]]
-//CHECK: {{^}}[[Blue]]| |-[[RESET]][[GREEN]]CXXConstructorDecl[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]line:29:3[[RESET]], [[Yellow]]col:42[[RESET]]> [[Yellow]]col:29[[RESET]] invalid[[CYAN]] Invalid[[RESET]] [[Green]]'void (int)'[[RESET]]
-//CHECK: {{^}}[[Blue]]| | |-[[RESET]][[GREEN]]ParmVarDecl[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]col:37[[RESET]], [[Yellow]]<invalid sloc>[[RESET]]> [[Yellow]]col:42[[RESET]] invalid [[Green]]'int'[[RESET]]
-//CHECK: {{^}}[[Blue]]| | `-[[RESET]][[BLUE]]NoInlineAttr[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]col:18[[RESET]]>
-//CHECK: {{^}}[[Blue]]| |-[[RESET]][[GREEN]]CXXConstructorDecl[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]line:28:8[[RESET]]> [[Yellow]]col:8[[RESET]] implicit used constexpr[[CYAN]] Invalid[[RESET]] [[Green]]'void () noexcept'[[RESET]] inline
-//CHECK: {{^}}[[Blue]]| | `-[[RESET]][[MAGENTA]]CompoundStmt[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]col:8[[RESET]]>
-//CHECK: {{^}}[[Blue]]| |-[[RESET]][[GREEN]]CXXConstructorDecl[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]col:8[[RESET]]> [[Yellow]]col:8[[RESET]] implicit constexpr[[CYAN]] Invalid[[RESET]] [[Green]]'void (const Invalid &)'[[RESET]] inline default trivial noexcept-unevaluated 0x{{[0-9a-fA-F]*}}
-//CHECK: {{^}}[[Blue]]| | `-[[RESET]][[GREEN]]ParmVarDecl[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]col:8[[RESET]]> [[Yellow]]col:8[[RESET]] [[Green]]'const Invalid &'[[RESET]]
-//CHECK: {{^}}[[Blue]]| `-[[RESET]][[GREEN]]CXXConstructorDecl[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]col:8[[RESET]]> [[Yellow]]col:8[[RESET]] implicit constexpr[[CYAN]] Invalid[[RESET]] [[Green]]'void (Invalid &&)'[[RESET]] inline default trivial noexcept-unevaluated 0x{{[0-9a-fA-F]*}}
-//CHECK: {{^}}[[Blue]]| `-[[RESET]][[GREEN]]ParmVarDecl[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]col:8[[RESET]]> [[Yellow]]col:8[[RESET]] [[Green]]'Invalid &&'[[RESET]]
-//CHECK: {{^}}[[Blue]]`-[[RESET]][[GREEN]]VarDecl[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]col:1[[RESET]], [[Yellow]]line:30:3[[RESET]]> [[Yellow]]col:3[[RESET]][[CYAN]] Invalid[[RESET]] [[Green]]'struct Invalid':'Invalid'[[RESET]]
-//CHECK: {{^}}[[Blue]] `-[[RESET]][[MAGENTA]]CXXConstructExpr[[RESET]][[Yellow]] 0x{{[0-9a-fA-F]*}}[[RESET]] <[[Yellow]]col:3[[RESET]]> [[Green]]'struct Invalid':'Invalid'[[RESET]][[Cyan]][[RESET]][[Cyan]][[RESET]] [[Green]]'void () noexcept'[[RESET]]
Removed: cfe/trunk/test/Misc/ast-dump-comment.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Misc/ast-dump-comment.cpp?rev=348016&view=auto
==============================================================================
--- cfe/trunk/test/Misc/ast-dump-comment.cpp (original)
+++ cfe/trunk/test/Misc/ast-dump-comment.cpp (removed)
@@ -1,77 +0,0 @@
-// RUN: %clang_cc1 -Wdocumentation -ast-dump -ast-dump-filter Test %s | FileCheck -strict-whitespace %s
-
-/// Aaa
-int TestLocation;
-// CHECK: VarDecl{{.*}}TestLocation
-// CHECK-NEXT: FullComment 0x{{[^ ]*}} <line:[[@LINE-3]]:4, col:7>
-
-///
-int TestIndent;
-// CHECK: {{^VarDecl.*TestIndent[^()]*$}}
-// CHECK-NEXT: {{^`-FullComment.*>$}}
-
-/// Aaa
-int Test_TextComment;
-// CHECK: VarDecl{{.*}}Test_TextComment
-// CHECK-NEXT: FullComment
-// CHECK-NEXT: ParagraphComment
-// CHECK-NEXT: TextComment{{.*}} Text=" Aaa"
-
-/// \brief Aaa
-int Test_BlockCommandComment;
-// CHECK: VarDecl{{.*}}Test_BlockCommandComment
-// CHECK: BlockCommandComment{{.*}} Name="brief"
-// CHECK-NEXT: ParagraphComment
-// CHECK-NEXT: TextComment{{.*}} Text=" Aaa"
-
-/// \param Aaa xxx
-/// \param [in,out] Bbb yyy
-void Test_ParamCommandComment(int Aaa, int Bbb);
-// CHECK: FunctionDecl{{.*}}Test_ParamCommandComment
-// CHECK: ParamCommandComment{{.*}} [in] implicitly Param="Aaa" ParamIndex=0
-// CHECK-NEXT: ParagraphComment
-// CHECK-NEXT: TextComment{{.*}} Text=" xxx"
-// CHECK: ParamCommandComment{{.*}} [in,out] explicitly Param="Bbb" ParamIndex=1
-// CHECK-NEXT: ParagraphComment
-// CHECK-NEXT: TextComment{{.*}} Text=" yyy"
-
-/// \tparam Aaa xxx
-template <typename Aaa> class Test_TParamCommandComment;
-// CHECK: ClassTemplateDecl{{.*}}Test_TParamCommandComment
-// CHECK: TParamCommandComment{{.*}} Param="Aaa" Position=<0>
-// CHECK-NEXT: ParagraphComment
-// CHECK-NEXT: TextComment{{.*}} Text=" xxx"
-
-/// \c Aaa
-int Test_InlineCommandComment;
-// CHECK: VarDecl{{.*}}Test_InlineCommandComment
-// CHECK: InlineCommandComment{{.*}} Name="c" RenderMonospaced Arg[0]="Aaa"
-
-/// <a>Aaa</a>
-/// <br/>
-int Test_HTMLTagComment;
-// CHECK: VarDecl{{.*}}Test_HTMLTagComment
-// CHECK-NEXT: FullComment
-// CHECK-NEXT: ParagraphComment
-// CHECK-NEXT: TextComment{{.*}} Text=" "
-// CHECK-NEXT: HTMLStartTagComment{{.*}} Name="a"
-// CHECK-NEXT: TextComment{{.*}} Text="Aaa"
-// CHECK-NEXT: HTMLEndTagComment{{.*}} Name="a"
-// CHECK-NEXT: TextComment{{.*}} Text=" "
-// CHECK-NEXT: HTMLStartTagComment{{.*}} Name="br" SelfClosing
-
-/// \verbatim
-/// Aaa
-/// \endverbatim
-int Test_VerbatimBlockComment;
-// CHECK: VarDecl{{.*}}Test_VerbatimBlockComment
-// CHECK: VerbatimBlockComment{{.*}} Name="verbatim" CloseName="endverbatim"
-// CHECK-NEXT: VerbatimBlockLineComment{{.*}} Text=" Aaa"
-
-/// \param ... More arguments
-template<typename T>
-void Test_TemplatedFunctionVariadic(int arg, ...);
-// CHECK: FunctionTemplateDecl{{.*}}Test_TemplatedFunctionVariadic
-// CHECK: ParamCommandComment{{.*}} [in] implicitly Param="..."
-// CHECK-NEXT: ParagraphComment
-// CHECK-NEXT: TextComment{{.*}} Text=" More arguments"
Removed: cfe/trunk/test/Misc/ast-dump-decl-stmts.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Misc/ast-dump-decl-stmts.cpp?rev=348016&view=auto
==============================================================================
--- cfe/trunk/test/Misc/ast-dump-decl-stmts.cpp (original)
+++ cfe/trunk/test/Misc/ast-dump-decl-stmts.cpp (removed)
@@ -1,30 +0,0 @@
-// RUN: %clang_cc1 -triple x86_64-unknown-unknown -ast-dump %s | FileCheck -strict-whitespace %s
-
-void test_func() {
- int a, b, c;
- // CHECK: DeclStmt 0x{{[^ ]*}} <line:[[@LINE-1]]:3, col:14>
- // CHECK-NEXT: VarDecl 0x{{[^ ]*}} <col:3, col:7> col:7 a 'int'
- // CHECK-NEXT: VarDecl 0x{{[^ ]*}} <col:3, col:10> col:10 b 'int'
- // CHECK-NEXT: VarDecl 0x{{[^ ]*}} <col:3, col:13> col:13 c 'int'
- void d(), e(int);
- // CHECK: DeclStmt 0x{{[^ ]*}} <line:[[@LINE-1]]:3, col:19>
- // CHECK-NEXT: FunctionDecl 0x{{[^ ]*}} parent 0x{{[^ ]*}} <col:3, col:10> col:8 d 'void ()'
- // CHECK-NEXT: FunctionDecl 0x{{[^ ]*}} parent 0x{{[^ ]*}} <col:3, col:18> col:13 e 'void (int)'
- // CHECK-NEXT: ParmVarDecl 0x{{[^ ]*}} <col:15> col:18 'int'
- int f;
- // CHECK: DeclStmt 0x{{[^ ]*}} <line:[[@LINE-1]]:3, col:8>
- // CHECK-NEXT: VarDecl 0x{{[^ ]*}} <col:3, col:7> col:7 f 'int'
-}
-
-// FIXME: These currently do not show up as a DeclStmt.
-int a, b, c;
-// CHECK: VarDecl 0x{{[^ ]*}} <line:[[@LINE-1]]:1, col:5> col:5 a 'int'
-// CHECK-NEXT: VarDecl 0x{{[^ ]*}} <col:1, col:8> col:8 b 'int'
-// CHECK-NEXT: VarDecl 0x{{[^ ]*}} <col:1, col:11> col:11 c 'int'
-void d(), e(int);
-// CHECK: FunctionDecl 0x{{[^ ]*}} prev 0x{{[^ ]*}} <line:[[@LINE-1]]:1, col:8> col:6 d 'void ()'
-// CHECK-NEXT: FunctionDecl 0x{{[^ ]*}} prev 0x{{[^ ]*}} <col:1, col:16> col:11 e 'void (int)'
-// CHECK-NEXT: ParmVarDecl 0x{{[^ ]*}} <col:13> col:16 'int'
-int f;
-// CHECK: VarDecl 0x{{[^ ]*}} <line:[[@LINE-1]]:1, col:5> col:5 f 'int'
-
Removed: cfe/trunk/test/Misc/ast-dump-decl.c
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Misc/ast-dump-decl.c?rev=348016&view=auto
==============================================================================
--- cfe/trunk/test/Misc/ast-dump-decl.c (original)
+++ cfe/trunk/test/Misc/ast-dump-decl.c (removed)
@@ -1,170 +0,0 @@
-// RUN: %clang_cc1 -triple x86_64-unknown-unknown -ast-dump -ast-dump-filter Test %s | FileCheck -strict-whitespace %s
-// RUN: %clang_cc1 -triple x86_64-unknown-unknown -ast-dump %s | FileCheck -check-prefix CHECK-TU -strict-whitespace %s
-// RUN: %clang_cc1 -fmodules -fmodules-local-submodule-visibility -fmodule-name=X -triple x86_64-unknown-unknown -fmodule-map-file=%S/Inputs/module.modulemap -ast-dump -ast-dump-filter Test %s -DMODULES | FileCheck -check-prefix CHECK -check-prefix CHECK-MODULES -strict-whitespace %s
-
-int TestLocation;
-// CHECK: VarDecl 0x{{[^ ]*}} <{{.*}}:[[@LINE-1]]:1, col:5> col:5 TestLocation
-
-#ifdef MODULES
-#pragma clang module begin X
-#endif
-
-struct TestIndent {
- int x;
-};
-// CHECK: {{^}}RecordDecl{{.*TestIndent[^()]*$}}
-// CHECK-NEXT: {{^}}`-FieldDecl{{.*x[^()]*$}}
-
-struct TestChildren {
- int x;
- struct y {
- int z;
- };
-};
-// CHECK: RecordDecl{{.*}}TestChildren
-// CHECK-NEXT: FieldDecl{{.*}}x
-// CHECK-NEXT: RecordDecl{{.*}}y
-// CHECK-NEXT: FieldDecl{{.*}}z
-
-// CHECK-TU: TranslationUnitDecl
-
-void testLabelDecl() {
- __label__ TestLabelDecl;
- TestLabelDecl: goto TestLabelDecl;
-}
-// CHECK: LabelDecl{{.*}} TestLabelDecl
-
-typedef int TestTypedefDecl;
-// CHECK: TypedefDecl{{.*}} TestTypedefDecl 'int'
-
-__module_private__ typedef int TestTypedefDeclPrivate;
-// CHECK-MODULE: TypedefDecl{{.*}} TestTypedefDeclPrivate 'int' __module_private__
-
-enum TestEnumDecl {
- testEnumDecl
-};
-// CHECK: EnumDecl{{.*}} TestEnumDecl
-// CHECK-NEXT: EnumConstantDecl{{.*}} testEnumDecl
-
-struct TestEnumDeclAnon {
- enum {
- testEnumDeclAnon
- } e;
-};
-// CHECK: RecordDecl{{.*}} TestEnumDeclAnon
-// CHECK-NEXT: EnumDecl{{.*> .*$}}
-
-enum TestEnumDeclForward;
-// CHECK: EnumDecl{{.*}} TestEnumDeclForward
-
-__module_private__ enum TestEnumDeclPrivate;
-// CHECK-MODULE: EnumDecl{{.*}} TestEnumDeclPrivate __module_private__
-
-struct TestRecordDecl {
- int i;
-};
-// CHECK: RecordDecl{{.*}} struct TestRecordDecl
-// CHECK-NEXT: FieldDecl
-
-struct TestRecordDeclEmpty {
-};
-// CHECK: RecordDecl{{.*}} struct TestRecordDeclEmpty
-
-struct TestRecordDeclAnon1 {
- struct {
- } testRecordDeclAnon1;
-};
-// CHECK: RecordDecl{{.*}} struct TestRecordDeclAnon1
-// CHECK-NEXT: RecordDecl{{.*}} struct
-
-struct TestRecordDeclAnon2 {
- struct {
- };
-};
-// CHECK: RecordDecl{{.*}} struct TestRecordDeclAnon2
-// CHECK-NEXT: RecordDecl{{.*}} struct
-
-struct TestRecordDeclForward;
-// CHECK: RecordDecl{{.*}} struct TestRecordDeclForward
-
-__module_private__ struct TestRecordDeclPrivate;
-// CHECK-MODULE: RecordDecl{{.*}} struct TestRecordDeclPrivate __module_private__
-
-enum testEnumConstantDecl {
- TestEnumConstantDecl,
- TestEnumConstantDeclInit = 1
-};
-// CHECK: EnumConstantDecl{{.*}} TestEnumConstantDecl 'int'
-// CHECK: EnumConstantDecl{{.*}} TestEnumConstantDeclInit 'int'
-// CHECK-NEXT: ConstantExpr
-// CHECK-NEXT: IntegerLiteral
-
-struct testIndirectFieldDecl {
- struct {
- int TestIndirectFieldDecl;
- };
-};
-// CHECK: IndirectFieldDecl{{.*}} TestIndirectFieldDecl 'int'
-// CHECK-NEXT: Field{{.*}} ''
-// CHECK-NEXT: Field{{.*}} 'TestIndirectFieldDecl'
-
-// FIXME: It would be nice to dump the enum and its enumerators.
-int TestFunctionDecl(int x, enum { e } y) {
- return x;
-}
-// CHECK: FunctionDecl{{.*}} TestFunctionDecl 'int (int, enum {{.*}})'
-// CHECK-NEXT: ParmVarDecl{{.*}} x
-// CHECK-NEXT: ParmVarDecl{{.*}} y
-// CHECK-NEXT: CompoundStmt
-
-// FIXME: It would be nice to 'Enum' and 'e'.
-int TestFunctionDecl2(enum Enum { e } x) { return x; }
-// CHECK: FunctionDecl{{.*}} TestFunctionDecl2 'int (enum {{.*}})'
-// CHECK-NEXT: ParmVarDecl{{.*}} x
-// CHECK-NEXT: CompoundStmt
-
-
-int TestFunctionDeclProto(int x);
-// CHECK: FunctionDecl{{.*}} TestFunctionDeclProto 'int (int)'
-// CHECK-NEXT: ParmVarDecl{{.*}} x
-
-extern int TestFunctionDeclSC();
-// CHECK: FunctionDecl{{.*}} TestFunctionDeclSC 'int ()' extern
-
-inline int TestFunctionDeclInline();
-// CHECK: FunctionDecl{{.*}} TestFunctionDeclInline 'int ()' inline
-
-struct testFieldDecl {
- int TestFieldDecl;
- int TestFieldDeclWidth : 1;
- __module_private__ int TestFieldDeclPrivate;
-};
-// CHECK: FieldDecl{{.*}} TestFieldDecl 'int'
-// CHECK: FieldDecl{{.*}} TestFieldDeclWidth 'int'
-// CHECK-NEXT: ConstantExpr
-// CHECK-NEXT: IntegerLiteral
-// CHECK-MODULE: FieldDecl{{.*}} TestFieldDeclPrivate 'int' __module_private__
-
-int TestVarDecl;
-// CHECK: VarDecl{{.*}} TestVarDecl 'int'
-
-extern int TestVarDeclSC;
-// CHECK: VarDecl{{.*}} TestVarDeclSC 'int' extern
-
-__thread int TestVarDeclThread;
-// CHECK: VarDecl{{.*}} TestVarDeclThread 'int' tls{{$}}
-
-__module_private__ int TestVarDeclPrivate;
-// CHECK-MODULE: VarDecl{{.*}} TestVarDeclPrivate 'int' __module_private__
-
-int TestVarDeclInit = 0;
-// CHECK: VarDecl{{.*}} TestVarDeclInit 'int'
-// CHECK-NEXT: IntegerLiteral
-
-void testParmVarDecl(int TestParmVarDecl);
-// CHECK: ParmVarDecl{{.*}} TestParmVarDecl 'int'
-
-#ifdef MODULES
-#pragma clang module end
-#endif
-
Removed: cfe/trunk/test/Misc/ast-dump-decl.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Misc/ast-dump-decl.cpp?rev=348016&view=auto
==============================================================================
--- cfe/trunk/test/Misc/ast-dump-decl.cpp (original)
+++ cfe/trunk/test/Misc/ast-dump-decl.cpp (removed)
@@ -1,542 +0,0 @@
-// RUN: %clang_cc1 -std=c++11 -triple x86_64-linux-gnu -fms-extensions -ast-dump -ast-dump-filter Test %s | FileCheck -strict-whitespace %s
-
-class testEnumDecl {
- enum class TestEnumDeclScoped;
- enum TestEnumDeclFixed : int;
-};
-// CHECK: EnumDecl{{.*}} class TestEnumDeclScoped 'int'
-// CHECK: EnumDecl{{.*}} TestEnumDeclFixed 'int'
-
-class testFieldDecl {
- int TestFieldDeclInit = 0;
-};
-// CHECK: FieldDecl{{.*}} TestFieldDeclInit 'int'
-// CHECK-NEXT: IntegerLiteral
-
-namespace testVarDeclNRVO {
- class A { };
- A foo() {
- A TestVarDeclNRVO;
- return TestVarDeclNRVO;
- }
-}
-// CHECK: VarDecl{{.*}} TestVarDeclNRVO 'testVarDeclNRVO::A' nrvo
-
-void testParmVarDeclInit(int TestParmVarDeclInit = 0);
-// CHECK: ParmVarDecl{{.*}} TestParmVarDeclInit 'int'
-// CHECK-NEXT: IntegerLiteral{{.*}}
-
-namespace TestNamespaceDecl {
- int i;
-}
-// CHECK: NamespaceDecl{{.*}} TestNamespaceDecl
-// CHECK-NEXT: VarDecl
-
-namespace TestNamespaceDecl {
- int j;
-}
-// CHECK: NamespaceDecl{{.*}} TestNamespaceDecl
-// CHECK-NEXT: original Namespace
-// CHECK-NEXT: VarDecl
-
-inline namespace TestNamespaceDeclInline {
-}
-// CHECK: NamespaceDecl{{.*}} TestNamespaceDeclInline inline
-
-namespace testUsingDirectiveDecl {
- namespace A {
- }
-}
-namespace TestUsingDirectiveDecl {
- using namespace testUsingDirectiveDecl::A;
-}
-// CHECK: NamespaceDecl{{.*}} TestUsingDirectiveDecl
-// CHECK-NEXT: UsingDirectiveDecl{{.*}} Namespace{{.*}} 'A'
-
-namespace testNamespaceAlias {
- namespace A {
- }
-}
-namespace TestNamespaceAlias = testNamespaceAlias::A;
-// CHECK: NamespaceAliasDecl{{.*}} TestNamespaceAlias
-// CHECK-NEXT: Namespace{{.*}} 'A'
-
-using TestTypeAliasDecl = int;
-// CHECK: TypeAliasDecl{{.*}} TestTypeAliasDecl 'int'
-
-namespace testTypeAliasTemplateDecl {
- template<typename T> class A;
- template<typename T> using TestTypeAliasTemplateDecl = A<T>;
-}
-// CHECK: TypeAliasTemplateDecl{{.*}} TestTypeAliasTemplateDecl
-// CHECK-NEXT: TemplateTypeParmDecl
-// CHECK-NEXT: TypeAliasDecl{{.*}} TestTypeAliasTemplateDecl 'A<T>'
-
-namespace testCXXRecordDecl {
- class TestEmpty {};
-// CHECK: CXXRecordDecl{{.*}} class TestEmpty
-// CHECK-NEXT: DefinitionData pass_in_registers empty aggregate standard_layout trivially_copyable pod trivial literal has_constexpr_non_copy_move_ctor can_const_default_init
-// CHECK-NEXT: DefaultConstructor exists trivial constexpr
-// CHECK-NEXT: CopyConstructor simple trivial has_const_param
-// CHECK-NEXT: MoveConstructor exists simple trivial
-// CHECK-NEXT: CopyAssignment trivial has_const_param
-// CHECK-NEXT: MoveAssignment exists simple trivial
-// CHECK-NEXT: Destructor simple irrelevant trivial
-
- class A { };
- class B { };
- class TestCXXRecordDecl : virtual A, public B {
- int i;
- };
-}
-// CHECK: CXXRecordDecl{{.*}} class TestCXXRecordDecl
-// CHECK-NEXT: DefinitionData{{$}}
-// CHECK-NEXT: DefaultConstructor exists non_trivial
-// CHECK-NEXT: CopyConstructor simple non_trivial has_const_param
-// CHECK-NEXT: MoveConstructor exists simple non_trivial
-// CHECK-NEXT: CopyAssignment non_trivial has_const_param
-// CHECK-NEXT: MoveAssignment exists simple non_trivial
-// CHECK-NEXT: Destructor simple irrelevant trivial
-// CHECK-NEXT: virtual private 'testCXXRecordDecl::A'
-// CHECK-NEXT: public 'testCXXRecordDecl::B'
-// CHECK-NEXT: CXXRecordDecl{{.*}} class TestCXXRecordDecl
-// CHECK-NEXT: FieldDecl
-
-template<class...T>
-class TestCXXRecordDeclPack : public T... {
-};
-// CHECK: CXXRecordDecl{{.*}} class TestCXXRecordDeclPack
-// CHECK: public 'T'...
-// CHECK-NEXT: CXXRecordDecl{{.*}} class TestCXXRecordDeclPack
-
-thread_local int TestThreadLocalInt;
-// CHECK: TestThreadLocalInt {{.*}} tls_dynamic
-
-class testCXXMethodDecl {
- virtual void TestCXXMethodDeclPure() = 0;
- void TestCXXMethodDeclDelete() = delete;
- void TestCXXMethodDeclThrow() throw();
- void TestCXXMethodDeclThrowType() throw(int);
-};
-// CHECK: CXXMethodDecl{{.*}} TestCXXMethodDeclPure 'void ()' virtual pure
-// CHECK: CXXMethodDecl{{.*}} TestCXXMethodDeclDelete 'void ()' delete
-// CHECK: CXXMethodDecl{{.*}} TestCXXMethodDeclThrow 'void () throw()'
-// CHECK: CXXMethodDecl{{.*}} TestCXXMethodDeclThrowType 'void () throw(int)'
-
-namespace testCXXConstructorDecl {
- class A { };
- class TestCXXConstructorDecl : public A {
- int I;
- TestCXXConstructorDecl(A &a, int i) : A(a), I(i) { }
- TestCXXConstructorDecl(A &a) : TestCXXConstructorDecl(a, 0) { }
- };
-}
-// CHECK: CXXConstructorDecl{{.*}} TestCXXConstructorDecl 'void {{.*}}'
-// CHECK-NEXT: ParmVarDecl{{.*}} a
-// CHECK-NEXT: ParmVarDecl{{.*}} i
-// CHECK-NEXT: CXXCtorInitializer{{.*}}A
-// CHECK-NEXT: Expr
-// CHECK: CXXCtorInitializer{{.*}}I
-// CHECK-NEXT: Expr
-// CHECK: CompoundStmt
-// CHECK: CXXConstructorDecl{{.*}} TestCXXConstructorDecl 'void {{.*}}'
-// CHECK-NEXT: ParmVarDecl{{.*}} a
-// CHECK-NEXT: CXXCtorInitializer{{.*}}TestCXXConstructorDecl
-// CHECK-NEXT: CXXConstructExpr{{.*}}TestCXXConstructorDecl
-
-class TestCXXDestructorDecl {
- ~TestCXXDestructorDecl() { }
-};
-// CHECK: CXXDestructorDecl{{.*}} ~TestCXXDestructorDecl 'void () noexcept'
-// CHECK-NEXT: CompoundStmt
-
-// Test that the range of a defaulted members is computed correctly.
-class TestMemberRanges {
-public:
- TestMemberRanges() = default;
- TestMemberRanges(const TestMemberRanges &Other) = default;
- TestMemberRanges(TestMemberRanges &&Other) = default;
- ~TestMemberRanges() = default;
- TestMemberRanges &operator=(const TestMemberRanges &Other) = default;
- TestMemberRanges &operator=(TestMemberRanges &&Other) = default;
-};
-void SomeFunction() {
- TestMemberRanges A;
- TestMemberRanges B(A);
- B = A;
- A = static_cast<TestMemberRanges &&>(B);
- TestMemberRanges C(static_cast<TestMemberRanges &&>(A));
-}
-// CHECK: CXXConstructorDecl{{.*}} <line:{{.*}}:3, col:30>
-// CHECK: CXXConstructorDecl{{.*}} <line:{{.*}}:3, col:59>
-// CHECK: CXXConstructorDecl{{.*}} <line:{{.*}}:3, col:54>
-// CHECK: CXXDestructorDecl{{.*}} <line:{{.*}}:3, col:31>
-// CHECK: CXXMethodDecl{{.*}} <line:{{.*}}:3, col:70>
-// CHECK: CXXMethodDecl{{.*}} <line:{{.*}}:3, col:65>
-
-class TestCXXConversionDecl {
- operator int() { return 0; }
-};
-// CHECK: CXXConversionDecl{{.*}} operator int 'int ()'
-// CHECK-NEXT: CompoundStmt
-
-namespace TestStaticAssertDecl {
- static_assert(true, "msg");
-}
-// CHECK: NamespaceDecl{{.*}} TestStaticAssertDecl
-// CHECK-NEXT: StaticAssertDecl{{.*> .*$}}
-// CHECK-NEXT: CXXBoolLiteralExpr
-// CHECK-NEXT: StringLiteral
-
-namespace testFunctionTemplateDecl {
- class A { };
- class B { };
- class C { };
- class D { };
- template<typename T> void TestFunctionTemplate(T) { }
-
- // implicit instantiation
- void bar(A a) { TestFunctionTemplate(a); }
-
- // explicit specialization
- template<> void TestFunctionTemplate(B);
-
- // explicit instantiation declaration
- extern template void TestFunctionTemplate(C);
-
- // explicit instantiation definition
- template void TestFunctionTemplate(D);
-}
-// CHECK: FunctionTemplateDecl{{.*}} TestFunctionTemplate
-// CHECK-NEXT: TemplateTypeParmDecl
-// CHECK-NEXT: FunctionDecl{{.*}} TestFunctionTemplate 'void (T)'
-// CHECK-NEXT: ParmVarDecl{{.*}} 'T'
-// CHECK-NEXT: CompoundStmt
-// CHECK-NEXT: FunctionDecl{{.*}} TestFunctionTemplate {{.*}}A
-// CHECK-NEXT: TemplateArgument
-// CHECK-NEXT: ParmVarDecl
-// CHECK-NEXT: CompoundStmt
-// CHECK-NEXT: Function{{.*}} 'TestFunctionTemplate' {{.*}}B
-// CHECK-NEXT: FunctionDecl{{.*}} TestFunctionTemplate {{.*}}C
-// CHECK-NEXT: TemplateArgument
-// CHECK-NEXT: ParmVarDecl
-// CHECK-NEXT: FunctionDecl{{.*}} TestFunctionTemplate {{.*}}D
-// CHECK-NEXT: TemplateArgument
-// CHECK-NEXT: ParmVarDecl
-// CHECK-NEXT: CompoundStmt
-// CHECK: FunctionDecl{{.*}} TestFunctionTemplate {{.*}}B
-// CHECK-NEXT: TemplateArgument
-// CHECK-NEXT: ParmVarDecl
-
-namespace testClassTemplateDecl {
- class A { };
- class B { };
- class C { };
- class D { };
-
- template<typename T> class TestClassTemplate {
- public:
- TestClassTemplate();
- ~TestClassTemplate();
- int j();
- int i;
- };
-
- // implicit instantiation
- TestClassTemplate<A> a;
-
- // explicit specialization
- template<> class TestClassTemplate<B> {
- int j;
- };
-
- // explicit instantiation declaration
- extern template class TestClassTemplate<C>;
-
- // explicit instantiation definition
- template class TestClassTemplate<D>;
-
- // partial explicit specialization
- template<typename T1, typename T2> class TestClassTemplatePartial {
- int i;
- };
- template<typename T1> class TestClassTemplatePartial<T1, A> {
- int j;
- };
-}
-// CHECK: ClassTemplateDecl{{.*}} TestClassTemplate
-// CHECK-NEXT: TemplateTypeParmDecl
-// CHECK-NEXT: CXXRecordDecl{{.*}} class TestClassTemplate
-// CHECK: CXXRecordDecl{{.*}} class TestClassTemplate
-// CHECK-NEXT: AccessSpecDecl{{.*}} public
-// CHECK-NEXT: CXXConstructorDecl{{.*}} <line:{{.*}}:5, col:23>
-// CHECK-NEXT: CXXDestructorDecl{{.*}} <line:{{.*}}:5, col:24>
-// CHECK-NEXT: CXXMethodDecl{{.*}} <line:{{.*}}:5, col:11>
-// CHECK-NEXT: FieldDecl{{.*}} i
-// CHECK-NEXT: ClassTemplateSpecializationDecl{{.*}} class TestClassTemplate
-// CHECK: TemplateArgument{{.*}}A
-// CHECK-NEXT: CXXRecordDecl{{.*}} class TestClassTemplate
-// CHECK-NEXT: AccessSpecDecl{{.*}} public
-// CHECK-NEXT: CXXConstructorDecl{{.*}} <line:{{.*}}:5, col:23>
-// CHECK-NEXT: CXXDestructorDecl{{.*}} <line:{{.*}}:5, col:24>
-// CHECK-NEXT: CXXMethodDecl{{.*}} <line:{{.*}}:5, col:11>
-// CHECK-NEXT: FieldDecl{{.*}} i
-// CHECK: ClassTemplateSpecialization{{.*}} 'TestClassTemplate'
-// CHECK-NEXT: ClassTemplateSpecialization{{.*}} 'TestClassTemplate'
-// CHECK-NEXT: ClassTemplateSpecialization{{.*}} 'TestClassTemplate'
-
-// CHECK: ClassTemplateSpecializationDecl{{.*}} class TestClassTemplate
-// CHECK-NEXT: DefinitionData
-// CHECK: TemplateArgument{{.*}}B
-// CHECK-NEXT: CXXRecordDecl{{.*}} class TestClassTemplate
-// CHECK-NEXT: FieldDecl{{.*}} j
-
-// CHECK: ClassTemplateSpecializationDecl{{.*}} class TestClassTemplate
-// CHECK: TemplateArgument{{.*}}C
-// CHECK-NEXT: CXXRecordDecl{{.*}} class TestClassTemplate
-// CHECK-NEXT: AccessSpecDecl{{.*}} public
-// CHECK-NEXT: CXXConstructorDecl{{.*}} <line:{{.*}}:5, col:23>
-// CHECK-NEXT: CXXDestructorDecl{{.*}} <line:{{.*}}:5, col:24>
-// CHECK-NEXT: CXXMethodDecl{{.*}} <line:{{.*}}:5, col:11>
-// CHECK-NEXT: FieldDecl{{.*}} i
-
-// CHECK: ClassTemplateSpecializationDecl{{.*}} class TestClassTemplate
-// CHECK: TemplateArgument{{.*}}D
-// CHECK-NEXT: CXXRecordDecl{{.*}} class TestClassTemplate
-// CHECK-NEXT: AccessSpecDecl{{.*}} public
-// CHECK-NEXT: CXXConstructorDecl{{.*}} <line:{{.*}}:5, col:23>
-// CHECK-NEXT: CXXDestructorDecl{{.*}} <line:{{.*}}:5, col:24>
-// CHECK-NEXT: CXXMethodDecl{{.*}} <line:{{.*}}:5, col:11>
-// CHECK-NEXT: FieldDecl{{.*}} i
-
-// CHECK: ClassTemplatePartialSpecializationDecl{{.*}} class TestClassTemplatePartial
-// CHECK: TemplateArgument
-// CHECK-NEXT: TemplateArgument{{.*}}A
-// CHECK-NEXT: TemplateTypeParmDecl
-// CHECK-NEXT: CXXRecordDecl{{.*}} class TestClassTemplatePartial
-// CHECK-NEXT: FieldDecl{{.*}} j
-
-// PR15220 dump instantiation only once
-namespace testCanonicalTemplate {
- class A {};
-
- template<typename T> void TestFunctionTemplate(T);
- template<typename T> void TestFunctionTemplate(T);
- void bar(A a) { TestFunctionTemplate(a); }
- // CHECK: FunctionTemplateDecl{{.*}} TestFunctionTemplate
- // CHECK-NEXT: TemplateTypeParmDecl
- // CHECK-NEXT: FunctionDecl{{.*}} TestFunctionTemplate 'void (T)'
- // CHECK-NEXT: ParmVarDecl{{.*}} 'T'
- // CHECK-NEXT: FunctionDecl{{.*}} TestFunctionTemplate {{.*}}A
- // CHECK-NEXT: TemplateArgument
- // CHECK-NEXT: ParmVarDecl
- // CHECK: FunctionTemplateDecl{{.*}} TestFunctionTemplate
- // CHECK-NEXT: TemplateTypeParmDecl
- // CHECK-NEXT: FunctionDecl{{.*}} TestFunctionTemplate 'void (T)'
- // CHECK-NEXT: ParmVarDecl{{.*}} 'T'
- // CHECK-NEXT: Function{{.*}} 'TestFunctionTemplate'
- // CHECK-NOT: TemplateArgument
-
- template<typename T1> class TestClassTemplate {
- template<typename T2> friend class TestClassTemplate;
- };
- TestClassTemplate<A> a;
- // CHECK: ClassTemplateDecl{{.*}} TestClassTemplate
- // CHECK-NEXT: TemplateTypeParmDecl
- // CHECK-NEXT: CXXRecordDecl{{.*}} class TestClassTemplate
- // CHECK: CXXRecordDecl{{.*}} class TestClassTemplate
- // CHECK-NEXT: FriendDecl
- // CHECK-NEXT: ClassTemplateDecl{{.*}} TestClassTemplate
- // CHECK-NEXT: TemplateTypeParmDecl
- // CHECK-NEXT: CXXRecordDecl{{.*}} class TestClassTemplate
- // CHECK-NEXT: ClassTemplateSpecializationDecl{{.*}} class TestClassTemplate
- // CHECK: TemplateArgument{{.*}}A
- // CHECK-NEXT: CXXRecordDecl{{.*}} class TestClassTemplate
-}
-
-template <class T>
-class TestClassScopeFunctionSpecialization {
- template<class U> void foo(U a) { }
- template<> void foo<int>(int a) { }
-};
-// CHECK: ClassScopeFunctionSpecializationDecl
-// CHECK-NEXT: CXXMethod{{.*}} foo 'void (int)'
-// CHECK-NEXT: ParmVarDecl
-// CHECK-NEXT: CompoundStmt
-// CHECK-NEXT: TemplateArgument{{.*}} 'int'
-
-namespace TestTemplateTypeParmDecl {
- template<typename ... T, class U = int> void foo();
-}
-// CHECK: NamespaceDecl{{.*}} TestTemplateTypeParmDecl
-// CHECK-NEXT: FunctionTemplateDecl
-// CHECK-NEXT: TemplateTypeParmDecl{{.*}} typename depth 0 index 0 ... T
-// CHECK-NEXT: TemplateTypeParmDecl{{.*}} class depth 0 index 1 U
-// CHECK-NEXT: TemplateArgument type 'int'
-
-namespace TestNonTypeTemplateParmDecl {
- template<int I = 1, int ... J> void foo();
-}
-// CHECK: NamespaceDecl{{.*}} TestNonTypeTemplateParmDecl
-// CHECK-NEXT: FunctionTemplateDecl
-// CHECK-NEXT: NonTypeTemplateParmDecl{{.*}} 'int' depth 0 index 0 I
-// CHECK-NEXT: TemplateArgument expr
-// CHECK-NEXT: ConstantExpr{{.*}} 'int'
-// CHECK-NEXT: IntegerLiteral{{.*}} 'int' 1
-// CHECK-NEXT: NonTypeTemplateParmDecl{{.*}} 'int' depth 0 index 1 ... J
-
-namespace TestTemplateTemplateParmDecl {
- template<typename T> class A;
- template <template <typename> class T = A, template <typename> class ... U> void foo();
-}
-// CHECK: NamespaceDecl{{.*}} TestTemplateTemplateParmDecl
-// CHECK: FunctionTemplateDecl
-// CHECK-NEXT: TemplateTemplateParmDecl{{.*}} T
-// CHECK-NEXT: TemplateTypeParmDecl{{.*}} typename
-// CHECK-NEXT: TemplateArgument{{.*}} template A
-// CHECK-NEXT: TemplateTemplateParmDecl{{.*}} ... U
-// CHECK-NEXT: TemplateTypeParmDecl{{.*}} typename
-
-namespace TestTemplateArgument {
- template<typename> class A { };
- template<template<typename> class ...> class B { };
- int foo();
-
- template<typename> class testType { };
- template class testType<int>;
- // CHECK: ClassTemplateSpecializationDecl{{.*}} class testType
- // CHECK: TemplateArgument{{.*}} type 'int'
-
- template<int fp(void)> class testDecl { };
- template class testDecl<foo>;
- // CHECK: ClassTemplateSpecializationDecl{{.*}} class testDecl
- // CHECK: TemplateArgument{{.*}} decl
- // CHECK-NEXT: Function{{.*}}foo
-
- template class testDecl<nullptr>;
- // CHECK: ClassTemplateSpecializationDecl{{.*}} class testDecl
- // CHECK: TemplateArgument{{.*}} nullptr
-
- template<int> class testIntegral { };
- template class testIntegral<1>;
- // CHECK: ClassTemplateSpecializationDecl{{.*}} class testIntegral
- // CHECK: TemplateArgument{{.*}} integral 1
-
- template<template<typename> class> class testTemplate { };
- template class testTemplate<A>;
- // CHECK: ClassTemplateSpecializationDecl{{.*}} class testTemplate
- // CHECK: TemplateArgument{{.*}} A
-
- template<template<typename> class ...T> class C {
- B<T...> testTemplateExpansion;
- };
- // FIXME: Need TemplateSpecializationType dumping to test TemplateExpansion.
-
- template<int, int = 0> class testExpr;
- template<int I> class testExpr<I> { };
- // CHECK: ClassTemplatePartialSpecializationDecl{{.*}} class testExpr
- // CHECK: TemplateArgument{{.*}} expr
- // CHECK-NEXT: DeclRefExpr{{.*}}I
-
- template<int, int ...> class testPack { };
- template class testPack<0, 1, 2>;
- // CHECK: ClassTemplateSpecializationDecl{{.*}} class testPack
- // CHECK: TemplateArgument{{.*}} integral 0
- // CHECK-NEXT: TemplateArgument{{.*}} pack
- // CHECK-NEXT: TemplateArgument{{.*}} integral 1
- // CHECK-NEXT: TemplateArgument{{.*}} integral 2
-}
-
-namespace testUsingDecl {
- int i;
-}
-namespace TestUsingDecl {
- using testUsingDecl::i;
-}
-// CHECK: NamespaceDecl{{.*}} TestUsingDecl
-// CHECK-NEXT: UsingDecl{{.*}} testUsingDecl::i
-// CHECK-NEXT: UsingShadowDecl{{.*}} Var{{.*}} 'i' 'int'
-
-namespace testUnresolvedUsing {
- class A { };
- template<class T> class B {
- public:
- A a;
- };
- template<class T> class TestUnresolvedUsing : public B<T> {
- using typename B<T>::a;
- using B<T>::a;
- };
-}
-// CHECK: CXXRecordDecl{{.*}} TestUnresolvedUsing
-// CHECK: UnresolvedUsingTypenameDecl{{.*}} B<T>::a
-// CHECK: UnresolvedUsingValueDecl{{.*}} B<T>::a
-
-namespace TestLinkageSpecDecl {
- extern "C" void test1();
- extern "C++" void test2();
-}
-// CHECK: NamespaceDecl{{.*}} TestLinkageSpecDecl
-// CHECK-NEXT: LinkageSpecDecl{{.*}} C
-// CHECK-NEXT: FunctionDecl
-// CHECK-NEXT: LinkageSpecDecl{{.*}} C++
-// CHECK-NEXT: FunctionDecl
-
-class TestAccessSpecDecl {
-public:
-private:
-protected:
-};
-// CHECK: CXXRecordDecl{{.*}} class TestAccessSpecDecl
-// CHECK: CXXRecordDecl{{.*}} class TestAccessSpecDecl
-// CHECK-NEXT: AccessSpecDecl{{.*}} public
-// CHECK-NEXT: AccessSpecDecl{{.*}} private
-// CHECK-NEXT: AccessSpecDecl{{.*}} protected
-
-template<typename T> class TestFriendDecl {
- friend int foo();
- friend class A;
- friend T;
-};
-// CHECK: CXXRecord{{.*}} TestFriendDecl
-// CHECK: CXXRecord{{.*}} TestFriendDecl
-// CHECK-NEXT: FriendDecl
-// CHECK-NEXT: FunctionDecl{{.*}} foo
-// CHECK-NEXT: FriendDecl{{.*}} 'class A':'A'
-// CHECK-NEXT: FriendDecl{{.*}} 'T'
-
-namespace TestFileScopeAsmDecl {
- asm("ret");
-}
-// CHECK: NamespaceDecl{{.*}} TestFileScopeAsmDecl{{$}}
-// CHECK: FileScopeAsmDecl{{.*> .*$}}
-// CHECK-NEXT: StringLiteral
-
-namespace TestFriendDecl2 {
- void f();
- struct S {
- friend void f();
- };
-}
-// CHECK: NamespaceDecl [[TestFriendDecl2:0x.*]] <{{.*}}> {{.*}} TestFriendDecl2
-// CHECK: |-FunctionDecl [[TestFriendDecl2_f:0x.*]] <{{.*}}> {{.*}} f 'void ()'
-// CHECK: `-CXXRecordDecl {{.*}} struct S
-// CHECK: |-CXXRecordDecl {{.*}} struct S
-// CHECK: `-FriendDecl
-// CHECK: `-FunctionDecl {{.*}} parent [[TestFriendDecl2]] prev [[TestFriendDecl2_f]] <{{.*}}> {{.*}} f 'void ()'
-
-namespace Comment {
- extern int Test;
- /// Something here.
- extern int Test;
- extern int Test;
-}
-
-// CHECK: VarDecl {{.*}} Test 'int' extern
-// CHECK-NOT: FullComment
-// CHECK: VarDecl {{.*}} Test 'int' extern
-// CHECK: `-FullComment
-// CHECK: `-ParagraphComment
-// CHECK: `-TextComment
-// CHECK: VarDecl {{.*}} Test 'int' extern
-// CHECK-NOT: FullComment
Removed: cfe/trunk/test/Misc/ast-dump-decl.m
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Misc/ast-dump-decl.m?rev=348016&view=auto
==============================================================================
--- cfe/trunk/test/Misc/ast-dump-decl.m (original)
+++ cfe/trunk/test/Misc/ast-dump-decl.m (removed)
@@ -1,145 +0,0 @@
-// RUN: %clang_cc1 -Wno-unused -fblocks -ast-dump -ast-dump-filter Test %s | FileCheck -strict-whitespace %s
-
- at protocol P
- at end
-
- at interface A
- at end
-
- at interface TestObjCIvarDecl : A
- at end
-
- at implementation TestObjCIvarDecl {
- int varDefault;
- @private int varPrivate;
- @protected int varProtected;
- @public int varPublic;
- @package int varPackage;
-}
- at end
-// CHECK: ObjCImplementationDecl{{.*}} TestObjCIvarDecl
-// CHECK-NEXT: ObjCInterface{{.*}} 'TestObjCIvarDecl'
-// CHECK-NEXT: ObjCIvarDecl{{.*}} varDefault 'int' private
-// CHECK-NEXT: ObjCIvarDecl{{.*}} varPrivate 'int' private
-// CHECK-NEXT: ObjCIvarDecl{{.*}} varProtected 'int' protected
-// CHECK-NEXT: ObjCIvarDecl{{.*}} varPublic 'int' public
-// CHECK-NEXT: ObjCIvarDecl{{.*}} varPackage 'int' package
-
- at interface testObjCMethodDecl : A {
-}
-- (int) TestObjCMethodDecl: (int)i, ...;
-// CHECK: ObjCMethodDecl{{.*}} - TestObjCMethodDecl: 'int'
-// CHECK-NEXT: ParmVarDecl{{.*}} i 'int'
-// CHECK-NEXT: ...
- at end
-
- at implementation testObjCMethodDecl
-- (int) TestObjCMethodDecl: (int)i, ... {
- return 0;
-}
-// CHECK: ObjCMethodDecl{{.*}} - TestObjCMethodDecl: 'int'
-// CHECK-NEXT: ImplicitParamDecl{{.*}} self
-// CHECK-NEXT: ImplicitParamDecl{{.*}} _cmd
-// CHECK-NEXT: ParmVarDecl{{.*}} i 'int'
-// CHECK-NEXT: ...
-// CHECK-NEXT: CompoundStmt
- at end
-
- at protocol TestObjCProtocolDecl
-- (void) foo;
- at end
-// CHECK: ObjCProtocolDecl{{.*}} TestObjCProtocolDecl
-// CHECK-NEXT: ObjCMethodDecl{{.*}} foo
-
- at interface TestObjCClass : A <P>
-- (void) foo;
- at end
-// CHECK: ObjCInterfaceDecl{{.*}} TestObjCClass
-// CHECK-NEXT: super ObjCInterface{{.*}} 'A'
-// CHECK-NEXT: ObjCImplementation{{.*}} 'TestObjCClass'
-// CHECK-NEXT: ObjCProtocol{{.*}} 'P'
-// CHECK-NEXT: ObjCMethodDecl{{.*}} foo
-
- at implementation TestObjCClass : A {
- int i;
-}
-- (void) foo {
-}
- at end
-// CHECK: ObjCImplementationDecl{{.*}} TestObjCClass
-// CHECK-NEXT: super ObjCInterface{{.*}} 'A'
-// CHECK-NEXT: ObjCInterface{{.*}} 'TestObjCClass'
-// CHECK-NEXT: ObjCIvarDecl{{.*}} i
-// CHECK-NEXT: ObjCMethodDecl{{.*}} foo
-
- at interface TestObjCClass (TestObjCCategoryDecl) <P>
-- (void) bar;
- at end
-// CHECK: ObjCCategoryDecl{{.*}} TestObjCCategoryDecl
-// CHECK-NEXT: ObjCInterface{{.*}} 'TestObjCClass'
-// CHECK-NEXT: ObjCCategoryImpl{{.*}} 'TestObjCCategoryDecl'
-// CHECK-NEXT: ObjCProtocol{{.*}} 'P'
-// CHECK-NEXT: ObjCMethodDecl{{.*}} bar
-
- at implementation TestObjCClass (TestObjCCategoryDecl)
-- (void) bar {
-}
- at end
-// CHECK: ObjCCategoryImplDecl{{.*}} TestObjCCategoryDecl
-// CHECK-NEXT: ObjCInterface{{.*}} 'TestObjCClass'
-// CHECK-NEXT: ObjCCategory{{.*}} 'TestObjCCategoryDecl'
-// CHECK-NEXT: ObjCMethodDecl{{.*}} bar
-
- at compatibility_alias TestObjCCompatibleAliasDecl A;
-// CHECK: ObjCCompatibleAliasDecl{{.*}} TestObjCCompatibleAliasDecl
-// CHECK-NEXT: ObjCInterface{{.*}} 'A'
-
- at interface TestObjCProperty: A
- at property(getter=getterFoo, setter=setterFoo:) int foo;
- at property int bar;
- at end
-// CHECK: ObjCInterfaceDecl{{.*}} TestObjCProperty
-// CHECK: ObjCPropertyDecl{{.*}} foo 'int' assign readwrite atomic unsafe_unretained
-// CHECK-NEXT: getter ObjCMethod{{.*}} 'getterFoo'
-// CHECK-NEXT: setter ObjCMethod{{.*}} 'setterFoo:'
-// CHECK-NEXT: ObjCPropertyDecl{{.*}} bar 'int' assign readwrite atomic unsafe_unretained
-// CHECK-NEXT: ObjCMethodDecl{{.*}} getterFoo
-// CHECK-NEXT: ObjCMethodDecl{{.*}} setterFoo:
-// CHECK-NEXT: ParmVarDecl{{.*}} foo
-// CHECK-NEXT: ObjCMethodDecl{{.*}} bar
-// CHECK-NEXT: ObjCMethodDecl{{.*}} setBar:
-// CHECK-NEXT: ParmVarDecl{{.*}} bar
-
- at implementation TestObjCProperty {
- int i;
-}
- at synthesize foo=i;
- at synthesize bar;
- at end
-// CHECK: ObjCImplementationDecl{{.*}} TestObjCProperty
-// CHECK: ObjCPropertyImplDecl{{.*}} foo synthesize
-// CHECK-NEXT: ObjCProperty{{.*}} 'foo'
-// CHECK-NEXT: ObjCIvar{{.*}} 'i' 'int'
-// CHECK-NEXT: ObjCIvarDecl{{.*}} bar 'int' synthesize private
-// CHECK-NEXT: ObjCPropertyImplDecl{{.*}} bar synthesize
-// CHECK-NEXT: ObjCProperty{{.*}} 'bar'
-// CHECK-NEXT: ObjCIvar{{.*}} 'bar' 'int'
-
-void TestBlockDecl(int x) {
- ^(int y, ...){ x; };
-}
-// CHECK: FunctionDecl{{.*}}TestBlockDecl
-// CHECK: BlockDecl
-// CHECK-NEXT: ParmVarDecl{{.*}} y 'int'
-// CHECK-NEXT: ...
-// CHECK-NEXT: capture ParmVar{{.*}} 'x' 'int'
-// CHECK-NEXT: CompoundStmt
-
- at interface B
-+ (int) foo;
- at end
-
-void f() {
- __typeof__(B.foo) Test;
-}
-// CHECK: VarDecl{{.*}}Test 'typeof (B.foo)':'int'
Removed: cfe/trunk/test/Misc/ast-dump-decl.mm
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Misc/ast-dump-decl.mm?rev=348016&view=auto
==============================================================================
--- cfe/trunk/test/Misc/ast-dump-decl.mm (original)
+++ cfe/trunk/test/Misc/ast-dump-decl.mm (removed)
@@ -1,33 +0,0 @@
-// RUN: %clang_cc1 -Wno-unused -fblocks -ast-dump -ast-dump-filter Test %s | FileCheck -strict-whitespace %s
-
- at interface A
- at end
-
- at interface TestObjCImplementation : A
- at end
-
- at implementation TestObjCImplementation : A {
- struct X {
- int i;
- } X;
-}
-- (void) foo {
-}
- at end
-// CHECK: ObjCImplementationDecl{{.*}} TestObjCImplementation
-// CHECK-NEXT: super ObjCInterface{{.*}} 'A'
-// CHECK-NEXT: ObjCInterface{{.*}} 'TestObjCImplementation'
-// CHECK-NEXT: CXXCtorInitializer{{.*}} 'X'
-// CHECK-NEXT: CXXConstructExpr
-// CHECK-NEXT: ObjCIvarDecl{{.*}} X
-// CHECK-NEXT: ObjCMethodDecl{{.*}} foo
-
-// @() boxing expressions.
-template <typename T>
-struct BoxingTest {
- static id box(T value) {
- return @(value);
- }
-};
-
-// CHECK: ObjCBoxedExpr{{.*}} '<dependent type>'{{$}}
Removed: cfe/trunk/test/Misc/ast-dump-funcs.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Misc/ast-dump-funcs.cpp?rev=348016&view=auto
==============================================================================
--- cfe/trunk/test/Misc/ast-dump-funcs.cpp (original)
+++ cfe/trunk/test/Misc/ast-dump-funcs.cpp (removed)
@@ -1,124 +0,0 @@
-// RUN: %clang_cc1 -triple x86_64-unknown-unknown -ast-dump %s | FileCheck -strict-whitespace %s
-
-struct R {
- R() = default;
- // CHECK: CXXConstructorDecl 0x{{[^ ]*}} <line:[[@LINE-1]]:3, col:15> col:3 used constexpr R 'void () noexcept' default trivial
- ~R() {} // not trivial
- // CHECK: CXXDestructorDecl 0x{{[^ ]*}} <line:[[@LINE-1]]:3, col:9> col:3 used ~R 'void () noexcept'
- R(const R&) = delete;
- // CHECK: CXXConstructorDecl 0x{{[^ ]*}} <line:[[@LINE-1]]:3, col:22> col:3 R 'void (const R &)' delete trivial
- R(R&&) = default;
- // CHECK: CXXConstructorDecl 0x{{[^ ]*}} <line:[[@LINE-1]]:3, col:18> col:3 constexpr R 'void (R &&)' default trivial noexcept-unevaluated
-
- // CHECK: CXXMethodDecl 0x{{[^ ]*}} <line:[[@LINE-10]]:8> col:8 implicit operator= 'R &(const R &)' inline default_delete trivial noexcept-unevaluated
-};
-
-struct S {
- int i, j;
- R r;
-
- S() : i(0), j(0) {}
- // CHECK: CXXConstructorDecl 0x{{[^ ]*}} <line:[[@LINE-1]]:3, col:21> col:3 S 'void ()'
- // CHECK-NEXT: CXXCtorInitializer Field 0x{{[^ ]*}} 'i' 'int'
- // CHECK-NEXT: IntegerLiteral 0x{{[^ ]*}} <col:11> 'int' 0
- // CHECK-NEXT: CXXCtorInitializer Field 0x{{[^ ]*}} 'j' 'int'
- // CHECK-NEXT: IntegerLiteral 0x{{[^ ]*}} <col:17> 'int' 0
- // CHECK-NEXT: CXXCtorInitializer Field 0x{{[^ ]*}} 'r' 'R'
- // CHECK-NEXT: CXXConstructExpr 0x{{[^ ]*}} <col:3> 'R' 'void () noexcept'
- // CHECK-NEXT: CompoundStmt 0x{{[^ ]*}} <col:20, col:21>
-
- void a();
- // CHECK: CXXMethodDecl 0x{{[^ ]*}} <line:[[@LINE-1]]:3, col:10> col:8 a 'void ()'
- void b() const;
- // CHECK: CXXMethodDecl 0x{{[^ ]*}} <line:[[@LINE-1]]:3, col:12> col:8 b 'void () const'
- void c() volatile;
- // CHECK: CXXMethodDecl 0x{{[^ ]*}} <line:[[@LINE-1]]:3, col:12> col:8 c 'void () volatile'
- void d() &;
- // CHECK: CXXMethodDecl 0x{{[^ ]*}} <line:[[@LINE-1]]:3, col:12> col:8 d 'void () &'
- void e() &&;
- // CHECK: CXXMethodDecl 0x{{[^ ]*}} <line:[[@LINE-1]]:3, col:12> col:8 e 'void () &&'
- virtual void f(float, int = 12);
- // CHECK: CXXMethodDecl 0x{{[^ ]*}} <line:[[@LINE-1]]:3, col:33> col:16 f 'void (float, int)' virtual
- // CHECK-NEXT: ParmVarDecl 0x{{[^ ]*}} <col:18> col:23 'float'
- // CHECK-NEXT: ParmVarDecl 0x{{[^ ]*}} <col:25, col:31> col:29 'int' cinit
- // CHECK-NEXT: IntegerLiteral 0x{{[^ ]*}} <col:31> 'int' 12
-
- virtual void g() = 0;
- // CHECK: CXXMethodDecl 0x{{[^ ]*}} <line:[[@LINE-1]]:3, col:22> col:16 g 'void ()' virtual pure
-
- // CHECK: CXXConstructorDecl 0x{{[^ ]*}} <line:[[@LINE-33]]:8> col:8 implicit S 'void (const S &)' inline default_delete noexcept-unevaluated
- // CHECK: CXXConstructorDecl 0x{{[^ ]*}} <col:8> col:8 implicit constexpr S 'void (S &&)' inline default noexcept-unevaluated
- // CHECK: CXXMethodDecl 0x{{[^ ]*}} <col:8> col:8 implicit operator= 'S &(const S &)' inline default_delete noexcept-unevaluated
- // CHECK: CXXMethodDecl 0x{{[^ ]*}} <col:8> col:8 implicit operator= 'S &(S &&)' inline default_delete noexcept-unevaluated
- // CHECK: CXXDestructorDecl 0x{{[^ ]*}} <col:8> col:8 implicit ~S 'void ()' inline default noexcept-unevaluated
-};
-
-struct T : S { // T is not referenced, but S is
- void f(float, int = 100) override;
- // CHECK: CXXMethodDecl 0x{{[^ ]*}} <line:[[@LINE-1]]:3, col:28> col:8 f 'void (float, int)'
- // CHECK-NEXT: ParmVarDecl 0x{{[^ ]*}} <col:10> col:15 'float'
- // CHECK-NEXT: ParmVarDecl 0x{{[^ ]*}} <col:17, col:23> col:21 'int' cinit
- // CHECK-NEXT: IntegerLiteral 0x{{[^ ]*}} <col:23> 'int' 100
- // CHECK-NEXT: Overrides: [ 0x{{[^ ]*}} S::f 'void (float, int)' ]
- // CHECK-NEXT: OverrideAttr
-
- // CHECK: CXXConstructorDecl 0x{{[^ ]*}} <line:[[@LINE-9]]:8> col:8 implicit T 'void (const T &)' inline default_delete noexcept-unevaluated
- // CHECK: CXXMethodDecl 0x{{[^ ]*}} <col:8> col:8 implicit operator= 'T &(const T &)' inline default_delete noexcept-unevaluated
- // CHECK: CXXMethodDecl 0x{{[^ ]*}} <col:8> col:8 implicit operator= 'T &(T &&)' inline default_delete noexcept-unevaluated
- // CHECK: CXXDestructorDecl 0x{{[^ ]*}} <col:8> col:8 implicit ~T 'void ()' inline default noexcept-unevaluated
-};
-
-struct U {
- void f();
- // CHECK: CXXMethodDecl 0x{{[^ ]*}} <line:[[@LINE-1]]:3, col:10> col:8 f 'void ()'
-};
-void U::f() {} // parent
-// CHECK: CXXMethodDecl 0x{{[^ ]*}} parent 0x{{[^ ]*}} prev 0x{{[^ ]*}} <line:[[@LINE-1]]:1, col:14> col:9 f 'void ()'
-// CHECK-NEXT: CompoundStmt 0x{{[^ ]*}} <col:13, col:14>
-
-void a1();
-// CHECK: FunctionDecl 0x{{[^ ]*}} <line:[[@LINE-1]]:1, col:9> col:6 used a1 'void ()'
-void a2(void);
-// CHECK: FunctionDecl 0x{{[^ ]*}} <line:[[@LINE-1]]:1, col:13> col:6 a2 'void ()'
-void b(int a, int b);
-// CHECK: FunctionDecl 0x{{[^ ]*}} <line:[[@LINE-1]]:1, col:20> col:6 b 'void (int, int)'
-// CHECK-NEXT: ParmVarDecl 0x{{[^ ]*}} <col:8, col:12> col:12 a 'int'
-// CHECK-NEXT: ParmVarDecl 0x{{[^ ]*}} <col:15, col:19> col:19 b 'int'
-void c(int a, int b = 12);
-// CHECK: FunctionDecl 0x{{[^ ]*}} <line:[[@LINE-1]]:1, col:25> col:6 c 'void (int, int)'
-// CHECK-NEXT: ParmVarDecl 0x{{[^ ]*}} <col:8, col:12> col:12 a 'int'
-// CHECK-NEXT: ParmVarDecl 0x{{[^ ]*}} <col:15, col:23> col:19 b 'int' cinit
-// CHECK-NEXT: IntegerLiteral 0x{{[^ ]*}} <col:23> 'int' 12
-constexpr void d(void);
-// CHECK: FunctionDecl 0x{{[^ ]*}} <line:[[@LINE-1]]:1, col:22> col:16 constexpr d 'void ()'
-static void e(void);
-// CHECK: FunctionDecl 0x{{[^ ]*}} <line:[[@LINE-1]]:1, col:19> col:13 e 'void ()' static
-extern void f(void);
-// CHECK: FunctionDecl 0x{{[^ ]*}} <line:[[@LINE-1]]:1, col:19> col:13 f 'void ()' extern
-extern "C" void g(void);
-// CHECK: LinkageSpecDecl 0x{{[^ ]*}} <line:[[@LINE-1]]:1, col:23> col:8 C
-// CHECK: FunctionDecl 0x{{[^ ]*}} <col:12, col:23> col:17 g 'void ()'
-inline void h(void);
-// CHECK: FunctionDecl 0x{{[^ ]*}} <line:[[@LINE-1]]:1, col:19> col:13 h 'void ()' inline
-void i(void) noexcept;
-// CHECK: FunctionDecl 0x{{[^ ]*}} <line:[[@LINE-1]]:1, col:14> col:6 i 'void () noexcept'
-void j(void) noexcept(false);
-// CHECK: FunctionDecl 0x{{[^ ]*}} <line:[[@LINE-1]]:1, col:28> col:6 j 'void () noexcept(false)'
-void k(void) noexcept(1);
-// CHECK: FunctionDecl 0x{{[^ ]*}} <line:[[@LINE-1]]:1, col:24> col:6 k 'void () noexcept(1)'
-template <typename T>
-T l(T&);
-// CHECK: FunctionTemplateDecl 0x{{[^ ]*}} <line:[[@LINE-2]]:1, line:[[@LINE-1]]:7> col:3 l
-// CHECK-NEXT: TemplateTypeParmDecl 0x{{[^ ]*}} <line:[[@LINE-3]]:11, col:20> col:20 referenced typename depth 0 index 0 T
-// CHECK-NEXT: FunctionDecl 0x{{[^ ]*}} <line:[[@LINE-3]]:1, col:7> col:3 l 'T (T &)'
-// CHECK-NEXT: ParmVarDecl 0x{{[^ ]*}} <col:5, col:6> col:7 'T &'
-
-void m(int) {}
-// CHECK: FunctionDecl 0x{{[^ ]*}} <line:[[@LINE-1]]:1, col:14> col:6 m 'void (int)'
-// CHECK-NEXT: ParmVarDecl 0x{{[^ ]*}} <col:8> col:11 'int'
-// CHECK-NEXT: CompoundStmt 0x{{[^ ]*}} <col:13, col:14>
-
-int main() {
- // CHECK: FunctionDecl 0x{{[^ ]*}} <line:[[@LINE-1]]:1, line:[[@LINE+2]]:1> line:[[@LINE-1]]:5 main 'int ()'
- a1(); // Causes this to be marked 'used'
-}
Removed: cfe/trunk/test/Misc/ast-dump-invalid.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Misc/ast-dump-invalid.cpp?rev=348016&view=auto
==============================================================================
--- cfe/trunk/test/Misc/ast-dump-invalid.cpp (original)
+++ cfe/trunk/test/Misc/ast-dump-invalid.cpp (removed)
@@ -1,62 +0,0 @@
-// RUN: not %clang_cc1 -std=c++11 -triple x86_64-linux-gnu -fms-extensions -ast-dump -ast-dump-filter Test %s | FileCheck -check-prefix CHECK -strict-whitespace %s
-
-namespace TestInvalidRParenOnCXXUnresolvedConstructExpr {
-template <class T>
-void f(T i, T j) {
- return T (i, j;
-}
-}
-
-// CHECK: NamespaceDecl {{.*}} <{{.*}}> {{.*}} TestInvalidRParenOnCXXUnresolvedConstructExpr
-// CHECK-NEXT: `-FunctionTemplateDecl
-// CHECK-NEXT: |-TemplateTypeParmDecl
-// CHECK-NEXT: `-FunctionDecl
-// CHECK-NEXT: |-ParmVarDecl
-// CHECK-NEXT: |-ParmVarDecl
-// CHECK-NEXT: `-CompoundStmt
-// CHECK-NEXT: `-ReturnStmt
-// CHECK-NEXT: `-CXXUnresolvedConstructExpr {{.*}} <col:10, col:16> 'T'
-// CHECK-NEXT: |-DeclRefExpr {{.*}} <col:13> 'T' lvalue ParmVar {{.*}} 'i' 'T'
-// CHECK-NEXT: `-DeclRefExpr {{.*}} <col:16> 'T' lvalue ParmVar {{.*}} 'j' 'T'
-
-
-namespace TestInvalidIf {
-int g(int i) {
- if (invalid_condition)
- return 4;
- else
- return i;
-}
-}
-// CHECK: NamespaceDecl {{.*}} <{{.*}}> {{.*}} TestInvalidIf
-// CHECK-NEXT: `-FunctionDecl
-// CHECK-NEXT: |-ParmVarDecl
-// CHECK-NEXT: `-CompoundStmt
-// CHECK-NEXT: `-IfStmt {{.*}} <line:25:3, line:28:12>
-// CHECK-NEXT: |-OpaqueValueExpr {{.*}} <<invalid sloc>> 'bool'
-// CHECK-NEXT: |-ReturnStmt {{.*}} <line:26:5, col:12>
-// CHECK-NEXT: | `-IntegerLiteral {{.*}} <col:12> 'int' 4
-// CHECK-NEXT: `-ReturnStmt {{.*}} <line:28:5, col:12>
-// CHECK-NEXT: `-ImplicitCastExpr {{.*}} <col:12> 'int' <LValueToRValue>
-// CHECK-NEXT: `-DeclRefExpr {{.*}} <col:12> 'int' lvalue ParmVar {{.*}} 'i' 'int'
-
-namespace TestInvalidFunctionDecl {
-struct Str {
- double foo1(double, invalid_type);
-};
-double Str::foo1(double, invalid_type)
-{ return 45; }
-}
-// CHECK: NamespaceDecl {{.*}} <{{.*}}> {{.*}} TestInvalidFunctionDecl
-// CHECK-NEXT: |-CXXRecordDecl {{.*}} <line:44:1, line:46:1> line:44:8 struct Str definition
-// CHECK: | |-CXXRecordDecl {{.*}} <col:1, col:8> col:8 implicit struct Str
-// CHECK-NEXT: | `-CXXMethodDecl {{.*}} <line:45:4, col:36> col:11 invalid foo1 'double (double, int)'
-// CHECK-NEXT: | |-ParmVarDecl {{.*}} <col:16> col:22 'double'
-// CHECK-NEXT: | `-ParmVarDecl {{.*}} <col:24, <invalid sloc>> col:36 invalid 'int'
-// CHECK-NEXT: `-CXXMethodDecl {{.*}} parent {{.*}} <line:47:1, line:48:14> line:47:13 invalid foo1 'double (double, int)'
-// CHECK-NEXT: |-ParmVarDecl {{.*}} <col:18> col:24 'double'
-// CHECK-NEXT: |-ParmVarDecl {{.*}} <col:26, <invalid sloc>> col:38 invalid 'int'
-// CHECK-NEXT: `-CompoundStmt {{.*}} <line:48:1, col:14>
-// CHECK-NEXT: `-ReturnStmt {{.*}} <col:3, col:10>
-// CHECK-NEXT: `-ImplicitCastExpr {{.*}} <col:10> 'double' <IntegralToFloating>
-// CHECK-NEXT: `-IntegerLiteral {{.*}} <col:10> 'int' 45
Removed: cfe/trunk/test/Misc/ast-dump-lookups.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Misc/ast-dump-lookups.cpp?rev=348016&view=auto
==============================================================================
--- cfe/trunk/test/Misc/ast-dump-lookups.cpp (original)
+++ cfe/trunk/test/Misc/ast-dump-lookups.cpp (removed)
@@ -1,53 +0,0 @@
-// RUN: %clang_cc1 -std=c++11 -ast-dump -ast-dump-filter Test %s | FileCheck -check-prefix DECLS %s
-// RUN: %clang_cc1 -std=c++11 -ast-dump-lookups -ast-dump-filter Test %s | FileCheck -check-prefix LOOKUPS %s
-// RUN: %clang_cc1 -std=c++11 -ast-dump -ast-dump-lookups -ast-dump-filter Test %s | FileCheck -check-prefix DECLS-LOOKUPS %s
-// RUN: %clang_cc1 -std=c++11 -DPRAGMA -fsyntax-only %s 2>&1 | FileCheck -check-prefix PRAGMA %s
-
-namespace Test {
- typedef int T;
- extern int a;
- int a = 0;
-}
-
-#ifdef PRAGMA
-#pragma clang __debug dump Test
-// PRAGMA: lookup results for Test:
-// PRAGMA-NEXT: NamespaceDecl {{.*}} Test
-// PRAGMA-NEXT: |-TypedefDecl {{.*}} T 'int'
-// PRAGMA-NEXT: | `-BuiltinType {{.*}} 'int'
-// PRAGMA-NEXT: |-VarDecl [[EXTERN_A:0x[^ ]*]] {{.*}} a 'int' extern
-// PRAGMA-NEXT: `-VarDecl {{.*}} prev [[EXTERN_A]] {{.*}} a 'int' cinit
-// PRAGMA-NEXT: `-IntegerLiteral {{.*}} 'int' 0
-#endif
-
-namespace Test { }
-
-// DECLS: Dumping Test:
-// DECLS-NEXT: NamespaceDecl {{.*}} Test
-// DECLS-NEXT: |-TypedefDecl {{.*}} T 'int'
-// DECLS-NEXT: | `-BuiltinType {{.*}} 'int'
-// DECLS-NEXT: |-VarDecl [[EXTERN_A:0x[^ ]*]] {{.*}} a 'int' extern
-// DECLS-NEXT: `-VarDecl {{.*}} prev [[EXTERN_A]] {{.*}} a 'int' cinit
-// DECLS-NEXT: `-IntegerLiteral {{.*}} 'int' 0
-//
-// DECLS: Dumping Test:
-// DECLS-NEXT: NamespaceDecl {{.*}} Test
-
-// LOOKUPS: Dumping Test:
-// LOOKUPS-NEXT: StoredDeclsMap Namespace {{.*}} 'Test'
-// LOOKUPS: DeclarationName 'a'
-// LOOKUPS-NEXT: `-Var {{.*}} 'a' 'int'
-//
-// LOOKUPS: Dumping Test:
-// LOOKUPS-NEXT: Lookup map is in primary DeclContext
-
-// DECLS-LOOKUPS: Dumping Test:
-// DECLS-LOOKUPS-NEXT: StoredDeclsMap Namespace {{.*}} 'Test'
-// DECLS-LOOKUPS: -DeclarationName 'a'
-// DECLS-LOOKUPS-NEXT: `-Var [[A:[^ ]*]] 'a' 'int'
-// DECLS-LOOKUPS-NEXT: |-VarDecl [[EXTERN_A:0x[^ ]*]] {{.*}} a 'int' extern
-// DECLS-LOOKUPS-NEXT: `-VarDecl [[A]] prev [[EXTERN_A]] {{.*}} a 'int' cinit
-// DECLS-LOOKUPS-NEXT: `-IntegerLiteral {{.*}} 'int' 0
-//
-// DECLS-LOOKUPS: Dumping Test:
-// DECLS-LOOKUPS-NEXT: Lookup map is in primary DeclContext
Removed: cfe/trunk/test/Misc/ast-dump-msp430-attr.c
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Misc/ast-dump-msp430-attr.c?rev=348016&view=auto
==============================================================================
--- cfe/trunk/test/Misc/ast-dump-msp430-attr.c (original)
+++ cfe/trunk/test/Misc/ast-dump-msp430-attr.c (removed)
@@ -1,5 +0,0 @@
-// RUN: %clang_cc1 -triple msp430-unknown-unknown -ast-dump -ast-dump-filter Test %s | FileCheck --strict-whitespace %s
-
-__attribute__((interrupt(12))) void Test(void);
-// CHECK: FunctionDecl{{.*}}Test
-// CHECK-NEXT: MSP430InterruptAttr
Removed: cfe/trunk/test/Misc/ast-dump-pipe.cl
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Misc/ast-dump-pipe.cl?rev=348016&view=auto
==============================================================================
--- cfe/trunk/test/Misc/ast-dump-pipe.cl (original)
+++ cfe/trunk/test/Misc/ast-dump-pipe.cl (removed)
@@ -1,12 +0,0 @@
-// RUN: %clang_cc1 -triple spir64 -cl-std=CL2.0 -ast-dump -ast-dump-filter pipetype %s | FileCheck -strict-whitespace %s
-typedef pipe int pipetype;
-// CHECK: PipeType {{.*}} 'read_only pipe int'
-// CHECK-NEXT: BuiltinType {{.*}} 'int'
-
-typedef read_only pipe int pipetype2;
-// CHECK: PipeType {{.*}} 'read_only pipe int'
-// CHECK-NEXT: BuiltinType {{.*}} 'int'
-
-typedef write_only pipe int pipetype3;
-// CHECK: PipeType {{.*}} 'write_only pipe int'
-// CHECK-NEXT: BuiltinType {{.*}} 'int'
Removed: cfe/trunk/test/Misc/ast-dump-stmt.c
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Misc/ast-dump-stmt.c?rev=348016&view=auto
==============================================================================
--- cfe/trunk/test/Misc/ast-dump-stmt.c (original)
+++ cfe/trunk/test/Misc/ast-dump-stmt.c (removed)
@@ -1,128 +0,0 @@
-// RUN: %clang_cc1 -std=c11 -ast-dump -ast-dump-filter Test %s | FileCheck -strict-whitespace %s
-
-int TestLocation = 0;
-// CHECK: VarDecl{{.*}}TestLocation
-// CHECK-NEXT: IntegerLiteral 0x{{[^ ]*}} <col:20> 'int' 0
-
-int TestIndent = 1 + (1);
-// CHECK: VarDecl{{.*}}TestIndent
-// CHECK-NEXT: {{^}}`-BinaryOperator{{[^()]*$}}
-// CHECK-NEXT: {{^}} |-IntegerLiteral{{.*0[^()]*$}}
-// CHECK-NEXT: {{^}} `-ParenExpr{{.*0[^()]*$}}
-// CHECK-NEXT: {{^}} `-IntegerLiteral{{.*0[^()]*$}}
-
-void TestDeclStmt() {
- int x = 0;
- int y, z;
-}
-// CHECK: FunctionDecl{{.*}}TestDeclStmt
-// CHECK-NEXT: CompoundStmt
-// CHECK-NEXT: DeclStmt
-// CHECK-NEXT: VarDecl{{.*}}x
-// CHECK-NEXT: IntegerLiteral
-// CHECK-NEXT: DeclStmt
-// CHECK-NEXT: VarDecl{{.*}}y
-// CHECK-NEXT: VarDecl{{.*}}z
-
-int TestOpaqueValueExpr = 0 ?: 1;
-// CHECK: VarDecl{{.*}}TestOpaqueValueExpr
-// CHECK-NEXT: BinaryConditionalOperator
-// CHECK-NEXT: IntegerLiteral
-// CHECK-NEXT: OpaqueValueExpr
-// CHECK-NEXT: IntegerLiteral
-// CHECK-NEXT: OpaqueValueExpr
-// CHECK-NEXT: IntegerLiteral
-// CHECK-NEXT: IntegerLiteral
-
-void TestUnaryOperatorExpr(void) {
- char T1 = 1;
- int T2 = 1;
-
- T1++;
- T2++;
- // CHECK: UnaryOperator{{.*}}postfix '++' cannot overflow
- // CHECK-NEXT: DeclRefExpr{{.*}}'T1' 'char'
- // CHECK-NOT: UnaryOperator{{.*}}postfix '++' cannot overflow
- // CHECK: DeclRefExpr{{.*}}'T2' 'int'
-
- -T1;
- -T2;
- // CHECK: UnaryOperator{{.*}}prefix '-' cannot overflow
- // CHECK-NEXT: ImplicitCastExpr
- // CHECK-NEXT: ImplicitCastExpr
- // CHECK-NEXT: DeclRefExpr{{.*}}'T1' 'char'
- // CHECK-NOT: UnaryOperator{{.*}}prefix '-' cannot overflow
- // CHECK: ImplicitCastExpr
- // CHECK: DeclRefExpr{{.*}}'T2' 'int'
-
- ~T1;
- ~T2;
- // CHECK: UnaryOperator{{.*}}prefix '~' cannot overflow
- // CHECK-NEXT: ImplicitCastExpr
- // CHECK-NEXT: ImplicitCastExpr
- // CHECK-NEXT: DeclRefExpr{{.*}}'T1' 'char'
- // CHECK: UnaryOperator{{.*}}prefix '~' cannot overflow
- // CHECK-NEXT: ImplicitCastExpr
- // CHECK-NEXT: DeclRefExpr{{.*}}'T2' 'int'
-}
-
-void TestGenericSelectionExpressions(int i) {
- _Generic(i, int : 12);
- // CHECK: GenericSelectionExpr 0x{{[^ ]*}} <line:[[@LINE-1]]:3, col:23> 'int'
- // CHECK-NEXT: ImplicitCastExpr 0x{{[^ ]*}}
- // CHECK-NEXT: DeclRefExpr 0x{{[^ ]*}} <col:12> 'int' lvalue ParmVar 0x{{[^ ]*}} 'i' 'int'
- // CHECK-NEXT: BuiltinType 0x{{[^ ]*}} 'int'
- // FIXME: note that the following test line has a spurious whitespace.
- // CHECK-NEXT: case 'int' selected
- // CHECK-NEXT: BuiltinType 0x{{[^ ]*}} 'int'
- // CHECK-NEXT: IntegerLiteral 0x{{[^ ]*}} <col:21> 'int' 12
- _Generic(i, int : 12, default : 0);
- // CHECK: GenericSelectionExpr 0x{{[^ ]*}} <line:[[@LINE-1]]:3, col:36> 'int'
- // CHECK-NEXT: ImplicitCastExpr 0x{{[^ ]*}}
- // CHECK-NEXT: DeclRefExpr 0x{{[^ ]*}} <col:12> 'int' lvalue ParmVar 0x{{[^ ]*}} 'i' 'int'
- // CHECK-NEXT: BuiltinType 0x{{[^ ]*}} 'int'
- // FIXME: note that the following test line has a spurious whitespace.
- // CHECK-NEXT: case 'int' selected
- // CHECK-NEXT: BuiltinType 0x{{[^ ]*}} 'int'
- // CHECK-NEXT: IntegerLiteral 0x{{[^ ]*}} <col:21> 'int' 12
- // CHECK-NEXT: default
- // CHECK-NEXT: IntegerLiteral 0x{{[^ ]*}} <col:35> 'int' 0
- _Generic(i, default : 0, int : 12);
- // CHECK: GenericSelectionExpr 0x{{[^ ]*}} <line:[[@LINE-1]]:3, col:36> 'int'
- // CHECK-NEXT: ImplicitCastExpr 0x{{[^ ]*}}
- // CHECK-NEXT: DeclRefExpr 0x{{[^ ]*}} <col:12> 'int' lvalue ParmVar 0x{{[^ ]*}} 'i' 'int'
- // CHECK-NEXT: BuiltinType 0x{{[^ ]*}} 'int'
- // CHECK-NEXT: default
- // CHECK-NEXT: IntegerLiteral 0x{{[^ ]*}} <col:25> 'int' 0
- // FIXME: note that the following test line has a spurious whitespace.
- // CHECK-NEXT: case 'int' selected
- // CHECK-NEXT: BuiltinType 0x{{[^ ]*}} 'int'
- // CHECK-NEXT: IntegerLiteral 0x{{[^ ]*}} <col:34> 'int' 12
- _Generic(i, int : 12, float : 10, default : 100);
- // CHECK: GenericSelectionExpr 0x{{[^ ]*}} <line:[[@LINE-1]]:3, col:50> 'int'
- // CHECK-NEXT: ImplicitCastExpr 0x{{[^ ]*}}
- // CHECK-NEXT: DeclRefExpr 0x{{[^ ]*}} <col:12> 'int' lvalue ParmVar 0x{{[^ ]*}} 'i' 'int'
- // CHECK-NEXT: BuiltinType 0x{{[^ ]*}} 'int'
- // FIXME: note that the following test line has a spurious whitespace.
- // CHECK-NEXT: case 'int' selected
- // CHECK-NEXT: BuiltinType 0x{{[^ ]*}} 'int'
- // CHECK-NEXT: IntegerLiteral 0x{{[^ ]*}} <col:21> 'int' 12
- // FIXME: note that the following test line has a spurious whitespace.
- // CHECK-NEXT: case 'float'
- // CHECK-NEXT: BuiltinType 0x{{[^ ]*}} 'float'
- // CHECK-NEXT: IntegerLiteral 0x{{[^ ]*}} <col:33> 'int' 10
- // CHECK-NEXT: default
- // CHECK-NEXT: IntegerLiteral 0x{{[^ ]*}} <col:47> 'int' 100
-
- int j = _Generic(i, int : 12);
- // CHECK: DeclStmt 0x{{[^ ]*}} <line:[[@LINE-1]]:3, col:32>
- // CHECK-NEXT: VarDecl 0x{{[^ ]*}} <col:3, col:31> col:7 j 'int' cinit
- // CHECK-NEXT: GenericSelectionExpr 0x{{[^ ]*}} <col:11, col:31> 'int'
- // CHECK-NEXT: ImplicitCastExpr 0x{{[^ ]*}}
- // CHECK-NEXT: DeclRefExpr 0x{{[^ ]*}} <col:20> 'int' lvalue ParmVar 0x{{[^ ]*}} 'i' 'int'
- // CHECK-NEXT: BuiltinType 0x{{[^ ]*}} 'int'
- // FIXME: note that the following test line has a spurious whitespace.
- // CHECK-NEXT: case 'int' selected
- // CHECK-NEXT: BuiltinType 0x{{[^ ]*}} 'int'
- // CHECK-NEXT: IntegerLiteral 0x{{[^ ]*}} <col:29> 'int' 12
-}
Removed: cfe/trunk/test/Misc/ast-dump-stmt.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Misc/ast-dump-stmt.cpp?rev=348016&view=auto
==============================================================================
--- cfe/trunk/test/Misc/ast-dump-stmt.cpp (original)
+++ cfe/trunk/test/Misc/ast-dump-stmt.cpp (removed)
@@ -1,83 +0,0 @@
-// RUN: %clang_cc1 -fcxx-exceptions -ast-dump -ast-dump-filter Test %s | FileCheck -strict-whitespace %s
-
-namespace n {
-void function() {}
-int Variable;
-}
-using n::function;
-using n::Variable;
-void TestFunction() {
- void (*f)() = &function;
-// CHECK: DeclRefExpr{{.*}} (UsingShadow{{.*}}function
- Variable = 4;
-// CHECK: DeclRefExpr{{.*}} (UsingShadow{{.*}}Variable
-}
-
-// CHECK: FunctionDecl {{.*}} TestCatch1
-void TestCatch1() {
-// CHECK: CXXTryStmt
-// CHECK-NEXT: CompoundStmt
- try {
- }
-// CHECK-NEXT: CXXCatchStmt
-// CHECK-NEXT: VarDecl {{.*}} x
-// CHECK-NEXT: CompoundStmt
- catch (int x) {
- }
-}
-
-// CHECK: FunctionDecl {{.*}} TestCatch2
-void TestCatch2() {
-// CHECK: CXXTryStmt
-// CHECK-NEXT: CompoundStmt
- try {
- }
-// CHECK-NEXT: CXXCatchStmt
-// CHECK-NEXT: NULL
-// CHECK-NEXT: CompoundStmt
- catch (...) {
- }
-}
-
-void TestAllocationExprs() {
- int *p;
- p = new int;
- delete p;
- p = new int[2];
- delete[] p;
- p = ::new int;
- ::delete p;
-}
-// CHECK: FunctionDecl {{.*}} TestAllocationExprs
-// CHECK: CXXNewExpr {{.*}} 'int *' Function {{.*}} 'operator new'
-// CHECK: CXXDeleteExpr {{.*}} 'void' Function {{.*}} 'operator delete'
-// CHECK: CXXNewExpr {{.*}} 'int *' array Function {{.*}} 'operator new[]'
-// CHECK: CXXDeleteExpr {{.*}} 'void' array Function {{.*}} 'operator delete[]'
-// CHECK: CXXNewExpr {{.*}} 'int *' global Function {{.*}} 'operator new'
-// CHECK: CXXDeleteExpr {{.*}} 'void' global Function {{.*}} 'operator delete'
-
-// Don't crash on dependent exprs that haven't been resolved yet.
-template <typename T>
-void TestDependentAllocationExpr() {
- T *p = new T;
- delete p;
-}
-// CHECK: FunctionTemplateDecl {{.*}} TestDependentAllocationExpr
-// CHECK: CXXNewExpr {{.*'T \*'$}}
-// CHECK: CXXDeleteExpr {{.*'void'$}}
-
-template <typename T>
-class DependentScopeMemberExprWrapper {
- T member;
-};
-
-template <typename T>
-void TestDependentScopeMemberExpr() {
- DependentScopeMemberExprWrapper<T> obj;
- obj.member = T();
- (&obj)->member = T();
-}
-
-// CHECK: FunctionTemplateDecl {{.*}} TestDependentScopeMemberExpr
-// CHECK: CXXDependentScopeMemberExpr {{.*}} lvalue .member
-// CHECK: CXXDependentScopeMemberExpr {{.*}} lvalue ->member
Removed: cfe/trunk/test/Misc/ast-dump-stmt.m
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Misc/ast-dump-stmt.m?rev=348016&view=auto
==============================================================================
--- cfe/trunk/test/Misc/ast-dump-stmt.m (original)
+++ cfe/trunk/test/Misc/ast-dump-stmt.m (removed)
@@ -1,36 +0,0 @@
-// RUN: %clang_cc1 -Wno-unused -fblocks -fobjc-exceptions -ast-dump -ast-dump-filter Test %s | FileCheck -strict-whitespace %s
-
-void TestBlockExpr(int x) {
- ^{ x; };
-}
-// CHECK: FunctionDecl{{.*}}TestBlockExpr
-// CHECK: BlockExpr{{.*}} 'void (^)(void)'
-// CHECK-NEXT: BlockDecl
-
-void TestExprWithCleanup(int x) {
- ^{ x; };
-}
-// CHECK: FunctionDecl{{.*}}TestExprWithCleanup
-// CHECK: ExprWithCleanups
-// CHECK-NEXT: cleanup Block
-// CHECK-NEXT: BlockExpr
-
- at interface A
- at end
-
-void TestObjCAtCatchStmt() {
- @try {
- } @catch(A *a) {
- } @catch(...) {
- } @finally {
- }
-}
-// CHECK: FunctionDecl{{.*}}TestObjCAtCatchStmt
-// CHECK: ObjCAtTryStmt
-// CHECK-NEXT: CompoundStmt
-// CHECK-NEXT: ObjCAtCatchStmt{{.*}}
-// CHECK-NEXT: VarDecl{{.*}}a
-// CHECK-NEXT: CompoundStmt
-// CHECK-NEXT: ObjCAtCatchStmt{{.*}} catch all
-// CHECK-NEXT: CompoundStmt
-// CHECK-NEXT: ObjCAtFinallyStmt
Removed: cfe/trunk/test/Misc/ast-dump-templates.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Misc/ast-dump-templates.cpp?rev=348016&view=auto
==============================================================================
--- cfe/trunk/test/Misc/ast-dump-templates.cpp (original)
+++ cfe/trunk/test/Misc/ast-dump-templates.cpp (removed)
@@ -1,69 +0,0 @@
-// RUN: %clang_cc1 -std=c++1z -ast-print %s > %t
-// RUN: FileCheck < %t %s -check-prefix=CHECK1
-// RUN: FileCheck < %t %s -check-prefix=CHECK2
-// RUN: %clang_cc1 -std=c++1z -ast-dump %s | FileCheck --check-prefix=DUMP %s
-
-template <int X, typename Y, int Z = 5>
-struct foo {
- int constant;
- foo() {}
- Y getSum() { return Y(X + Z); }
-};
-
-template <int A, typename B>
-B bar() {
- return B(A);
-}
-
-void baz() {
- int x = bar<5, int>();
- int y = foo<5, int>().getSum();
- double z = foo<2, double, 3>().getSum();
-}
-
-// Template definition - foo
-// CHECK1: template <int X, typename Y, int Z = 5> struct foo {
-// CHECK2: template <int X, typename Y, int Z = 5> struct foo {
-
-// Template instantiation - foo
-// Since the order of instantiation may vary during runs, run FileCheck twice
-// to make sure each instantiation is in the correct spot.
-// CHECK1: template<> struct foo<5, int, 5> {
-// CHECK2: template<> struct foo<2, double, 3> {
-
-// Template definition - bar
-// CHECK1: template <int A, typename B> B bar()
-// CHECK2: template <int A, typename B> B bar()
-
-// Template instantiation - bar
-// CHECK1: template<> int bar<5, int>()
-// CHECK2: template<> int bar<5, int>()
-
-// CHECK1-LABEL: template <typename ...T> struct A {
-// CHECK1-NEXT: template <T ...x[3]> struct B {
-template <typename ...T> struct A {
- template <T ...x[3]> struct B {};
-};
-
-// CHECK1-LABEL: template <typename ...T> void f(T ...[3]) {
-// CHECK1-NEXT: A<T [3]...> a;
-template <typename ...T> void f(T ...[3]) {
- A<T [3]...> a;
-}
-
-namespace test2 {
-void func(int);
-void func(float);
-template<typename T>
-void tmpl() {
- func(T());
-}
-
-// DUMP: UnresolvedLookupExpr {{.*}} <col:3> '<overloaded function type>' lvalue (ADL) = 'func'
-}
-
-namespace test3 {
- template<typename T> struct A {};
- template<typename T> A(T) -> A<int>;
- // CHECK1: template <typename T> A(T) -> A<int>;
-}
Removed: cfe/trunk/test/Misc/ast-dump-wchar.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Misc/ast-dump-wchar.cpp?rev=348016&view=auto
==============================================================================
--- cfe/trunk/test/Misc/ast-dump-wchar.cpp (original)
+++ cfe/trunk/test/Misc/ast-dump-wchar.cpp (removed)
@@ -1,13 +0,0 @@
-// RUN: %clang_cc1 -std=c++11 -ast-dump %s -triple x86_64-linux-gnu | FileCheck %s
-
-char c8[] = u8"test\0\\\"\a\b\f\n\r\t\v\234";
-// CHECK: StringLiteral {{.*}} lvalue u8"test\000\\\"\a\b\f\n\r\t\v\234"
-
-char16_t c16[] = u"test\0\\\"\t\a\b\234\u1234";
-// CHECK: StringLiteral {{.*}} lvalue u"test\000\\\"\t\a\b\234\u1234"
-
-char32_t c32[] = U"test\0\\\"\t\a\b\234\u1234\U0010ffff"; // \
-// CHECK: StringLiteral {{.*}} lvalue U"test\000\\\"\t\a\b\234\u1234\U0010FFFF"
-
-wchar_t wc[] = L"test\0\\\"\t\a\b\234\u1234\xffffffff"; // \
-// CHECK: StringLiteral {{.*}} lvalue L"test\000\\\"\t\a\b\234\x1234\xFFFFFFFF"
Removed: cfe/trunk/test/Misc/ast-print-attr.c
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Misc/ast-print-attr.c?rev=348016&view=auto
==============================================================================
--- cfe/trunk/test/Misc/ast-print-attr.c (original)
+++ cfe/trunk/test/Misc/ast-print-attr.c (removed)
@@ -1,12 +0,0 @@
-// RUN: %clang_cc1 -ast-print -x objective-c++ -fms-extensions %s -o - | FileCheck %s
-
-// CHECK: using A = __kindof id (*)[1];
-using A = __kindof id (*)[1];
-
-// CHECK: using B = int ** __ptr32 *[3];
-using B = int ** __ptr32 *[3];
-
-// FIXME: This is the wrong spelling for the attribute.
-// FIXME: Too many parens here!
-// CHECK: using C = int ((*))() __attribute__((cdecl));
-using C = int (*)() [[gnu::cdecl]];
Removed: cfe/trunk/test/Misc/ast-print-bool.c
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Misc/ast-print-bool.c?rev=348016&view=auto
==============================================================================
--- cfe/trunk/test/Misc/ast-print-bool.c (original)
+++ cfe/trunk/test/Misc/ast-print-bool.c (removed)
@@ -1,44 +0,0 @@
-// RUN: %clang_cc1 -verify -ast-print %s -xc -DDEF_BOOL_CBOOL \
-// RUN: | FileCheck %s --check-prefixes=BOOL-AS-CBOOL,CBOOL
-//
-// RUN: %clang_cc1 -verify -ast-print %s -xc -DDEF_BOOL_CBOOL -DDIAG \
-// RUN: | FileCheck %s --check-prefixes=BOOL-AS-CBOOL,CBOOL
-//
-// RUN: %clang_cc1 -verify -ast-print %s -xc -DDEF_BOOL_INT \
-// RUN: | FileCheck %s --check-prefixes=BOOL-AS-INT,CBOOL
-//
-// RUN: %clang_cc1 -verify -ast-print %s -xc -DDEF_BOOL_INT -DDIAG \
-// RUN: | FileCheck %s --check-prefixes=BOOL-AS-INT,CBOOL
-//
-// RUN: %clang_cc1 -verify -ast-print %s -xc++ \
-// RUN: | FileCheck %s --check-prefixes=BOOL-AS-BOOL
-//
-// RUN: %clang_cc1 -verify -ast-print %s -xc++ -DDIAG \
-// RUN: | FileCheck %s --check-prefixes=BOOL-AS-BOOL
-
-#if DEF_BOOL_CBOOL
-# define bool _Bool
-#elif DEF_BOOL_INT
-# define bool int
-#endif
-
-// BOOL-AS-CBOOL: _Bool i;
-// BOOL-AS-INT: int i;
-// BOOL-AS-BOOL: bool i;
-bool i;
-
-#ifndef __cplusplus
-// CBOOL: _Bool j;
-_Bool j;
-#endif
-
-// Induce a diagnostic (and verify we actually managed to do so), which used to
-// permanently alter the -ast-print printing policy for _Bool. How bool is
-// defined by the preprocessor is examined only once per compilation, when the
-// diagnostic is emitted, and it used to affect the entirety of -ast-print, so
-// test only one definition of bool per compilation.
-#if DIAG
-void fn() { 1; } // expected-warning {{expression result unused}}
-#else
-// expected-no-diagnostics
-#endif
Removed: cfe/trunk/test/Misc/ast-print-char-literal.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Misc/ast-print-char-literal.cpp?rev=348016&view=auto
==============================================================================
--- cfe/trunk/test/Misc/ast-print-char-literal.cpp (original)
+++ cfe/trunk/test/Misc/ast-print-char-literal.cpp (removed)
@@ -1,27 +0,0 @@
-// RUN: %clang_cc1 -ast-print -std=c++1z %s -o - | FileCheck %s
-
-char c = u8'1';
-char d = '1';
-char e = U'1';
-char f = L'1';
-char g = u'1';
-
-template <char c = u8'1'>
-void h();
-
-void i() {
- h<u8'2'>();
-}
-
-char j = '\xFF';
-
-// CHECK: char c = u8'1';
-// CHECK-NEXT: char d = '1';
-// CHECK-NEXT: char e = U'1';
-// CHECK-NEXT: char f = L'1';
-// CHECK-NEXT: char g = u'1';
-
-// CHECK: template <char c = u8'1'>
-
-// CHECK: h<u8'2'>();
-// CHECK: char j = '\xff';
Removed: cfe/trunk/test/Misc/ast-print-enum-decl.c
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Misc/ast-print-enum-decl.c?rev=348016&view=auto
==============================================================================
--- cfe/trunk/test/Misc/ast-print-enum-decl.c (original)
+++ cfe/trunk/test/Misc/ast-print-enum-decl.c (removed)
@@ -1,105 +0,0 @@
-// First check compiling and printing of this file.
-//
-// RUN: %clang_cc1 -verify -ast-print %s > %t.c
-// RUN: FileCheck --check-prefixes=CHECK,PRINT %s --input-file %t.c
-//
-// Now check compiling and printing of the printed file.
-//
-// RUN: echo "// expected""-warning@* 6 {{'T' is deprecated}}" >> %t.c
-// RUN: echo "// expected""-note@* 6 {{'T' has been explicitly marked deprecated here}}" >> %t.c
-//
-// RUN: %clang_cc1 -verify -ast-print %t.c \
-// RUN: | FileCheck --check-prefixes=CHECK,PRINT %s
-
-// END.
-
-// CHECK-LABEL: defFirst
-void defFirst() {
- // PRINT-NEXT: enum
- // PRINT-DAG: __attribute__((aligned(16)))
- // PRINT-DAG: __attribute__((deprecated("")))
- // PRINT-SAME: T {
- // PRINT-NEXT: E0,
- // PRINT-NEXT: E1
- // PRINT-NEXT: } *p0;
- // expected-warning at +2 {{'T' is deprecated}}
- // expected-note at +1 2 {{'T' has been explicitly marked deprecated here}}
- enum __attribute__((aligned(16))) __attribute__((deprecated(""))) T {
- E0, E1
- } *p0;
-
- // PRINT-NEXT: enum T *p1;
- enum T *p1; // expected-warning {{'T' is deprecated}}
-}
-
-// CHECK-LABEL: defLast
-void defLast() {
- // PRINT-NEXT: enum __attribute__((aligned(16))) T *p0;
- enum __attribute__((aligned(16))) T *p0;
-
- // PRINT-NEXT: enum __attribute__((deprecated(""))) T {
- // PRINT-NEXT: E0,
- // PRINT-NEXT: E1
- // PRINT-NEXT: } *p1;
- // expected-warning at +2 {{'T' is deprecated}}
- // expected-note at +1 {{'T' has been explicitly marked deprecated here}}
- enum __attribute__((deprecated(""))) T { E0, E1 } *p1;
-}
-
-// CHECK-LABEL: defMiddle
-void defMiddle() {
- // PRINT-NEXT: enum __attribute__((deprecated(""))) T *p0;
- // expected-warning at +2 {{'T' is deprecated}}
- // expected-note at +1 3 {{'T' has been explicitly marked deprecated here}}
- enum __attribute__((deprecated(""))) T *p0;
-
- // PRINT-NEXT: enum __attribute__((aligned(16))) T {
- // PRINT-NEXT: E0
- // PRINT-NEXT: E1
- // PRINT-NEXT: } *p1;
- enum __attribute__((aligned(16))) T { E0, E1 } *p1; // expected-warning {{'T' is deprecated}}
-
- // PRINT-NEXT: enum T *p2;
- enum T *p2; // expected-warning {{'T' is deprecated}}
-}
-
-// CHECK-LABEL: declsOnly
-void declsOnly() {
- // FIXME: For some reason, attributes are ignored if they're not on the first
- // declaration and not on the definition.
-
- // PRINT-NEXT: enum __attribute__((aligned)) T *p0;
- enum __attribute__((aligned)) T *p0;
-
- // PRINT-NEXT: enum T *p1;
- enum __attribute__((may_alias)) T *p1;
-
- // PRINT-NEXT: enum T *p2;
- enum T *p2;
-
- // PRINT-NEXT: enum T *p3;
- enum __attribute__((deprecated(""))) T *p3;
-
- // PRINT-NEXT: enum T *p4;
- enum T *p4;
-}
-
-// Check that tag decl groups stay together in decl contexts.
-
-// PRINT-LABEL: enum DeclGroupAtFileScope {
-// PRINT-NEXT: DeclGroupAtFileScope0
-// PRINT-NEXT: } *DeclGroupAtFileScopePtr;
-enum DeclGroupAtFileScope { DeclGroupAtFileScope0 } *DeclGroupAtFileScopePtr;
-
-// PRINT-LABEL: struct DeclGroupInMemberList
-struct DeclGroupInMemberList {
- // PRINT-NEXT: enum T1 {
- // PRINT-NEXT: T10
- // PRINT-NEXT: } *p0;
- enum T1 { T10 } *p0;
- // PRINT-NEXT: enum T2 {
- // PRINT-NEXT: T20
- // PRINT-NEXT: } *p1, *p2;
- enum T2 { T20 } *p1, *p2;
- // PRINT-NEXT: };
-};
Removed: cfe/trunk/test/Misc/ast-print-objectivec.m
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Misc/ast-print-objectivec.m?rev=348016&view=auto
==============================================================================
--- cfe/trunk/test/Misc/ast-print-objectivec.m (original)
+++ cfe/trunk/test/Misc/ast-print-objectivec.m (removed)
@@ -1,62 +0,0 @@
-// RUN: %clang_cc1 -ast-print %s -o - | FileCheck %s
-
- at interface NSObject @end
-
- at protocol P
-- (void)MethP __attribute__((availability(macosx,introduced=10.1.0,deprecated=10.2)));
- at end
-
- at interface I : NSObject <P>
-- (void)MethI __attribute__((availability(macosx,introduced=10.1.0,deprecated=10.2)));
- at end
-
- at interface I(CAT)
-- (void)MethCAT __attribute__((availability(macosx,introduced=10_1_0,deprecated=10_2)));
- at end
-
- at implementation I
-- (void)MethP __attribute__((availability(macosx,introduced=10.1.0,deprecated=10.2))) {}
-- (void)MethI __attribute__((availability(macosx,introduced=10.1.0,deprecated=10.2))) {}
-
-- (void)methodWithArg:(int)x andAnotherOne:(int)y { }
- at end
-
-// CHECK: @protocol P
-// CHECK: - (void)MethP __attribute__((availability(macos, introduced=10.1.0, deprecated=10.2)));
-// CHECK: @end
-
-// CHECK: @interface I : NSObject<P>
-// CHECK: - (void)MethI __attribute__((availability(macos, introduced=10.1.0, deprecated=10.2)));
-// CHECK: @end
-
-// CHECK: @interface I(CAT)
-// CHECK: - (void)MethCAT __attribute__((availability(macos, introduced=10.1.0, deprecated=10.2)));
-// CHECK: @end
-
-// CHECK: @implementation I
-// CHECK: - (void)MethP __attribute__((availability(macos, introduced=10.1.0, deprecated=10.2))) {
-// CHECK: }
-
-// CHECK: - (void)MethI __attribute__((availability(macos, introduced=10.1.0, deprecated=10.2))) {
-// CHECK: }
-
-// CHECK: - (void)methodWithArg:(int)x andAnotherOne:(int)y {
-// CHECK: }
-
-// CHECK: @end
-
- at class C1;
-struct __attribute__((objc_bridge_related(C1,,))) S1;
-
-// CHECK: @class C1;
-// CHECK: struct __attribute__((objc_bridge_related(C1, , ))) S1;
-
- at interface ImplicitPropertyWithSetterOnly
-
-- (void)setX:(int)x;
-
- at end
-
-void printImplicitPropertyWithSetterOnly(ImplicitPropertyWithSetterOnly *x) {
- x.x = 313; // CHECK: x.x = 313;
-}
Removed: cfe/trunk/test/Misc/ast-print-out-of-line-func.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Misc/ast-print-out-of-line-func.cpp?rev=348016&view=auto
==============================================================================
--- cfe/trunk/test/Misc/ast-print-out-of-line-func.cpp (original)
+++ cfe/trunk/test/Misc/ast-print-out-of-line-func.cpp (removed)
@@ -1,95 +0,0 @@
-// RUN: %clang_cc1 -ast-print -std=c++14 %s | FileCheck %s
-
-namespace ns {
-
-struct Wrapper {
-class Inner {
- Inner();
- Inner(int);
- ~Inner();
-
- void operator += (int);
-
- template<typename T>
- void member();
-
- static void staticMember();
-
- operator int();
-
- operator ns::Wrapper();
- // CHECK: operator ns::Wrapper()
-};
-};
-
-Wrapper::Inner::Inner() { }
-// CHECK: Wrapper::Inner::Inner()
-
-void Wrapper::Inner::operator +=(int) { }
-// CHECK: void Wrapper::Inner::operator+=(int)
-
-}
-
-ns::Wrapper::Inner::Inner(int) { }
-// CHECK: ns::Wrapper::Inner::Inner(int)
-
-ns::Wrapper::Inner::~Inner() { }
-// CHECK: ns::Wrapper::Inner::~Inner()
-
-template<typename T>
-void ::ns::Wrapper::Inner::member() { }
-// CHECK: template <typename T> void ::ns::Wrapper::Inner::member()
-
-ns::Wrapper::Inner::operator int() { return 0; }
-// CHECK: ns::Wrapper::Inner::operator int()
-
-ns::Wrapper::Inner::operator ::ns::Wrapper() { return ns::Wrapper(); }
-// CHECK: ns::Wrapper::Inner::operator ::ns::Wrapper()
-
-namespace ns {
-
-void Wrapper::Inner::staticMember() { }
-// CHECK: void Wrapper::Inner::staticMember()
-
-}
-
-template<int x, typename T>
-class TemplateRecord {
- void function();
- template<typename U> void functionTemplate(T, U);
-};
-
-template<int x, typename T>
-void TemplateRecord<x, T>::function() { }
-// CHECK: template <int x, typename T> void TemplateRecord<x, T>::function()
-
-template<int x, typename T>
-template<typename U>
-void TemplateRecord<x, T>::functionTemplate(T, U) { }
-// CHECK: template <int x, typename T> template <typename U> void TemplateRecord<x, T>::functionTemplate(T, U)
-
-template<>
-class TemplateRecord<0, int> {
- void function();
- template<typename U> void functionTemplate(int, U);
-};
-
-void TemplateRecord<0, int>::function() { }
-// CHECK: void TemplateRecord<0, int>::function()
-
-template<typename U>
-void TemplateRecord<0, int>::functionTemplate(int, U) { }
-// CHECK: template <typename U> void TemplateRecord<0, int>::functionTemplate(int, U)
-
-template<typename T>
-struct OuterTemplateRecord {
- template<typename U>
- struct Inner {
- void function();
- };
-};
-
-template<typename T>
-template<typename U>
-void OuterTemplateRecord<T>::Inner<U>::function() { }
-// CHECK: template <typename T> template <typename U> void OuterTemplateRecord<T>::Inner<U>::function()
Removed: cfe/trunk/test/Misc/ast-print-pragmas-xfail.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Misc/ast-print-pragmas-xfail.cpp?rev=348016&view=auto
==============================================================================
--- cfe/trunk/test/Misc/ast-print-pragmas-xfail.cpp (original)
+++ cfe/trunk/test/Misc/ast-print-pragmas-xfail.cpp (removed)
@@ -1,21 +0,0 @@
-// RUN: %clang_cc1 %s -ast-print -o - | FileCheck %s
-
-// FIXME: Test fails because attribute order is reversed by ParsedAttributes.
-// XFAIL: *
-
-void run1(int *List, int Length) {
- int i = 0;
-// CHECK: #pragma loop vectorize(4)
-// CHECK-NEXT: #pragma loop interleave(8)
-// CHECK-NEXT: #pragma loop vectorize(enable)
-// CHECK-NEXT: #pragma loop interleave(enable)
-#pragma loop vectorize(4)
-#pragma loop interleave(8)
-#pragma loop vectorize(enable)
-#pragma loop interleave(enable)
-// CHECK-NEXT: while (i < Length)
- while (i < Length) {
- List[i] = i;
- i++;
- }
-}
Removed: cfe/trunk/test/Misc/ast-print-pragmas.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Misc/ast-print-pragmas.cpp?rev=348016&view=auto
==============================================================================
--- cfe/trunk/test/Misc/ast-print-pragmas.cpp (original)
+++ cfe/trunk/test/Misc/ast-print-pragmas.cpp (removed)
@@ -1,65 +0,0 @@
-// RUN: %clang_cc1 -ast-print %s -o - | FileCheck %s
-// RUN: %clang_cc1 -DMS_EXT -fsyntax-only -fms-extensions %s -triple x86_64-pc-win32 -ast-print | FileCheck %s --check-prefix=MS-EXT
-
-// CHECK: #pragma clang loop vectorize_width(4)
-// CHECK-NEXT: #pragma clang loop interleave_count(8){{$}}
-
-void test(int *List, int Length) {
- int i = 0;
-#pragma clang loop vectorize_width(4)
-#pragma clang loop interleave_count(8)
-// CHECK-NEXT: while (i < Length)
- while (i < Length) {
- List[i] = i * 2;
- i++;
- }
-
-// CHECK: #pragma clang loop distribute(disable)
-// CHECK-NEXT: #pragma clang loop vectorize(enable)
-// CHECK-NEXT: #pragma clang loop interleave(disable)
-
-#pragma clang loop distribute(disable)
-#pragma clang loop vectorize(enable)
-#pragma clang loop interleave(disable)
-// CHECK-NEXT: while (i - 1 < Length)
- while (i - 1 < Length) {
- List[i] = i * 2;
- i++;
- }
-
-// CHECK: #pragma clang loop distribute(enable)
-// CHECK-NEXT: #pragma clang loop vectorize(disable)
-// CHECK-NEXT: #pragma clang loop interleave(enable)
-
-#pragma clang loop distribute(enable)
-#pragma clang loop vectorize(disable)
-#pragma clang loop interleave(enable)
-// CHECK-NEXT: while (i - 2 < Length)
- while (i - 2 < Length) {
- List[i] = i * 2;
- i++;
- }
-}
-
-template <int V, int I>
-void test_nontype_template_param(int *List, int Length) {
-#pragma clang loop vectorize_width(V) interleave_count(I)
- for (int i = 0; i < Length; i++) {
- List[i] = i;
- }
-}
-
-// CHECK: #pragma clang loop vectorize_width(V)
-// CHECK: #pragma clang loop interleave_count(I)
-
-void test_templates(int *List, int Length) {
- test_nontype_template_param<2, 4>(List, Length);
-}
-
-#ifdef MS_EXT
-#pragma init_seg(compiler)
-// MS-EXT: #pragma init_seg (.CRT$XCC){{$}}
-// MS-EXT-NEXT: int x = 3 __declspec(thread);
-int __declspec(thread) x = 3;
-#endif //MS_EXT
-
Removed: cfe/trunk/test/Misc/ast-print-record-decl.c
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Misc/ast-print-record-decl.c?rev=348016&view=auto
==============================================================================
--- cfe/trunk/test/Misc/ast-print-record-decl.c (original)
+++ cfe/trunk/test/Misc/ast-print-record-decl.c (removed)
@@ -1,291 +0,0 @@
-// Check struct:
-//
-// First check compiling and printing of this file.
-//
-// RUN: %clang -target x86_64-linux -Xclang -verify -S -emit-llvm \
-// RUN: -DKW=struct -DBASES= -o - %s \
-// RUN: | FileCheck --check-prefixes=CHECK,LLVM %s
-//
-// RUN: %clang_cc1 -verify -ast-print -DKW=struct -DBASES= %s > %t.c
-// RUN: FileCheck --check-prefixes=CHECK,PRINT,PRINT-C -DKW=struct -DBASES= \
-// RUN: %s --input-file %t.c
-//
-// Now check compiling and printing of the printed file.
-//
-// RUN: echo "// expected""-warning@* 10 {{'T' is deprecated}}" >> %t.c
-// RUN: echo "// expected""-note@* 10 {{'T' has been explicitly marked deprecated here}}" >> %t.c
-//
-// RUN: %clang -target x86_64-linux -Xclang -verify -S -emit-llvm -o - %t.c \
-// RUN: | FileCheck --check-prefixes=CHECK,LLVM %s
-//
-// RUN: %clang_cc1 -verify -ast-print %t.c \
-// RUN: | FileCheck --check-prefixes=CHECK,PRINT,PRINT-C -DKW=struct \
-// RUN: -DBASES= %s
-
-// Repeat for union:
-//
-// First check compiling and printing of this file.
-//
-// RUN: %clang -target x86_64-linux -Xclang -verify -S -emit-llvm \
-// RUN: -DKW=union -DBASES= -o - %s \
-// RUN: | FileCheck --check-prefixes=CHECK,LLVM %s
-//
-// RUN: %clang_cc1 -verify -ast-print -DKW=union -DBASES= %s > %t.c
-// RUN: FileCheck --check-prefixes=CHECK,PRINT,PRINT-C -DKW=union -DBASES= \
-// RUN: %s --input-file %t.c
-//
-// Now check compiling and printing of the printed file.
-//
-// RUN: echo "// expected""-warning@* 10 {{'T' is deprecated}}" >> %t.c
-// RUN: echo "// expected""-note@* 10 {{'T' has been explicitly marked deprecated here}}" >> %t.c
-//
-// RUN: %clang -target x86_64-linux -Xclang -verify -S -emit-llvm -o - %t.c \
-// RUN: | FileCheck --check-prefixes=CHECK,LLVM %s
-//
-// RUN: %clang_cc1 -verify -ast-print %t.c \
-// RUN: | FileCheck --check-prefixes=CHECK,PRINT,PRINT-C -DKW=union \
-// RUN: -DBASES= %s
-
-// Repeat for C++ (BASES helps ensure we're printing as C++ not as C):
-//
-// First check compiling and printing of this file.
-//
-// RUN: %clang -target x86_64-linux -Xclang -verify -S -emit-llvm \
-// RUN: -DKW=struct -DBASES=' : B' -o - -xc++ %s \
-// RUN: | FileCheck --check-prefixes=CHECK,LLVM %s
-//
-// RUN: %clang_cc1 -verify -ast-print -DKW=struct -DBASES=' : B' -xc++ %s \
-// RUN: > %t.cpp
-// RUN: FileCheck --check-prefixes=CHECK,PRINT,PRINT-CXX -DKW=struct \
-// RUN: -DBASES=' : B' %s --input-file %t.cpp
-//
-// Now check compiling and printing of the printed file.
-//
-// RUN: echo "// expected""-warning@* 10 {{'T' is deprecated}}" > %t.diags
-// RUN: echo "// expected""-note@* 10 {{'T' has been explicitly marked deprecated here}}" >> %t.diags
-// RUN: cat %t.diags >> %t.cpp
-//
-// RUN: %clang -target x86_64-linux -Xclang -verify -S -emit-llvm -o - %t.cpp \
-// RUN: | FileCheck --check-prefixes=CHECK,LLVM %s
-//
-// RUN: %clang_cc1 -verify -ast-print %t.cpp \
-// RUN: | FileCheck --check-prefixes=CHECK,PRINT,PRINT-CXX -DKW=struct \
-// RUN: -DBASES=' : B' %s
-//
-// Make sure implicit attributes aren't printed. See comments in inMemberPtr
-// for details.
-//
-// RUN: %clang_cc1 -triple i686-pc-win32 -verify -ast-print -DKW=struct \
-// RUN: -DBASES=' : B' -xc++ %s > %t.cpp
-// RUN: FileCheck --check-prefixes=CHECK,PRINT,PRINT-CXX -DKW=struct \
-// RUN: -DBASES=' : B' %s --input-file %t.cpp
-//
-// RUN: cat %t.diags >> %t.cpp
-// RUN: %clang_cc1 -triple i686-pc-win32 -verify -ast-print %t.cpp \
-// RUN: | FileCheck --check-prefixes=CHECK,PRINT,PRINT-CXX -DKW=struct \
-// RUN: -DBASES=' : B' %s
-
-// END.
-
-#ifndef KW
-# error KW undefined
-# define KW struct // help syntax checkers
-#endif
-
-#ifndef BASES
-# error BASES undefined
-# define BASES // help syntax checkers
-#endif
-
-struct B {};
-
-// CHECK-LABEL: defFirst
-void defFirst() {
- // PRINT-NEXT: [[KW]]
- // PRINT-DAG: __attribute__((aligned(16)))
- // PRINT-DAG: __attribute__((deprecated("")))
- // PRINT-NOT: __attribute__
- // PRINT-SAME: T[[BASES]] {
- // PRINT-NEXT: int i;
- // PRINT-NEXT: } *p0;
- // expected-warning at +2 {{'T' is deprecated}}
- // expected-note at +1 2 {{'T' has been explicitly marked deprecated here}}
- KW __attribute__((aligned(16))) __attribute__((deprecated(""))) T BASES {
- int i;
- } *p0;
-
- // PRINT-NEXT: [[KW]] T *p1;
- KW T *p1; // expected-warning {{'T' is deprecated}}
-
- // LLVM: store i64 16
- long s0 = sizeof *p0;
- // LLVM-NEXT: store i64 16
- long s1 = sizeof *p1;
-}
-
-// CHECK-LABEL: defLast
-void defLast() {
- // PRINT-NEXT: [[KW]] __attribute__((aligned(16))) T *p0;
- KW __attribute__((aligned(16))) T *p0;
-
- // PRINT-NEXT: [[KW]] __attribute__((deprecated(""))) T[[BASES]] {
- // PRINT-NEXT: int i;
- // PRINT-NEXT: } *p1;
- // expected-warning at +2 {{'T' is deprecated}}
- // expected-note at +1 {{'T' has been explicitly marked deprecated here}}
- KW __attribute__((deprecated(""))) T BASES { int i; } *p1;
-
- // LLVM: store i64 16
- long s0 = sizeof *p0;
- // LLVM-NEXT: store i64 16
- long s1 = sizeof *p1;
-}
-
-// CHECK-LABEL: defMiddle
-void defMiddle() {
- // PRINT-NEXT: [[KW]] __attribute__((deprecated(""))) T *p0;
- // expected-warning at +2 {{'T' is deprecated}}
- // expected-note at +1 3 {{'T' has been explicitly marked deprecated here}}
- KW __attribute__((deprecated(""))) T *p0;
-
- // PRINT-NEXT: [[KW]] __attribute__((aligned(16))) T[[BASES]] {
- // PRINT-NEXT: int i;
- // PRINT-NEXT: } *p1;
- KW __attribute__((aligned(16))) T BASES { int i; } *p1; // expected-warning {{'T' is deprecated}}
-
- // PRINT-NEXT: [[KW]] T *p2;
- KW T *p2; // expected-warning {{'T' is deprecated}}
-
- // LLVM: store i64 16
- long s0 = sizeof *p0;
- // LLVM-NEXT: store i64 16
- long s1 = sizeof *p1;
- // LLVM-NEXT: store i64 16
- long s2 = sizeof *p2;
-}
-
-// CHECK-LABEL: defSelfRef
-void defSelfRef() {
- // PRINT-NEXT: [[KW]] __attribute__((deprecated(""))) T *p0;
- // expected-warning at +2 {{'T' is deprecated}}
- // expected-note at +1 2 {{'T' has been explicitly marked deprecated here}}
- KW __attribute__((deprecated(""))) T *p0;
-
- // PRINT-NEXT: [[KW]] __attribute__((aligned(64))) T[[BASES]] {
- // PRINT-NEXT: int i;
- // PRINT-NEXT: [[KW]] T *p2;
- // PRINT-NEXT: [[KW]] __attribute__((may_alias)) T *p3;
- // PRINT-NEXT: [[KW]] T *p4;
- // PRINT-NEXT: } *p1;
- KW __attribute__((aligned(64))) T BASES { // expected-warning {{'T' is deprecated}}
- int i;
- KW T *p2;
- // FIXME: For C++, T at p3 loses aligned and deprecated, perhaps because
- // that RecordDecl isn't in the same redecl list. Perhaps the redecl lists
- // are split here but not in C due to the different scoping rules in C++
- // classes.
- KW __attribute__((may_alias)) T *p3;
- KW T *p4;
- } *p1;
-
- // LLVM: store i64 64
- long s0 = sizeof *p0;
- // LLVM-NEXT: store i64 64
- long s1 = sizeof *p1;
- // LLVM-NEXT: store i64 64
- long s2 = sizeof *p0->p2;
- // LLVM-NEXT: store i64 64
- long s3 = sizeof *p1->p3;
- // LLVM-NEXT: store i64 64
- long s4 = sizeof *p1->p4->p2;
-}
-
-// CHECK-LABEL: declsOnly
-void declsOnly() {
- // PRINT-NEXT: [[KW]] T *p0;
- KW T *p0;
-
- // PRINT-NEXT: [[KW]] __attribute__((may_alias)) T *p1;
- KW __attribute__((may_alias)) T *p1;
-
- // PRINT-NEXT: [[KW]] T *p2;
- KW T *p2;
-
- // PRINT-NEXT: [[KW]] __attribute__((deprecated(""))) T *p3;
- // expected-warning at +2 {{'T' is deprecated}}
- // expected-note at +1 2 {{'T' has been explicitly marked deprecated here}}
- KW __attribute__((deprecated(""))) T *p3;
-
- // PRINT-NEXT: [[KW]] T *p4;
- KW T *p4; // expected-warning {{'T' is deprecated}}
-}
-
-// Make sure expanded printing of tag types is turned back off in other parts
-// of a tag declaration. The base class list is checked above.
-
-// CHECK-LABEL: inMembers
-void inMembers() {
- // PRINT-NEXT: [[KW]] T1 {
- // PRINT-NEXT: int i;
- // PRINT-NEXT: };
- KW T1 { int i; };
- // PRINT-NEXT: [[KW]] T2 {
- // PRINT-NEXT: [[KW]] T1 i;
- // PRINT-NEXT: };
- KW T2 { KW T1 i; };
-}
-
-// CHECK-LABEL: inInit
-void inInit() {
- // PRINT-NEXT: [[KW]] T1 {
- // PRINT-NEXT: int i;
- // PRINT-NEXT: };
- KW T1 { int i; };
- // PRINT-NEXT: [[KW]] T2 {
- // PRINT-NEXT: long i;
- // PRINT-NEXT: } t2 = {sizeof([[KW]] T1)};
- KW T2 { long i; } t2 = {sizeof(KW T1)};
-}
-
-#ifdef __cplusplus
-// PRINT-CXX-LABEL: inMemberPtr
-void inMemberPtr() {
- // Under windows, the implicit attribute __single_inheritance used to print
- // between KW and T1 here, but that wasn't faithful to the original source.
- //
- // PRINT-CXX-NEXT: [[KW]] T1 {
- // PRINT-CXX-NEXT: int i;
- // PRINT-CXX-NEXT: };
- KW T1 { int i; };
- // PRINT-CXX-NEXT: [[KW]] T2 {
- // PRINT-CXX-NEXT: } T1::*p;
- KW T2 {} T1::*p;
-}
-#endif
-
-// Check that tag decl groups stay together in decl contexts.
-
-// PRINT-LABEL: DeclGroupAtFileScope {
-// PRINT-NEXT: int i;
-// PRINT-NEXT: } *DeclGroupAtFileScopePtr;
-KW DeclGroupAtFileScope { int i; } *DeclGroupAtFileScopePtr;
-
-// PRINT-LABEL: DeclGroupInMemberList {
-KW DeclGroupInMemberList {
- // PRINT-NEXT: struct T1 {
- // PRINT-NEXT: int i;
- // PRINT-NEXT: } t1;
- struct T1 { int i; } t1;
- // PRINT-NEXT: union T2 {
- // PRINT-NEXT: int i;
- // PRINT-NEXT: } *t20, t21[2];
- union T2 { int i; } *t20, t21[2];
- // PRINT-NEXT: enum T3 {
- // PRINT-NEXT: T30
- // PRINT-NEXT: } t30;
- enum T3 { T30 } t30;
- // PRINT-NEXT: };
-};
-
-// A tag decl group in the tag decl's own member list is exercised in
-// defSelfRef above.
Removed: cfe/trunk/test/Misc/attr-print-emit.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Misc/attr-print-emit.cpp?rev=348016&view=auto
==============================================================================
--- cfe/trunk/test/Misc/attr-print-emit.cpp (original)
+++ cfe/trunk/test/Misc/attr-print-emit.cpp (removed)
@@ -1,69 +0,0 @@
-// RUN: %clang_cc1 %s -ast-print | FileCheck %s
-// RUN: %clang -emit-ast -o %t.ast %s
-// RUN: %clang_cc1 %t.ast -ast-print | FileCheck %s
-
-// CHECK: void xla(int a) __attribute__((xray_log_args(1)));
-void xla(int a) __attribute__((xray_log_args(1)));
-
-// CHECK: void *as2(int, int) __attribute__((alloc_size(1, 2)));
-void *as2(int, int) __attribute__((alloc_size(1, 2)));
-// CHECK: void *as1(void *, int) __attribute__((alloc_size(2)));
-void *as1(void *, int) __attribute__((alloc_size(2)));
-
-// CHECK: void fmt(int, const char *, ...) __attribute__((format(printf, 2, 3)));
-void fmt(int, const char *, ...) __attribute__((format(printf, 2, 3)));
-
-// CHECK: char *fmta(int, const char *) __attribute__((format_arg(2)));
-char *fmta(int, const char *) __attribute__((format_arg(2)));
-
-// CHECK: void nn(int *, int *) __attribute__((nonnull(1, 2)));
-void nn(int *, int *) __attribute__((nonnull(1, 2)));
-
-// CHECK: int *aa(int i) __attribute__((alloc_align(1)));
-int *aa(int i) __attribute__((alloc_align(1)));
-
-// CHECK: void ownt(int *, int *) __attribute__((ownership_takes(foo, 1, 2)));
-void ownt(int *, int *) __attribute__((ownership_takes(foo, 1, 2)));
-// CHECK: void ownh(int *, int *) __attribute__((ownership_holds(foo, 1, 2)));
-void ownh(int *, int *) __attribute__((ownership_holds(foo, 1, 2)));
-// CHECK: void ownr(int) __attribute__((ownership_returns(foo, 1)));
-void ownr(int) __attribute__((ownership_returns(foo, 1)));
-
-// CHECK: void awtt(int, int, ...) __attribute__((argument_with_type_tag(foo, 3, 2)));
-void awtt(int, int, ...) __attribute__((argument_with_type_tag(foo, 3, 2)));
-// CHECK: void pwtt(void *, int) __attribute__((pointer_with_type_tag(foo, 1, 2)));
-void pwtt(void *, int) __attribute__((pointer_with_type_tag(foo, 1, 2)));
-
-class C {
- // CHECK: void xla(int a) __attribute__((xray_log_args(2)));
- void xla(int a) __attribute__((xray_log_args(2)));
-
- // CHECK: void *as2(int, int) __attribute__((alloc_size(2, 3)));
- void *as2(int, int) __attribute__((alloc_size(2, 3)));
- // CHECK: void *as1(void *, int) __attribute__((alloc_size(3)));
- void *as1(void *, int) __attribute__((alloc_size(3)));
-
- // CHECK: void fmt(int, const char *, ...) __attribute__((format(printf, 3, 4)));
- void fmt(int, const char *, ...) __attribute__((format(printf, 3, 4)));
-
- // CHECK: char *fmta(int, const char *) __attribute__((format_arg(3)));
- char *fmta(int, const char *) __attribute__((format_arg(3)));
-
- // CHECK: void nn(int *, int *) __attribute__((nonnull(2, 3)));
- void nn(int *, int *) __attribute__((nonnull(2, 3)));
-
- // CHECK: int *aa(int i) __attribute__((alloc_align(2)));
- int *aa(int i) __attribute__((alloc_align(2)));
-
- // CHECK: void ownt(int *, int *) __attribute__((ownership_takes(foo, 2, 3)));
- void ownt(int *, int *) __attribute__((ownership_takes(foo, 2, 3)));
- // CHECK: void ownh(int *, int *) __attribute__((ownership_holds(foo, 2, 3)));
- void ownh(int *, int *) __attribute__((ownership_holds(foo, 2, 3)));
- // CHECK: void ownr(int) __attribute__((ownership_returns(foo, 2)));
- void ownr(int) __attribute__((ownership_returns(foo, 2)));
-
- // CHECK: void awtt(int, int, ...) __attribute__((argument_with_type_tag(foo, 4, 3)));
- void awtt(int, int, ...) __attribute__((argument_with_type_tag(foo, 4, 3)));
- // CHECK: void pwtt(void *, int) __attribute__((pointer_with_type_tag(foo, 2, 3)));
- void pwtt(void *, int) __attribute__((pointer_with_type_tag(foo, 2, 3)));
-};
Removed: cfe/trunk/test/Misc/pragma-attribute-cxx-subject-match-rules.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Misc/pragma-attribute-cxx-subject-match-rules.cpp?rev=348016&view=auto
==============================================================================
--- cfe/trunk/test/Misc/pragma-attribute-cxx-subject-match-rules.cpp (original)
+++ cfe/trunk/test/Misc/pragma-attribute-cxx-subject-match-rules.cpp (removed)
@@ -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: AnnotateAttr{{.*}} "test"
-// CHECK-RECORD_UNLESS_IS_UNION-LABEL: CXXRecordDecl{{.*}} testStructRecord
-// CHECK-RECORD_UNLESS_IS_UNION: AnnotateAttr{{.*}} "test"
-// CHECK-FIELD: FieldDecl{{.*}} testStructRecordField
-// CHECK-FIELD-NEXT: AnnotateAttr{{.*}} "test"
-
-class testClassRecord {
- int testClassRecordField;
-};
-// CHECK-RECORD: CXXRecordDecl{{.*}} testClassRecord
-// CHECK-RECORD: AnnotateAttr{{.*}} "test"
-// CHECK-RECORD_UNLESS_IS_UNION-LABEL: CXXRecordDecl{{.*}} testClassRecord
-// CHECK-RECORD_UNLESS_IS_UNION: AnnotateAttr{{.*}} "test"
-// CHECK-FIELD: FieldDecl{{.*}} testClassRecordField
-// CHECK-FIELD-NEXT: AnnotateAttr{{.*}} "test"
-
-union testUnionRecord {
- int testUnionRecordField;
-};
-// CHECK-RECORD: CXXRecordDecl{{.*}} testUnionRecord
-// CHECK-RECORD: 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
Removed: cfe/trunk/test/Misc/pragma-attribute-objc-subject-match-rules.m
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Misc/pragma-attribute-objc-subject-match-rules.m?rev=348016&view=auto
==============================================================================
--- cfe/trunk/test/Misc/pragma-attribute-objc-subject-match-rules.m (original)
+++ cfe/trunk/test/Misc/pragma-attribute-objc-subject-match-rules.m (removed)
@@ -1,113 +0,0 @@
-// RUN: %clang_cc1 -fblocks -fobjc-arc -Wno-objc-root-class -fsyntax-only -ast-dump "-DSUBJECT=objc_interface" %s | FileCheck --check-prefix=CHECK-OBJC_INTERFACE %s
-// RUN: %clang_cc1 -fblocks -fobjc-arc -Wno-objc-root-class -fsyntax-only -ast-dump -ast-dump-filter test "-DSUBJECT=objc_protocol" %s | FileCheck --check-prefix=CHECK-OBJC_PROTOCOL %s
-// RUN: %clang_cc1 -fblocks -fobjc-arc -Wno-objc-root-class -fsyntax-only -ast-dump "-DSUBJECT=objc_category" %s | FileCheck --check-prefix=CHECK-OBJC_CATEGORY %s
-// RUN: %clang_cc1 -fblocks -fobjc-arc -Wno-objc-root-class -fsyntax-only -ast-dump -ast-dump-filter test "-DSUBJECT=objc_method" %s | FileCheck --check-prefix=CHECK-OBJC_METHOD %s
-// RUN: %clang_cc1 -fblocks -fobjc-arc -Wno-objc-root-class -fsyntax-only -ast-dump -ast-dump-filter test "-DSUBJECT=objc_method(is_instance)" %s | FileCheck --check-prefix=CHECK-OBJC_METHOD_IS_INSTANCE %s
-// RUN: %clang_cc1 -fblocks -fobjc-arc -Wno-objc-root-class -fsyntax-only -ast-dump -ast-dump-filter test "-DSUBJECT=field" %s | FileCheck --check-prefix=CHECK-FIELD %s
-// RUN: %clang_cc1 -fblocks -fobjc-arc -Wno-objc-root-class -fsyntax-only -ast-dump -ast-dump-filter test "-DSUBJECT=objc_property" %s | FileCheck --check-prefix=CHECK-OBJC_PROPERTY %s
-// RUN: %clang_cc1 -fblocks -fobjc-arc -Wno-objc-root-class -fsyntax-only -ast-dump -ast-dump-filter test "-DSUBJECT=block" %s | FileCheck --check-prefix=CHECK-BLOCK %s
-// RUN: %clang_cc1 -fblocks -fobjc-arc -Wno-objc-root-class -fsyntax-only -ast-dump -ast-dump-filter test "-DSUBJECT=hasType(functionType)" %s | FileCheck --check-prefix=CHECK-HAS_TYPE_FUNCTION_TYPE %s
-
-#pragma clang attribute push (__attribute__((annotate("test"))), apply_to = any(SUBJECT))
-
- at interface testInterface
- at end
-// CHECK-OBJC_INTERFACE: ObjCInterfaceDecl{{.*}} testInterface
-// CHECK-OBJC_INTERFACE-NEXT: AnnotateAttr{{.*}} "test"
-
- at interface testInterface ()
- at end
-// CHECK-OBJC_INTERFACE: ObjCCategoryDecl
-// CHECK-OBJC_INTERFACE-NOT: AnnotateAttr{{.*}} "test"
-// CHECK-OBJC_CATEGORY: ObjCCategoryDecl
-// CHECK-OBJC_CATEGORY-NEXT: ObjCInterface
-// CHECK-OBJC_CATEGORY-NEXT: AnnotateAttr{{.*}} "test"
-
- at interface testInterface (testCategory)
- at end
-// CHECK-OBJC_INTERFACE: ObjCCategoryDecl{{.*}} testCategory
-// CHECK-OBJC_INTERFACE-NOT: AnnotateAttr{{.*}} "test"
-// CHECK-OBJC_CATEGORY: ObjCCategoryDecl{{.*}} testCategory
-// CHECK-OBJC_CATEGORY-NEXT: ObjCInterface
-// CHECK-OBJC_CATEGORY-NEXT: AnnotateAttr{{.*}} "test"
-
-// CHECK-OBJC_INTERFACE-LABEL: ObjCProtocolDecl
- at protocol testProtocol
- at end
-// CHECK-OBJC_PROTOCOL: ObjCProtocolDecl{{.*}} testProtocol
-// CHECK-OBJC_PROTOCOL-NEXT: AnnotateAttr{{.*}} "test"
-
- at interface methodContainer
-- (void) testInstanceMethod;
-+ (void) testClassMethod;
- at end
-// CHECK-OBJC_METHOD: ObjCMethodDecl{{.*}} testInstanceMethod
-// CHECK-OBJC_METHOD-NEXT: AnnotateAttr{{.*}} "test"
-// CHECK-OBJC_METHOD: ObjCMethodDecl{{.*}} testClassMethod
-// CHECK-OBJC_METHOD-NEXT: AnnotateAttr{{.*}} "test"
-// CHECK-OBJC_METHOD_IS_INSTANCE: ObjCMethodDecl{{.*}} testInstanceMethod
-// CHECK-OBJC_METHOD_IS_INSTANCE-NEXT: AnnotateAttr{{.*}} "test"
-// CHECK-OBJC_METHOD_IS_INSTANCE-LABEL: ObjCMethodDecl{{.*}} testClassMethod
-// CHECK-OBJC_METHOD_IS_INSTANCE-NOT: AnnotateAttr{{.*}} "test"
-// CHECK-HAS_TYPE_FUNCTION_TYPE-LABEL: ObjCMethodDecl{{.*}} testInstanceMethod
-// CHECK-HAS_TYPE_FUNCTION_TYPE-NOT: AnnotateAttr{{.*}} "test"
-// CHECK-HAS_TYPE_FUNCTION_TYPE-LABEL: ObjCMethodDecl{{.*}} testClassMethod
-// CHECK-HAS_TYPE_FUNCTION_TYPE-NOT: AnnotateAttr{{.*}} "test"
-
- at implementation methodContainer
-- (void) testInstanceMethod { }
-+ (void) testClassMethod { }
- at end
-// CHECK-OBJC_METHOD: ObjCMethodDecl{{.*}} testInstanceMethod
-// CHECK-OBJC_METHOD-NEXT: ImplicitParamDecl
-// CHECK-OBJC_METHOD-NEXT: ImplicitParamDecl
-// CHECK-OBJC_METHOD-NEXT: CompoundStmt
-// CHECK-OBJC_METHOD-NEXT: AnnotateAttr{{.*}} "test"
-// CHECK-OBJC_METHOD: ObjCMethodDecl{{.*}} testClassMethod
-// CHECK-OBJC_METHOD-NEXT: ImplicitParamDecl
-// CHECK-OBJC_METHOD-NEXT: ImplicitParamDecl
-// CHECK-OBJC_METHOD-NEXT: CompoundStmt
-// CHECK-OBJC_METHOD-NEXT: AnnotateAttr{{.*}} "test"
-// CHECK-OBJC_METHOD_IS_INSTANCE-LABEL: ObjCMethodDecl{{.*}} testInstanceMethod
-// CHECK-OBJC_METHOD_IS_INSTANCE-NEXT: ImplicitParamDecl
-// CHECK-OBJC_METHOD_IS_INSTANCE-NEXT: ImplicitParamDecl
-// CHECK-OBJC_METHOD_IS_INSTANCE-NEXT: CompoundStmt
-// CHECK-OBJC_METHOD_IS_INSTANCE-NEXT: AnnotateAttr{{.*}} "test"
-// CHECK-OBJC_METHOD_IS_INSTANCE: ObjCMethodDecl{{.*}} testClassMethod
-// CHECK-OBJC_METHOD_IS_INSTANCE-NOT: AnnotateAttr{{.*}} "test"
-
-// CHECK-HAS_TYPE_FUNCTION_TYPE-LABEL: ObjCMethodDecl{{.*}} testInstanceMethod
-// CHECK-HAS_TYPE_FUNCTION_TYPE-NOT: AnnotateAttr{{.*}} "test"
-// CHECK-HAS_TYPE_FUNCTION_TYPE-LABEL: ObjCMethodDecl{{.*}} testClassMethod
-// CHECK-HAS_TYPE_FUNCTION_TYPE-NOT: AnnotateAttr{{.*}} "test"
- at interface propertyContainer {
- int testIvar;
-// CHECK-FIELD: ObjCIvarDecl{{.*}} testIvar
-// CHECK-FIELD-NEXT: AnnotateAttr{{.*}} "test"
-
-}
- at property int testProperty;
-// CHECK-OBJC_PROPERTY: ObjCPropertyDecl{{.*}} testProperty
-// CHECK-OBJC_PROPERTY-NEXT: AnnotateAttr{{.*}} "test"
-
- at end
-
-void (^testBlockVar)();
-// CHECK-BLOCK: VarDecl{{.*}} testBlockVar
-// CHECK-BLOCK-NOT: AnnotateAttr{{.*}} "test"
-
-void testBlock() {
- (void)(^ { });
-}
-// CHECK-BLOCK-LABEL: BlockDecl
-// CHECK-BLOCK-NEXT: CompoundStmt
-// CHECK-BLOCK-NEXT: AnnotateAttr{{.*}} "test"
-// CHECK-HAS_TYPE_FUNCTION_TYPE-LABEL: FunctionDecl{{.*}} testBlock
-// CHECK-HAS_TYPE_FUNCTION_TYPE: BlockDecl
-// CHECK-HAS_TYPE_FUNCTION_TYPE-NEXT: CompoundStmt
-// The attribute applies to function, but not to block:
-// CHECK-HAS_TYPE_FUNCTION_TYPE-NEXT: AnnotateAttr{{.*}} "test"
-// CHECK-HAS_TYPE_FUNCTION_TYPE-NOT: AnnotateAttr{{.*}} "test"
-
-
-#pragma clang attribute pop
Removed: cfe/trunk/test/OpenMP/dump.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/OpenMP/dump.cpp?rev=348016&view=auto
==============================================================================
--- cfe/trunk/test/OpenMP/dump.cpp (original)
+++ cfe/trunk/test/OpenMP/dump.cpp (removed)
@@ -1,84 +0,0 @@
-// RUN: %clang_cc1 -verify -fopenmp -ast-dump %s | FileCheck %s
-// RUN: %clang_cc1 -verify -fopenmp-simd -ast-dump %s | FileCheck %s
-// expected-no-diagnostics
-
-int ga, gb;
-#pragma omp threadprivate(ga, gb)
-
-// CHECK: |-OMPThreadPrivateDecl {{.+}} <col:9> col:9
-// CHECK-NEXT: | |-DeclRefExpr {{.+}} <col:27> 'int' lvalue Var {{.+}} 'ga' 'int'
-// CHECK-NEXT: | `-DeclRefExpr {{.+}} <col:31> 'int' lvalue Var {{.+}} 'gb' 'int'
-
-#pragma omp declare reduction(+ : int, char : omp_out *= omp_in)
-
-#pragma omp declare reduction(fun : float : omp_out += omp_in) initializer(omp_priv = omp_orig + 15)
-
-// CHECK: |-OMPDeclareReductionDecl {{.+}} <line:12:35> col:35 operator+ 'int' combiner
-// CHECK-NEXT: | |-CompoundAssignOperator {{.+}} <col:47, col:58> 'int' lvalue '*=' ComputeLHSTy='int' ComputeResultTy='int'
-// CHECK-NEXT: | | |-DeclRefExpr {{.+}} <col:47> 'int' lvalue Var {{.+}} 'omp_out' 'int'
-// CHECK-NEXT: | | `-ImplicitCastExpr {{.+}} <col:58> 'int' <LValueToRValue>
-// CHECK-NEXT: | | `-DeclRefExpr {{.+}} <col:58> 'int' lvalue Var {{.+}} 'omp_in' 'int'
-// CHECK-NEXT: | |-VarDecl {{.+}} <col:35> col:35 implicit used omp_in 'int'
-// CHECK-NEXT: | `-VarDecl {{.+}} <col:35> col:35 implicit used omp_out 'int'
-// CHECK-NEXT: |-OMPDeclareReductionDecl {{.+}} <col:40> col:40 operator+ 'char' combiner
-// CHECK-NEXT: | |-CompoundAssignOperator {{.+}} <col:47, col:58> 'char' lvalue '*=' ComputeLHSTy='int' ComputeResultTy='int'
-// CHECK-NEXT: | | |-DeclRefExpr {{.+}} <col:47> 'char' lvalue Var {{.+}} 'omp_out' 'char'
-// CHECK-NEXT: | | `-ImplicitCastExpr {{.+}} <col:58> 'int' <IntegralCast>
-// CHECK-NEXT: | | `-ImplicitCastExpr {{.+}} <col:58> 'char' <LValueToRValue>
-// CHECK-NEXT: | | `-DeclRefExpr {{.+}} <col:58> 'char' lvalue Var {{.+}} 'omp_in' 'char'
-// CHECK-NEXT: | |-VarDecl {{.+}} <col:40> col:40 implicit used omp_in 'char'
-// CHECK-NEXT: | `-VarDecl {{.+}} <col:40> col:40 implicit used omp_out 'char'
-// CHECK-NEXT: |-OMPDeclareReductionDecl {{.+}} <line:14:37> col:37 fun 'float' combiner initializer
-// CHECK-NEXT: | |-CompoundAssignOperator {{.+}} <col:45, col:56> 'float' lvalue '+=' ComputeLHSTy='float' ComputeResultTy='float'
-// CHECK-NEXT: | | |-DeclRefExpr {{.+}} <col:45> 'float' lvalue Var {{.+}} 'omp_out' 'float'
-// CHECK-NEXT: | | `-ImplicitCastExpr {{.+}} <col:56> 'float' <LValueToRValue>
-// CHECK-NEXT: | | `-DeclRefExpr {{.+}} <col:56> 'float' lvalue Var {{.+}} 'omp_in' 'float'
-
-struct S {
- int a, b;
- S() {
-#pragma omp parallel for default(none) private(a) shared(b) schedule(static, a)
- for (int i = 0; i < 0; ++i)
- ++a;
- }
-};
-
-// CHECK: | `-OMPParallelForDirective {{.+}} {{<line:40:9, col:80>|<col:9, col:80>}}
-// CHECK-NEXT: | |-OMPDefaultClause {{.+}} <col:26, col:38>
-// CHECK-NEXT: | |-OMPPrivateClause {{.+}} <col:40, col:49>
-// CHECK-NEXT: | | `-DeclRefExpr {{.+}} <col:48> 'int' lvalue OMPCapturedExpr {{.+}} 'a' 'int &'
-// CHECK-NEXT: | |-OMPSharedClause {{.+}} <col:51, col:59>
-// CHECK-NEXT: | | `-MemberExpr {{.+}} <col:58> 'int' lvalue ->b
-// CHECK-NEXT: | | `-CXXThisExpr {{.+}} <col:58> 'S *' this
-// CHECK-NEXT: | |-OMPScheduleClause {{.+}} <col:61, col:79>
-// CHECK-NEXT: | | `-ImplicitCastExpr {{.+}} <col:78> 'int' <LValueToRValue>
-// CHECK-NEXT: | | `-DeclRefExpr {{.+}} <col:78> 'int' lvalue OMPCapturedExpr {{.+}} '.capture_expr.' 'int'
-// CHECK-NEXT: | `-CapturedStmt {{.+}} <line:41:5, line:42:9>
-// CHECK-NEXT: | |-CapturedDecl {{.+}} <<invalid sloc>> <invalid sloc>
-// CHECK-NEXT: | | |-ForStmt {{.+}} <line:41:5, line:42:9>
-// CHECK: | | | `-UnaryOperator {{.+}} <line:42:7, col:9> 'int' lvalue prefix '++'
-// CHECK-NEXT: | | | `-DeclRefExpr {{.+}} <col:9> 'int' lvalue OMPCapturedExpr {{.+}} 'a' 'int &'
-
-#pragma omp declare simd
-#pragma omp declare simd inbranch
-void foo();
-
-// CHECK: |-FunctionDecl {{.+}} <line:64:1, col:10> col:6 foo 'void ()'
-// CHECK-NEXT: |-OMPDeclareSimdDeclAttr {{.+}} <line:63:9, col:34> Implicit BS_Inbranch
-// CHECK: `-OMPDeclareSimdDeclAttr {{.+}} <line:62:9, col:25> Implicit BS_Undefined
-
-#pragma omp declare target
-int bar() {
- int f;
- return f;
-}
-#pragma omp end declare target
-
-// CHECK: `-FunctionDecl {{.+}} <line:71:1, line:74:1> line:71:5 bar 'int ()'
-// CHECK-NEXT: |-CompoundStmt {{.+}} <col:11, line:74:1>
-// CHECK-NEXT: | |-DeclStmt {{.+}} <line:72:3, col:8>
-// CHECK-NEXT: | | `-VarDecl {{.+}} <col:3, col:7> col:7 used f 'int'
-// CHECK-NEXT: | `-ReturnStmt {{.+}} <line:73:3, col:10>
-// CHECK-NEXT: | `-ImplicitCastExpr {{.+}} <col:10> 'int' <LValueToRValue>
-// CHECK-NEXT: | `-DeclRefExpr {{.+}} <col:10> 'int' lvalue Var {{.+}} 'f' 'int'
-// CHECK-NEXT: `-OMPDeclareTargetDeclAttr {{.+}} <<invalid sloc>> Implicit MT_To
Removed: cfe/trunk/test/Parser/objc-default-ctor-init.mm
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Parser/objc-default-ctor-init.mm?rev=348016&view=auto
==============================================================================
--- cfe/trunk/test/Parser/objc-default-ctor-init.mm (original)
+++ cfe/trunk/test/Parser/objc-default-ctor-init.mm (removed)
@@ -1,21 +0,0 @@
-// RUN: %clang_cc1 -triple x86_64-apple-macosx10.10 -std=c++11 -ast-dump %s | FileCheck %s
-// CHECK: CXXCtorInitializer Field {{.*}} 'ptr' 'void *'
-// CHECK: CXXCtorInitializer Field {{.*}} 'q' 'Q'
-
- at interface NSObject
- at end
-
- at interface I : NSObject
- at end
-
-struct Q { Q(); };
-
-struct S {
- S();
- void *ptr = nullptr;
- Q q;
-};
-
- at implementation I
-S::S() {}
- at end
Removed: cfe/trunk/test/Sema/attr-target-ast.c
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Sema/attr-target-ast.c?rev=348016&view=auto
==============================================================================
--- cfe/trunk/test/Sema/attr-target-ast.c (original)
+++ cfe/trunk/test/Sema/attr-target-ast.c (removed)
@@ -1,5 +0,0 @@
-// RUN: %clang_cc1 -triple x86_64-linux-gnu -ast-dump %s | FileCheck %s
-
-int __attribute__((target("arch=hiss,arch=woof"))) pine_tree() { return 4; }
-// CHECK-NOT: arch=hiss
-// CHECK-NOT: arch=woof
Removed: cfe/trunk/test/Sema/builtins-arm-strex-rettype.c
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Sema/builtins-arm-strex-rettype.c?rev=348016&view=auto
==============================================================================
--- cfe/trunk/test/Sema/builtins-arm-strex-rettype.c (original)
+++ cfe/trunk/test/Sema/builtins-arm-strex-rettype.c (removed)
@@ -1,8 +0,0 @@
-// RUN: %clang_cc1 -triple thumbv7m-apple-darwin-eabi -ast-dump %s | FileCheck %s
-
-// CHECK: CallExpr {{.*}} 'int'
-
-void foo(int a, int *b) {
- do {
- } while (__builtin_arm_strex(a, b));
-}
Removed: cfe/trunk/test/Sema/c-casts.c
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Sema/c-casts.c?rev=348016&view=auto
==============================================================================
--- cfe/trunk/test/Sema/c-casts.c (original)
+++ cfe/trunk/test/Sema/c-casts.c (removed)
@@ -1,25 +0,0 @@
-// RUN: %clang_cc1 -w -ast-dump %s | FileCheck %s
-
-// The cast construction code both for implicit and c-style casts is very
-// different in C vs C++. This file is intended to test the C behavior.
-
-// TODO: add tests covering the rest of the code in
-// Sema::CheckAssignmentConstraints and Sema::PrepareScalarCast
-
-// CHECK-LABEL: FunctionDecl {{.*}} cast_cvr_pointer
-void cast_cvr_pointer(char volatile * __restrict * const * p) {
- char*** x;
- // CHECK: ImplicitCastExpr {{.*}} 'char ***' <NoOp>
- x = p;
- // CHECK: CStyleCastExpr {{.*}} 'char ***' <NoOp>
- x = (char***)p;
-}
-
-// CHECK-LABEL: FunctionDecl {{.*}} cast_pointer_type
-void cast_pointer_type(char *p) {
- void *x;
- // CHECK: ImplicitCastExpr {{.*}} 'void *' <BitCast>
- x = p;
- // CHECK: CStyleCastExpr {{.*}} 'void *' <BitCast>
- x = (void*)p;
-}
Removed: cfe/trunk/test/Sema/implicit-cast-dump.c
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Sema/implicit-cast-dump.c?rev=348016&view=auto
==============================================================================
--- cfe/trunk/test/Sema/implicit-cast-dump.c (original)
+++ cfe/trunk/test/Sema/implicit-cast-dump.c (removed)
@@ -1,15 +0,0 @@
-// RUN: %clang_cc1 -ast-dump %s | FileCheck %s
-
-void foo1(void*);
-void foo2(void* const);
-
-
-void bar() {
- // CHECK: FunctionDecl {{.*}} <line:{{.*}}, line:{{.*}}> line:{{.*}} bar 'void ()'
-
- foo1(0);
- // CHECK: ImplicitCastExpr {{.*}} <col:{{.*}}> 'void *' <NullToPointer>
-
- foo2(0);
- // CHECK: ImplicitCastExpr {{.*}} <col:{{.*}}> 'void *' <NullToPointer>
-}
Removed: cfe/trunk/test/Sema/multistep-explicit-cast.c
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Sema/multistep-explicit-cast.c?rev=348016&view=auto
==============================================================================
--- cfe/trunk/test/Sema/multistep-explicit-cast.c (original)
+++ cfe/trunk/test/Sema/multistep-explicit-cast.c (removed)
@@ -1,70 +0,0 @@
-// RUN: %clang_cc1 -triple x86_64-linux-gnu -fsyntax-only -ast-dump %s | FileCheck %s
-
-// We are checking that implicit casts don't get marked with 'part_of_explicit_cast',
-// while in explicit casts, the implicitly-inserted implicit casts are marked with 'part_of_explicit_cast'
-
-unsigned char implicitcast_0(unsigned int x) {
- // CHECK: FunctionDecl {{.*}} <{{.*}}, line:{{.*}}> line:{{.*}} implicitcast_0 'unsigned char (unsigned int)'{{$}}
- // CHECK: ImplicitCastExpr {{.*}} <col:{{.*}}> 'unsigned char' <IntegralCast>{{$}}
- // CHECK-NEXT: ImplicitCastExpr {{.*}} <col:{{.*}}> 'unsigned int' <LValueToRValue>{{$}}
- // CHECK-NEXT: DeclRefExpr {{.*}} <col:{{.*}}> 'unsigned int' lvalue ParmVar {{.*}} 'x' 'unsigned int'{{$}}
- return x;
-}
-
-signed char implicitcast_1(unsigned int x) {
- // CHECK: FunctionDecl {{.*}} <{{.*}}, line:{{.*}}> line:{{.*}} implicitcast_1 'signed char (unsigned int)'{{$}}
- // CHECK: ImplicitCastExpr {{.*}} <col:{{.*}}> 'signed char' <IntegralCast>{{$}}
- // CHECK-NEXT: ImplicitCastExpr {{.*}} <col:{{.*}}> 'unsigned int' <LValueToRValue>{{$}}
- // CHECK-NEXT: DeclRefExpr {{.*}} <col:{{.*}}> 'unsigned int' lvalue ParmVar {{.*}} 'x' 'unsigned int'{{$}}
- return x;
-}
-
-unsigned char implicitcast_2(signed int x) {
- // CHECK: FunctionDecl {{.*}} <{{.*}}, line:{{.*}}> line:{{.*}} implicitcast_2 'unsigned char (int)'{{$}}
- // CHECK: ImplicitCastExpr {{.*}} <col:{{.*}}> 'unsigned char' <IntegralCast>{{$}}
- // CHECK-NEXT: ImplicitCastExpr {{.*}} <col:{{.*}}> 'int' <LValueToRValue>{{$}}
- // CHECK-NEXT: DeclRefExpr {{.*}} <col:{{.*}}> 'int' lvalue ParmVar {{.*}} 'x' 'int'{{$}}
- return x;
-}
-
-signed char implicitcast_3(signed int x) {
- // CHECK: FunctionDecl {{.*}} <{{.*}}, line:{{.*}}> line:{{.*}} implicitcast_3 'signed char (int)'{{$}}
- // CHECK: ImplicitCastExpr {{.*}} <col:{{.*}}> 'signed char' <IntegralCast>{{$}}
- // CHECK-NEXT: ImplicitCastExpr {{.*}} <col:{{.*}}> 'int' <LValueToRValue>{{$}}
- // CHECK-NEXT: DeclRefExpr {{.*}} <col:{{.*}}> 'int' lvalue ParmVar {{.*}} 'x' 'int'{{$}}
- return x;
-}
-
-//----------------------------------------------------------------------------//
-
-unsigned char cstylecast_0(unsigned int x) {
- // CHECK: FunctionDecl {{.*}} <{{.*}}, line:{{.*}}> line:{{.*}} cstylecast_0 'unsigned char (unsigned int)'{{$}}
- // CHECK: CStyleCastExpr {{.*}} <col:{{.*}}> 'unsigned char' <IntegralCast>{{$}}
- // CHECK-NEXT: ImplicitCastExpr {{.*}} <col:{{.*}}> 'unsigned int' <LValueToRValue> part_of_explicit_cast{{$}}
- // CHECK-NEXT: DeclRefExpr {{.*}} <col:{{.*}}> 'unsigned int' lvalue ParmVar {{.*}} 'x' 'unsigned int'{{$}}
- return (unsigned char)x;
-}
-
-signed char cstylecast_1(unsigned int x) {
- // CHECK: FunctionDecl {{.*}} <{{.*}}, line:{{.*}}> line:{{.*}} cstylecast_1 'signed char (unsigned int)'{{$}}
- // CHECK: CStyleCastExpr {{.*}} <col:{{.*}}> 'signed char' <IntegralCast>{{$}}
- // CHECK-NEXT: ImplicitCastExpr {{.*}} <col:{{.*}}> 'unsigned int' <LValueToRValue> part_of_explicit_cast{{$}}
- // CHECK-NEXT: DeclRefExpr {{.*}} <col:{{.*}}> 'unsigned int' lvalue ParmVar {{.*}} 'x' 'unsigned int'{{$}}
- return (signed char)x;
-}
-
-unsigned char cstylecast_2(signed int x) {
- // CHECK: FunctionDecl {{.*}} <{{.*}}, line:{{.*}}> line:{{.*}} cstylecast_2 'unsigned char (int)'{{$}}
- // CHECK: CStyleCastExpr {{.*}} <col:{{.*}}> 'unsigned char' <IntegralCast>{{$}}
- // CHECK-NEXT: ImplicitCastExpr {{.*}} <col:{{.*}}> 'int' <LValueToRValue> part_of_explicit_cast{{$}}
- // CHECK-NEXT: DeclRefExpr {{.*}} <col:{{.*}}> 'int' lvalue ParmVar {{.*}} 'x' 'int'{{$}}
- return (unsigned char)x;
-}
-
-signed char cstylecast_3(signed int x) {
- // CHECK: FunctionDecl {{.*}} <{{.*}}, line:{{.*}}> line:{{.*}} cstylecast_3 'signed char (int)'{{$}}
- // CHECK: CStyleCastExpr {{.*}} <col:{{.*}}> 'signed char' <IntegralCast>{{$}}
- // CHECK-NEXT: ImplicitCastExpr {{.*}} <col:{{.*}}> 'int' <LValueToRValue> part_of_explicit_cast{{$}}
- // CHECK-NEXT: DeclRefExpr {{.*}} <col:{{.*}}> 'int' lvalue ParmVar {{.*}} 'x' 'int'{{$}}
- return (signed char)x;
-}
Removed: cfe/trunk/test/Sema/rdr6094103-unordered-compare-promote.c
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Sema/rdr6094103-unordered-compare-promote.c?rev=348016&view=auto
==============================================================================
--- cfe/trunk/test/Sema/rdr6094103-unordered-compare-promote.c (original)
+++ cfe/trunk/test/Sema/rdr6094103-unordered-compare-promote.c (removed)
@@ -1,6 +0,0 @@
-// RUN: %clang_cc1 -ast-dump %s 2>&1 | grep ImplicitCastExpr | count 4
-
-int foo (double x, long double y) {
- // There needs to be an implicit cast on x here.
- return __builtin_isgreater(x, y);
-}
Removed: cfe/trunk/test/Sema/variadic-promotion.c
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Sema/variadic-promotion.c?rev=348016&view=auto
==============================================================================
--- cfe/trunk/test/Sema/variadic-promotion.c (original)
+++ cfe/trunk/test/Sema/variadic-promotion.c (removed)
@@ -1,13 +0,0 @@
-// RUN: %clang_cc1 -ast-dump %s | FileCheck %s
-
-void variadic(int, ...);
-
-void test_floating_promotion(__fp16 *f16, float f32, double f64) {
- variadic(3, *f16, f32, f64);
-
-// CHECK: ImplicitCastExpr {{.*}} 'double' <FloatingCast>
-// CHECK-NEXT: '__fp16'
-
-// CHECK: ImplicitCastExpr {{.*}} 'double' <FloatingCast>
-// CHECK-NEXT: 'float'
-}
Removed: cfe/trunk/test/SemaCXX/auto-pragma.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/SemaCXX/auto-pragma.cpp?rev=348016&view=auto
==============================================================================
--- cfe/trunk/test/SemaCXX/auto-pragma.cpp (original)
+++ cfe/trunk/test/SemaCXX/auto-pragma.cpp (removed)
@@ -1,12 +0,0 @@
-// RUN: %clang_cc1 -fsyntax-only %s -std=c++11 -ast-dump -ast-dump-filter AutoVar | FileCheck %s
-
-namespace {
- class foo {
- };
-}
-
-#pragma GCC visibility push(hidden)
-auto AutoVar = foo();
-
-// CHECK: VarDecl {{.*}} AutoVar
-// CHECK-NOT: VisibilityAttr
Removed: cfe/trunk/test/SemaCXX/coroutine-source-location-crash.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/SemaCXX/coroutine-source-location-crash.cpp?rev=348016&view=auto
==============================================================================
--- cfe/trunk/test/SemaCXX/coroutine-source-location-crash.cpp (original)
+++ cfe/trunk/test/SemaCXX/coroutine-source-location-crash.cpp (removed)
@@ -1,33 +0,0 @@
-// RUN: %clang_cc1 -triple x86_64-apple-darwin9 %s -std=c++14 -fcoroutines-ts \
-// RUN: -fsyntax-only -ast-dump | FileCheck %s
-#include "Inputs/std-coroutine.h"
-
-using namespace std::experimental;
-
-struct A {
- bool await_ready();
- void await_resume();
- template <typename F>
- void await_suspend(F);
-};
-
-struct coro_t {
- struct promise_type {
- coro_t get_return_object();
- suspend_never initial_suspend();
- suspend_never final_suspend();
- void return_void();
- static void unhandled_exception();
- };
-};
-
-// {{0x[0-9a-fA-F]+}} <line:[[@LINE+1]]:1, col:36>
-// CHECK-LABEL: FunctionDecl {{.*}} f 'coro_t (int)'
-coro_t f(int n) {
- A a{};
- // CHECK: CoawaitExpr {{0x[0-9a-fA-F]+}} <col:3, col:12>
- // CHECK-NEXT: DeclRefExpr {{0x[0-9a-fA-F]+}} <col:12>
- // CHECK-NEXT: CXXMemberCallExpr {{0x[0-9a-fA-F]+}} <col:12>
- // CHECK-NEXT: MemberExpr {{0x[0-9a-fA-F]+}} <col:12>
- co_await a;
-}
Removed: cfe/trunk/test/SemaCXX/multistep-explicit-cast.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/SemaCXX/multistep-explicit-cast.cpp?rev=348016&view=auto
==============================================================================
--- cfe/trunk/test/SemaCXX/multistep-explicit-cast.cpp (original)
+++ cfe/trunk/test/SemaCXX/multistep-explicit-cast.cpp (removed)
@@ -1,155 +0,0 @@
-// RUN: %clang_cc1 -triple x86_64-linux-gnu -fsyntax-only -ast-dump %s | FileCheck %s
-
-// We are checking that implicit casts don't get marked with 'part_of_explicit_cast',
-// while in explicit casts, the implicitly-inserted implicit casts are marked with 'part_of_explicit_cast'
-
-unsigned char implicitcast_0(unsigned int x) {
- // CHECK: FunctionDecl {{.*}} <{{.*}}, line:{{.*}}> line:{{.*}} implicitcast_0 'unsigned char (unsigned int)'{{$}}
- // CHECK: ImplicitCastExpr {{.*}} <col:{{.*}}> 'unsigned char' <IntegralCast>{{$}}
- // CHECK-NEXT: ImplicitCastExpr {{.*}} <col:{{.*}}> 'unsigned int' <LValueToRValue>{{$}}
- // CHECK-NEXT: DeclRefExpr {{.*}} <col:{{.*}}> 'unsigned int' lvalue ParmVar {{.*}} 'x' 'unsigned int'{{$}}
- return x;
-}
-
-signed char implicitcast_1(unsigned int x) {
- // CHECK: FunctionDecl {{.*}} <{{.*}}, line:{{.*}}> line:{{.*}} implicitcast_1 'signed char (unsigned int)'{{$}}
- // CHECK: ImplicitCastExpr {{.*}} <col:{{.*}}> 'signed char' <IntegralCast>{{$}}
- // CHECK-NEXT: ImplicitCastExpr {{.*}} <col:{{.*}}> 'unsigned int' <LValueToRValue>{{$}}
- // CHECK-NEXT: DeclRefExpr {{.*}} <col:{{.*}}> 'unsigned int' lvalue ParmVar {{.*}} 'x' 'unsigned int'{{$}}
- return x;
-}
-
-unsigned char implicitcast_2(signed int x) {
- // CHECK: FunctionDecl {{.*}} <{{.*}}, line:{{.*}}> line:{{.*}} implicitcast_2 'unsigned char (int)'{{$}}
- // CHECK: ImplicitCastExpr {{.*}} <col:{{.*}}> 'unsigned char' <IntegralCast>{{$}}
- // CHECK-NEXT: ImplicitCastExpr {{.*}} <col:{{.*}}> 'int' <LValueToRValue>{{$}}
- // CHECK-NEXT: DeclRefExpr {{.*}} <col:{{.*}}> 'int' lvalue ParmVar {{.*}} 'x' 'int'{{$}}
- return x;
-}
-
-signed char implicitcast_3(signed int x) {
- // CHECK: FunctionDecl {{.*}} <{{.*}}, line:{{.*}}> line:{{.*}} implicitcast_3 'signed char (int)'{{$}}
- // CHECK: ImplicitCastExpr {{.*}} <col:{{.*}}> 'signed char' <IntegralCast>{{$}}
- // CHECK-NEXT: ImplicitCastExpr {{.*}} <col:{{.*}}> 'int' <LValueToRValue>{{$}}
- // CHECK-NEXT: DeclRefExpr {{.*}} <col:{{.*}}> 'int' lvalue ParmVar {{.*}} 'x' 'int'{{$}}
- return x;
-}
-
-//----------------------------------------------------------------------------//
-
-unsigned char cstylecast_0(unsigned int x) {
- // CHECK: FunctionDecl {{.*}} <{{.*}}, line:{{.*}}> line:{{.*}} cstylecast_0 'unsigned char (unsigned int)'{{$}}
- // CHECK: CStyleCastExpr {{.*}} <col:{{.*}}> 'unsigned char' <NoOp>{{$}}
- // CHECK-NEXT: ImplicitCastExpr {{.*}} <col:{{.*}}> 'unsigned char' <IntegralCast> part_of_explicit_cast{{$}}
- // CHECK-NEXT: ImplicitCastExpr {{.*}} <col:{{.*}}> 'unsigned int' <LValueToRValue> part_of_explicit_cast{{$}}
- // CHECK-NEXT: DeclRefExpr {{.*}} <col:{{.*}}> 'unsigned int' lvalue ParmVar {{.*}} 'x' 'unsigned int'{{$}}
- return (unsigned char)x;
-}
-
-signed char cstylecast_1(unsigned int x) {
- // CHECK: FunctionDecl {{.*}} <{{.*}}, line:{{.*}}> line:{{.*}} cstylecast_1 'signed char (unsigned int)'{{$}}
- // CHECK: CStyleCastExpr {{.*}} <col:{{.*}}> 'signed char' <NoOp>{{$}}
- // CHECK-NEXT: ImplicitCastExpr {{.*}} <col:{{.*}}> 'signed char' <IntegralCast> part_of_explicit_cast{{$}}
- // CHECK-NEXT: ImplicitCastExpr {{.*}} <col:{{.*}}> 'unsigned int' <LValueToRValue> part_of_explicit_cast{{$}}
- // CHECK-NEXT: DeclRefExpr {{.*}} <col:{{.*}}> 'unsigned int' lvalue ParmVar {{.*}} 'x' 'unsigned int'{{$}}
- return (signed char)x;
-}
-
-unsigned char cstylecast_2(signed int x) {
- // CHECK: FunctionDecl {{.*}} <{{.*}}, line:{{.*}}> line:{{.*}} cstylecast_2 'unsigned char (int)'{{$}}
- // CHECK: CStyleCastExpr {{.*}} <col:{{.*}}> 'unsigned char' <NoOp>{{$}}
- // CHECK-NEXT: ImplicitCastExpr {{.*}} <col:{{.*}}> 'unsigned char' <IntegralCast> part_of_explicit_cast{{$}}
- // CHECK-NEXT: ImplicitCastExpr {{.*}} <col:{{.*}}> 'int' <LValueToRValue> part_of_explicit_cast{{$}}
- // CHECK-NEXT: DeclRefExpr {{.*}} <col:{{.*}}> 'int' lvalue ParmVar {{.*}} 'x' 'int'{{$}}
- return (unsigned char)x;
-}
-
-signed char cstylecast_3(signed int x) {
- // CHECK: FunctionDecl {{.*}} <{{.*}}, line:{{.*}}> line:{{.*}} cstylecast_3 'signed char (int)'{{$}}
- // CHECK: CStyleCastExpr {{.*}} <col:{{.*}}> 'signed char' <NoOp>{{$}}
- // CHECK-NEXT: ImplicitCastExpr {{.*}} <col:{{.*}}> 'signed char' <IntegralCast> part_of_explicit_cast{{$}}
- // CHECK-NEXT: ImplicitCastExpr {{.*}} <col:{{.*}}> 'int' <LValueToRValue> part_of_explicit_cast{{$}}
- // CHECK-NEXT: DeclRefExpr {{.*}} <col:{{.*}}> 'int' lvalue ParmVar {{.*}} 'x' 'int'{{$}}
- return (signed char)x;
-}
-
-//----------------------------------------------------------------------------//
-
-unsigned char cxxstaticcast_0(unsigned int x) {
- // CHECK: FunctionDecl {{.*}} <{{.*}}, line:{{.*}}> line:{{.*}} cxxstaticcast_0 'unsigned char (unsigned int)'{{$}}
- // CHECK: CXXStaticCastExpr {{.*}} <col:{{.*}}> 'unsigned char' static_cast<unsigned char> <NoOp>{{$}}
- // CHECK-NEXT: ImplicitCastExpr {{.*}} <col:{{.*}}> 'unsigned char' <IntegralCast> part_of_explicit_cast{{$}}
- // CHECK-NEXT: ImplicitCastExpr {{.*}} <col:{{.*}}> 'unsigned int' <LValueToRValue> part_of_explicit_cast{{$}}
- // CHECK-NEXT: DeclRefExpr {{.*}} <col:{{.*}}> 'unsigned int' lvalue ParmVar {{.*}} 'x' 'unsigned int'{{$}}
- return static_cast<unsigned char>(x);
-}
-
-signed char cxxstaticcast_1(unsigned int x) {
- // CHECK: FunctionDecl {{.*}} <{{.*}}, line:{{.*}}> line:{{.*}} cxxstaticcast_1 'signed char (unsigned int)'{{$}}
- // CHECK: CXXStaticCastExpr {{.*}} <col:{{.*}}> 'signed char' static_cast<signed char> <NoOp>{{$}}
- // CHECK-NEXT: ImplicitCastExpr {{.*}} <col:{{.*}}> 'signed char' <IntegralCast> part_of_explicit_cast{{$}}
- // CHECK-NEXT: ImplicitCastExpr {{.*}} <col:{{.*}}> 'unsigned int' <LValueToRValue> part_of_explicit_cast{{$}}
- // CHECK-NEXT: DeclRefExpr {{.*}} <col:{{.*}}> 'unsigned int' lvalue ParmVar {{.*}} 'x' 'unsigned int'{{$}}
- return static_cast<signed char>(x);
-}
-
-unsigned char cxxstaticcast_2(signed int x) {
- // CHECK: FunctionDecl {{.*}} <{{.*}}, line:{{.*}}> line:{{.*}} cxxstaticcast_2 'unsigned char (int)'{{$}}
- // CHECK: CXXStaticCastExpr {{.*}} <col:{{.*}}> 'unsigned char' static_cast<unsigned char> <NoOp>{{$}}
- // CHECK-NEXT: ImplicitCastExpr {{.*}} <col:{{.*}}> 'unsigned char' <IntegralCast> part_of_explicit_cast{{$}}
- // CHECK-NEXT: ImplicitCastExpr {{.*}} <col:{{.*}}> 'int' <LValueToRValue> part_of_explicit_cast{{$}}
- // CHECK-NEXT: DeclRefExpr {{.*}} <col:{{.*}}> 'int' lvalue ParmVar {{.*}} 'x' 'int'{{$}}
- return static_cast<unsigned char>(x);
-}
-
-signed char cxxstaticcast_3(signed int x) {
- // CHECK: FunctionDecl {{.*}} <{{.*}}, line:{{.*}}> line:{{.*}} cxxstaticcast_3 'signed char (int)'{{$}}
- // CHECK: CXXStaticCastExpr {{.*}} <col:{{.*}}> 'signed char' static_cast<signed char> <NoOp>{{$}}
- // CHECK-NEXT: ImplicitCastExpr {{.*}} <col:{{.*}}> 'signed char' <IntegralCast> part_of_explicit_cast{{$}}
- // CHECK-NEXT: ImplicitCastExpr {{.*}} <col:{{.*}}> 'int' <LValueToRValue> part_of_explicit_cast{{$}}
- // CHECK-NEXT: DeclRefExpr {{.*}} <col:{{.*}}> 'int' lvalue ParmVar {{.*}} 'x' 'int'{{$}}
- return static_cast<signed char>(x);
-}
-
-//----------------------------------------------------------------------------//
-
-using UnsignedChar = unsigned char;
-using SignedChar = signed char;
-using UnsignedInt = unsigned int;
-using SignedInt = signed int;
-
-UnsignedChar cxxfunctionalcast_0(UnsignedInt x) {
- // CHECK: FunctionDecl {{.*}} <{{.*}}, line:{{.*}}> line:{{.*}} cxxfunctionalcast_0 'UnsignedChar (UnsignedInt)'{{$}}
- // CHECK: CXXFunctionalCastExpr {{.*}} <col:{{.*}}> 'UnsignedChar':'unsigned char' functional cast to UnsignedChar <NoOp>{{$}}
- // CHECK-NEXT: ImplicitCastExpr {{.*}} <col:{{.*}}> 'UnsignedChar':'unsigned char' <IntegralCast> part_of_explicit_cast{{$}}
- // CHECK-NEXT: ImplicitCastExpr {{.*}} <col:{{.*}}> 'UnsignedInt':'unsigned int' <LValueToRValue> part_of_explicit_cast{{$}}
- // CHECK-NEXT: DeclRefExpr {{.*}} <col:{{.*}}> 'UnsignedInt':'unsigned int' lvalue ParmVar {{.*}} 'x' 'UnsignedInt':'unsigned int'{{$}}
- return UnsignedChar(x);
-}
-
-SignedChar cxxfunctionalcast_1(UnsignedInt x) {
- // CHECK: FunctionDecl {{.*}} <{{.*}}, line:{{.*}}> line:{{.*}} cxxfunctionalcast_1 'SignedChar (UnsignedInt)'{{$}}
- // CHECK: CXXFunctionalCastExpr {{.*}} <col:{{.*}}> 'SignedChar':'signed char' functional cast to SignedChar <NoOp>{{$}}
- // CHECK-NEXT: ImplicitCastExpr {{.*}} <col:{{.*}}> 'SignedChar':'signed char' <IntegralCast> part_of_explicit_cast{{$}}
- // CHECK-NEXT: ImplicitCastExpr {{.*}} <col:{{.*}}> 'UnsignedInt':'unsigned int' <LValueToRValue> part_of_explicit_cast{{$}}
- // CHECK-NEXT: DeclRefExpr {{.*}} <col:{{.*}}> 'UnsignedInt':'unsigned int' lvalue ParmVar {{.*}} 'x' 'UnsignedInt':'unsigned int'{{$}}
- return SignedChar(x);
-}
-
-UnsignedChar cxxfunctionalcast_2(SignedInt x) {
- // CHECK: FunctionDecl {{.*}} <{{.*}}, line:{{.*}}> line:{{.*}} cxxfunctionalcast_2 'UnsignedChar (SignedInt)'{{$}}
- // CHECK: CXXFunctionalCastExpr {{.*}} <col:{{.*}}> 'UnsignedChar':'unsigned char' functional cast to UnsignedChar <NoOp>{{$}}
- // CHECK-NEXT: ImplicitCastExpr {{.*}} <col:{{.*}}> 'UnsignedChar':'unsigned char' <IntegralCast> part_of_explicit_cast{{$}}
- // CHECK-NEXT: ImplicitCastExpr {{.*}} <col:{{.*}}> 'SignedInt':'int' <LValueToRValue> part_of_explicit_cast{{$}}
- // CHECK-NEXT: DeclRefExpr {{.*}} <col:{{.*}}> 'SignedInt':'int' lvalue ParmVar {{.*}} 'x' 'SignedInt':'int'{{$}}
- return UnsignedChar(x);
-}
-
-SignedChar cxxfunctionalcast_3(SignedInt x) {
- // CHECK: FunctionDecl {{.*}} <{{.*}}, line:{{.*}}> line:{{.*}} cxxfunctionalcast_3 'SignedChar (SignedInt)'{{$}}
- // CHECK: CXXFunctionalCastExpr {{.*}} <col:{{.*}}> 'SignedChar':'signed char' functional cast to SignedChar <NoOp>{{$}}
- // CHECK-NEXT: ImplicitCastExpr {{.*}} <col:{{.*}}> 'SignedChar':'signed char' <IntegralCast> part_of_explicit_cast{{$}}
- // CHECK-NEXT: ImplicitCastExpr {{.*}} <col:{{.*}}> 'SignedInt':'int' <LValueToRValue> part_of_explicit_cast{{$}}
- // CHECK-NEXT: DeclRefExpr {{.*}} <col:{{.*}}> 'SignedInt':'int' lvalue ParmVar {{.*}} 'x' 'SignedInt':'int'{{$}}
- return SignedChar(x);
-}
Removed: cfe/trunk/test/SemaCXX/sourceranges.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/SemaCXX/sourceranges.cpp?rev=348016&view=auto
==============================================================================
--- cfe/trunk/test/SemaCXX/sourceranges.cpp (original)
+++ cfe/trunk/test/SemaCXX/sourceranges.cpp (removed)
@@ -1,146 +0,0 @@
-// RUN: %clang_cc1 -triple i686-mingw32 -ast-dump %s | FileCheck %s
-// RUN: %clang_cc1 -triple i686-mingw32 -std=c++1z -ast-dump %s | FileCheck %s -check-prefix=CHECK-1Z
-
-template<class T>
-class P {
- public:
- P(T* t) {}
-};
-
-namespace foo {
-class A { public: A(int = 0) {} };
-enum B {};
-typedef int C;
-}
-
-// CHECK: VarDecl {{0x[0-9a-fA-F]+}} <line:[[@LINE+1]]:1, col:36> col:15 ImplicitConstrArray 'foo::A [2]'
-static foo::A ImplicitConstrArray[2];
-
-int main() {
- // CHECK: CXXNewExpr {{0x[0-9a-fA-F]+}} <col:19, col:28> 'foo::A *'
- P<foo::A> p14 = new foo::A;
- // CHECK: CXXNewExpr {{0x[0-9a-fA-F]+}} <col:19, col:28> 'foo::B *'
- P<foo::B> p24 = new foo::B;
- // CHECK: CXXNewExpr {{0x[0-9a-fA-F]+}} <col:19, col:28> 'foo::C *'
- P<foo::C> pr4 = new foo::C;
-}
-
-foo::A getName() {
- // CHECK: CXXConstructExpr {{0x[0-9a-fA-F]+}} <col:10, col:17> 'foo::A'
- return foo::A();
-}
-
-void destruct(foo::A *a1, foo::A *a2, P<int> *p1) {
- // CHECK: MemberExpr {{0x[0-9a-fA-F]+}} <col:3, col:8> '<bound member function type>' ->~A
- a1->~A();
- // CHECK: MemberExpr {{0x[0-9a-fA-F]+}} <col:3, col:16> '<bound member function type>' ->~A
- a2->foo::A::~A();
- // CHECK: MemberExpr {{0x[0-9a-fA-F]+}} <col:3, col:13> '<bound member function type>' ->~P
- p1->~P<int>();
-}
-
-struct D {
- D(int);
- ~D();
-};
-
-void construct() {
- using namespace foo;
- A a = A(12);
- // CHECK: CXXConstructExpr {{0x[0-9a-fA-F]+}} <col:9, col:13> 'foo::A' 'void (int){{( __attribute__\(\(thiscall\)\))?}}'
- D d = D(12);
- // CHECK: CXXConstructExpr {{0x[0-9a-fA-F]+}} <col:9, col:13> 'D' 'void (int){{( __attribute__\(\(thiscall\)\))?}}'
-}
-
-namespace PR38987 {
-struct A { A(); };
-template <class T> void f() { T{}; }
-template void f<A>();
-// CHECK: CXXTemporaryObjectExpr {{.*}} <col:31, col:33> 'PR38987::A':'PR38987::A'
-}
-
-void abort() __attribute__((noreturn));
-
-namespace std {
-typedef decltype(sizeof(int)) size_t;
-
-template <typename E> struct initializer_list {
- const E *p;
- size_t n;
- initializer_list(const E *p, size_t n) : p(p), n(n) {}
-};
-
-template <typename F, typename S> struct pair {
- F f;
- S s;
- pair(const F &f, const S &s) : f(f), s(s) {}
-};
-
-struct string {
- const char *str;
- string() { abort(); }
- string(const char *S) : str(S) {}
- ~string() { abort(); }
-};
-
-template<typename K, typename V>
-struct map {
- using T = pair<K, V>;
- map(initializer_list<T> i, const string &s = string()) {}
- ~map() { abort(); }
-};
-
-}; // namespace std
-
-#if __cplusplus >= 201703L
-// CHECK-1Z: FunctionDecl {{.*}} construct_with_init_list
-std::map<int, int> construct_with_init_list() {
- // CHECK-1Z-NEXT: CompoundStmt
- // CHECK-1Z-NEXT: ReturnStmt {{.*}} <line:[[@LINE+5]]:3, col:35
- // CHECK-1Z-NEXT: ExprWithCleanups {{.*}} <col:10, col:35
- // CHECK-1Z-NEXT: CXXBindTemporaryExpr {{.*}} <col:10, col:35
- // CHECK-1Z-NEXT: CXXTemporaryObjectExpr {{.*}} <col:10, col:35
- // CHECK-1Z-NEXT: CXXStdInitializerListExpr {{.*}} <col:28, col:35
- return std::map<int, int>{{0, 0}};
-}
-
-// CHECK-1Z: NamespaceDecl {{.*}} in_class_init
-namespace in_class_init {
- struct A {};
-
- // CHECK-1Z: CXXRecordDecl {{.*}} struct B definition
- struct B {
- // CHECK-1Z: FieldDecl {{.*}} a 'in_class_init::A'
- // CHECK-1Z-NEXT: InitListExpr {{.*}} <col:11, col:12
- A a = {};
- };
-}
-
-// CHECK-1Z: NamespaceDecl {{.*}} delegating_constructor_init
-namespace delegating_constructor_init {
- struct A {};
-
- struct B : A {
- A a;
- B(A a) : a(a) {}
- };
-
- // CHECK-1Z: CXXRecordDecl {{.*}} struct C definition
- struct C : B {
- // CHECK-1Z: CXXConstructorDecl {{.*}} C
- // CHECK-1Z-NEXT: CXXCtorInitializer 'delegating_constructor_init::B'
- // CHECK-1Z-NEXT: CXXConstructExpr {{.*}} <col:11, col:15
- // CHECK-1Z-NEXT: InitListExpr {{.*}} <col:13, col:14
- C() : B({}) {};
- };
-}
-
-// CHECK-1Z: NamespaceDecl {{.*}} new_init
-namespace new_init {
- void A() {
- // CHECK-1Z: CXXNewExpr {{.*}} <line:[[@LINE+2]]:5, col:14
- // CHECK-1Z-NEXT: InitListExpr {{.*}} <col:12, col:14
- new int{0};
- }
-}
-#endif
Removed: cfe/trunk/test/SemaCXX/template-implicit-vars.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/SemaCXX/template-implicit-vars.cpp?rev=348016&view=auto
==============================================================================
--- cfe/trunk/test/SemaCXX/template-implicit-vars.cpp (original)
+++ cfe/trunk/test/SemaCXX/template-implicit-vars.cpp (removed)
@@ -1,14 +0,0 @@
-// RUN: %clang_cc1 -fsyntax-only %s -std=c++11 -ast-dump | FileCheck %s
-template<typename T>
-void f(T t) {
- T a[] = {t};
- for (auto x : a) {}
-}
-
-void g() {
- f(1);
-}
-// CHECK: VarDecl {{.*}} implicit used __range
-// CHECK: VarDecl {{.*}} implicit used __range
-// CHECK: VarDecl {{.*}} implicit used __begin
-// CHECK: VarDecl {{.*}} implicit used __end
Removed: cfe/trunk/test/SemaObjC/bool-type.m
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/SemaObjC/bool-type.m?rev=348016&view=auto
==============================================================================
--- cfe/trunk/test/SemaObjC/bool-type.m (original)
+++ cfe/trunk/test/SemaObjC/bool-type.m (removed)
@@ -1,12 +0,0 @@
-// RUN: %clang_cc1 -triple thumbv7s-apple-ios8.0 -ast-dump "%s" 2>&1 | FileCheck %s --check-prefix CHECK-CHAR
-// RUN: %clang_cc1 -triple thumbv7k-apple-watchos2.0 -ast-dump "%s" 2>&1 | FileCheck %s --check-prefix CHECK-BOOL
-// RUN: %clang_cc1 -triple i386-apple-watchos2.0 -ast-dump "%s" 2>&1 | FileCheck %s --check-prefix CHECK-BOOL
-// RUN: %clang_cc1 -triple arm64-apple-ios8.0 -ast-dump "%s" 2>&1 | FileCheck %s --check-prefix CHECK-BOOL
-// RUN: %clang_cc1 -triple x86_64-apple-ios8.0 -ast-dump "%s" 2>&1 | FileCheck %s --check-prefix CHECK-BOOL
-// RUN: %clang_cc1 -triple i386-apple-macosx10.10 -ast-dump "%s" 2>&1 | FileCheck %s --check-prefix CHECK-CHAR
-// RUN: %clang_cc1 -triple x86_64-apple-macosx10.10 -ast-dump "%s" 2>&1 | FileCheck %s --check-prefix CHECK-CHAR
-
-// CHECK-CHAR: ObjCBoolLiteralExpr {{.*}} 'signed char' __objc_yes
-// CHECK-BOOL: ObjCBoolLiteralExpr {{.*}} '_Bool' __objc_yes
-
-int var = __objc_yes;
Removed: cfe/trunk/test/SemaObjC/category-attribute.m
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/SemaObjC/category-attribute.m?rev=348016&view=auto
==============================================================================
--- cfe/trunk/test/SemaObjC/category-attribute.m (original)
+++ cfe/trunk/test/SemaObjC/category-attribute.m (removed)
@@ -1,23 +0,0 @@
-// RUN: %clang_cc1 -fsyntax-only -verify %s
-// RUN: %clang_cc1 -fsyntax-only -ast-dump %s | FileCheck %s
-// expected-no-diagnostics
-
-__attribute__ ((external_source_symbol(language= "Swift", defined_in="A")))
- at interface TestInterface
- at end
-// CHECK: ObjCInterfaceDecl {{.*}} TestInterface
-// CHECK-NEXT: ExternalSourceSymbolAttr
-
-__attribute__ ((external_source_symbol(language= "Swift", defined_in="B")))
- at interface TestInterface ()
- at end
-// CHECK: ObjCCategoryDecl
-// CHECK-NEXT: ObjCInterface
-// CHECK-NEXT: ExternalSourceSymbolAttr {{.*}} "Swift" "B"
-
-__attribute__ ((external_source_symbol(language= "Swift", defined_in="C")))
- at interface TestInterface (Category)
- at end
-// CHECK: ObjCCategoryDecl
-// CHECK-NEXT: ObjCInterface
-// CHECK-NEXT: ExternalSourceSymbolAttr {{.*}} "Swift" "C"
Removed: cfe/trunk/test/SemaObjC/finally-msvc.m
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/SemaObjC/finally-msvc.m?rev=348016&view=auto
==============================================================================
--- cfe/trunk/test/SemaObjC/finally-msvc.m (original)
+++ cfe/trunk/test/SemaObjC/finally-msvc.m (removed)
@@ -1,14 +0,0 @@
-// RUN: %clang_cc1 -triple i686--windows-msvc -fexceptions -fobjc-exceptions -ast-dump %s 2>&1 | FileCheck %s
-// RUN: %clang_cc1 -triple x86_64--windows-msvc -fexceptions -fobjc-exceptions -ast-dump %s 2>&1 | FileCheck %s
-
-void f() {
- @try {
- } @finally {
- }
-}
-
-// CHECK: ObjCAtFinallyStmt
-// CHECK-NEXT: CapturedStmt
-// CHECK-NEXT: CapturedDecl
-// CHECK-NEXT: CompoundStmt
-// CHECK-NEXT: ImplicitParamDecl
Removed: cfe/trunk/test/SemaObjC/foreachtemplatized.mm
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/SemaObjC/foreachtemplatized.mm?rev=348016&view=auto
==============================================================================
--- cfe/trunk/test/SemaObjC/foreachtemplatized.mm (original)
+++ cfe/trunk/test/SemaObjC/foreachtemplatized.mm (removed)
@@ -1,15 +0,0 @@
-// RUN: %clang_cc1 -fsyntax-only -fobjc-arc -Wno-objc-root-class -std=c++11 -ast-dump %s | FileCheck %s
-
-// CHECK-NOT: ImplicitValueInitExpr
-
- at interface I
- at end
-
-template <typename T>
-void decode(I *p) {
- for (I *k in p) {}
-}
-
-void decode(I *p) {
- decode<int>(p);
-}
Removed: cfe/trunk/test/SemaObjC/property-atomic-bool.m
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/SemaObjC/property-atomic-bool.m?rev=348016&view=auto
==============================================================================
--- cfe/trunk/test/SemaObjC/property-atomic-bool.m (original)
+++ cfe/trunk/test/SemaObjC/property-atomic-bool.m (removed)
@@ -1,61 +0,0 @@
-// RUN: %clang_cc1 -triple x86_64-apple-macosx10.10 -ast-dump "%s" | FileCheck %s
-
-// CHECK: TypedefDecl {{.*}} referenced AtomicBool '_Atomic(_Bool)'
-// CHECK: AtomicType {{.*}} '_Atomic(_Bool)'
-// CHECK: BuiltinType {{.*}} '_Bool'
-// CHECK: ObjCInterfaceDecl {{.*}} A0
-// CHECK: ObjCPropertyDecl {{.*}} p '_Atomic(_Bool)' {{.*}} nonatomic
-// CHECK: ObjCMethodDecl {{.*}} implicit - p '_Bool'
-// CHECK: ObjCMethodDecl {{.*}} implicit - setP: 'void'
-// CHECK: ParmVarDecl {{.*}} p '_Bool'
-// CHECK: ObjCInterfaceDecl {{.*}} A1
-// CHECK: ObjCPropertyDecl {{.*}} p 'AtomicBool':'_Atomic(_Bool)' {{.*}} nonatomic
-// CHECK: ObjCMethodDecl {{.*}} implicit - p '_Bool'
-// CHECK: ObjCMethodDecl {{.*}} implicit - setP: 'void'
-// CHECK: ParmVarDecl {{.*}} p '_Bool'
-// CHECK: ObjCInterfaceDecl {{.*}} A2
-// CHECK: ObjCIvarDecl {{.*}} p '_Atomic(_Bool)' protected
-// CHECK: ObjCPropertyDecl {{.*}} p '_Atomic(_Bool)'
-// CHECK: ObjCMethodDecl {{.*}} implicit - p '_Bool'
-// CHECK: ObjCMethodDecl {{.*}} implicit - setP: 'void'
-// CHECK: ParmVarDecl {{.*}} p '_Bool'
-// CHECK: ObjCInterfaceDecl {{.*}} A3
-// CHECK: ObjCIvarDecl {{.*}} p 'AtomicBool':'_Atomic(_Bool)' protected
-// CHECK: ObjCPropertyDecl {{.*}} p 'AtomicBool':'_Atomic(_Bool)'
-// CHECK: ObjCMethodDecl {{.*}} implicit - p '_Bool'
-// CHECK: ObjCMethodDecl {{.*}} implicit - setP: 'void'
-// CHECK: ParmVarDecl {{.*}} p '_Bool'
-
-typedef _Atomic(_Bool) AtomicBool;
-
- at interface A0
- at property(nonatomic) _Atomic(_Bool) p;
- at end
- at implementation A0
- at end
-
- at interface A1
- at property(nonatomic) AtomicBool p;
- at end
- at implementation A1
- at end
-
- at interface A2 {
- _Atomic(_Bool) p;
-}
- at property _Atomic(_Bool) p;
- at end
-
- at implementation A2
- at synthesize p;
- at end
-
- at interface A3 {
- AtomicBool p;
-}
- at property AtomicBool p;
- at end
-
- at implementation A3
- at synthesize p;
- at end
More information about the cfe-commits
mailing list