forked from OSchip/llvm-project
[clang][test][NFC] Also test for serialization in AST dump tests, part 1/n.
The outputs between the direct ast-dump test and the ast-dump test after deserialization should match modulo a few differences. For hand-written tests, strip the "<undeserialized declarations>"s and the "imported"s with sed. For tests generated with "make-ast-dump-check.sh", regenerate the output. Part 1/n.
This commit is contained in:
parent
70f952bebe
commit
d3b752845d
|
@ -1,4 +1,11 @@
|
|||
// RUN: %clang_cc1 -triple x86_64-unknown-unknown -ast-dump %s | FileCheck -strict-whitespace %s
|
||||
// Test without serialization:
|
||||
// RUN: %clang_cc1 -triple x86_64-unknown-unknown -ast-dump %s \
|
||||
// RUN: | FileCheck -strict-whitespace %s
|
||||
//
|
||||
// Test with serialization:
|
||||
// RUN: %clang_cc1 -triple x86_64-unknown-unknown -emit-pch -o %t %s
|
||||
// RUN: %clang_cc1 -x c++ -triple x86_64-unknown-unknown -include-pch %t -ast-dump-all /dev/null \
|
||||
// RUN: | FileCheck -strict-whitespace %s
|
||||
|
||||
enum E {};
|
||||
void operator+(E,E);
|
||||
|
@ -9,19 +16,26 @@ void test() {
|
|||
e + e;
|
||||
e , e;
|
||||
}
|
||||
// CHECK: TranslationUnitDecl {{.*}} <<invalid sloc>> <invalid sloc>
|
||||
// CHECK: `-FunctionDecl {{.*}} <line:7:1, line:11:1> line:7:6 test 'void ()'
|
||||
// CHECK-NEXT: `-CompoundStmt {{.*}} <col:13, line:11:1>
|
||||
// CHECK-NEXT: |-DeclStmt {{.*}} <line:8:3, col:6>
|
||||
// CHECK-NEXT: | `-VarDecl {{.*}} <col:3, col:5> col:5 used e 'E'
|
||||
// CHECK-NEXT: |-CXXOperatorCallExpr {{.*}} <line:9:3, col:7> 'void' '+'
|
||||
// CHECK: TranslationUnitDecl {{.*}} <<invalid sloc>> <invalid sloc>{{( <undeserialized declarations>)?}}
|
||||
// CHECK: |-EnumDecl {{.*}} <{{.*}}ast-dump-overloaded-operators.cpp:10:1, col:9> col:6{{( imported)?}} referenced E
|
||||
// CHECK-NEXT: |-FunctionDecl {{.*}} <line:11:1, col:19> col:6{{( imported)?}} used operator+ 'void (E, E)'
|
||||
// CHECK-NEXT: | |-ParmVarDecl {{.*}} <col:16> col:17{{( imported)?}} 'E'
|
||||
// CHECK-NEXT: | `-ParmVarDecl {{.*}} <col:18> col:19{{( imported)?}} 'E'
|
||||
// CHECK-NEXT: |-FunctionDecl {{.*}} <line:12:1, col:19> col:6{{( imported)?}} used operator, 'void (E, E)'
|
||||
// CHECK-NEXT: | |-ParmVarDecl {{.*}} <col:16> col:17{{( imported)?}} 'E'
|
||||
// CHECK-NEXT: | `-ParmVarDecl {{.*}} <col:18> col:19{{( imported)?}} 'E'
|
||||
// CHECK-NEXT: `-FunctionDecl {{.*}} <line:14:1, line:18:1> line:14:6{{( imported)?}} test 'void ()'
|
||||
// CHECK-NEXT: `-CompoundStmt {{.*}} <col:13, line:18:1>
|
||||
// CHECK-NEXT: |-DeclStmt {{.*}} <line:15:3, col:6>
|
||||
// CHECK-NEXT: | `-VarDecl {{.*}} <col:3, col:5> col:5{{( imported)?}} used e 'E'
|
||||
// CHECK-NEXT: |-CXXOperatorCallExpr {{.*}} <line:16:3, col:7> 'void' '+'
|
||||
// CHECK-NEXT: | |-ImplicitCastExpr {{.*}} <col:5> 'void (*)(E, E)' <FunctionToPointerDecay>
|
||||
// CHECK-NEXT: | | `-DeclRefExpr {{.*}} <col:5> 'void (E, E)' lvalue Function {{.*}} 'operator+' 'void (E, E)'
|
||||
// CHECK-NEXT: | |-ImplicitCastExpr {{.*}} <col:3> 'E' <LValueToRValue>
|
||||
// CHECK-NEXT: | | `-DeclRefExpr {{.*}} <col:3> 'E' lvalue Var {{.*}} 'e' 'E'
|
||||
// CHECK-NEXT: | `-ImplicitCastExpr {{.*}} <col:7> 'E' <LValueToRValue>
|
||||
// CHECK-NEXT: | `-DeclRefExpr {{.*}} <col:7> 'E' lvalue Var {{.*}} 'e' 'E'
|
||||
// CHECK-NEXT: `-CXXOperatorCallExpr {{.*}} <line:10:3, col:7> 'void' ','
|
||||
// CHECK-NEXT: `-CXXOperatorCallExpr {{.*}} <line:17:3, col:7> 'void' ','
|
||||
// CHECK-NEXT: |-ImplicitCastExpr {{.*}} <col:5> 'void (*)(E, E)' <FunctionToPointerDecay>
|
||||
// CHECK-NEXT: | `-DeclRefExpr {{.*}} <col:5> 'void (E, E)' lvalue Function {{.*}} 'operator,' 'void (E, E)'
|
||||
// CHECK-NEXT: |-ImplicitCastExpr {{.*}} <col:3> 'E' <LValueToRValue>
|
||||
|
|
|
@ -1,4 +1,13 @@
|
|||
// RUN: %clang_cc1 -triple spir64 -cl-std=CL2.0 -ast-dump -ast-dump-filter pipetype %s | FileCheck -strict-whitespace %s
|
||||
// Test without serialization:
|
||||
// RUN: %clang_cc1 -triple spir64 -cl-std=CL2.0 -ast-dump -ast-dump-filter pipetype %s \
|
||||
// RUN: | FileCheck -strict-whitespace %s
|
||||
//
|
||||
// Test with serialization:
|
||||
// RUN: %clang_cc1 -triple spir64 -cl-std=CL2.0 -emit-pch -o %t %s
|
||||
// RUN: %clang_cc1 -x cl -triple spir64 -cl-std=CL2.0 -include-pch %t -ast-dump-all -ast-dump-filter pipetype /dev/null \
|
||||
// RUN: | sed -e "s/ <undeserialized declarations>//" -e "s/ imported//" \
|
||||
// RUN: | FileCheck -strict-whitespace %s
|
||||
|
||||
typedef pipe int pipetype;
|
||||
// CHECK: PipeType {{.*}} 'read_only pipe int'
|
||||
// CHECK-NEXT: BuiltinType {{.*}} 'int'
|
||||
|
|
|
@ -1,4 +1,12 @@
|
|||
// RUN: %clang_cc1 -triple x86_64-unknown-unknown -std=c++17 -ast-dump %s | FileCheck -strict-whitespace %s
|
||||
// Test without serialization:
|
||||
// RUN: %clang_cc1 -triple x86_64-unknown-unknown -std=c++17 -ast-dump %s \
|
||||
// RUN: | FileCheck -strict-whitespace %s
|
||||
//
|
||||
// Test with serialization:
|
||||
// RUN: %clang_cc1 -triple x86_64-unknown-unknown -std=c++17 -emit-pch -o %t %s
|
||||
// RUN: %clang_cc1 -x c++ -triple x86_64-unknown-unknown -std=c++17 -include-pch %t -ast-dump-all /dev/null \
|
||||
// RUN: | sed -e "s/ <undeserialized declarations>//" -e "s/ imported//" \
|
||||
// RUN: | FileCheck -strict-whitespace %s
|
||||
|
||||
void f() {
|
||||
auto IsNotGenericLambda = [](){};
|
||||
|
|
|
@ -1,4 +1,12 @@
|
|||
// RUN: %clang_cc1 -triple x86_64-unknown-unknown -ast-dump %s | FileCheck -strict-whitespace %s
|
||||
// Test without serialization:
|
||||
// RUN: %clang_cc1 -triple x86_64-unknown-unknown -ast-dump %s \
|
||||
// RUN: | FileCheck -strict-whitespace %s
|
||||
//
|
||||
// Test with serialization:
|
||||
// RUN: %clang_cc1 -triple x86_64-unknown-unknown -emit-pch -o %t %s
|
||||
// RUN: %clang_cc1 -x c -triple x86_64-unknown-unknown -include-pch %t -ast-dump-all /dev/null \
|
||||
// RUN: | sed -e "s/ <undeserialized declarations>//" -e "s/ imported//" \
|
||||
// RUN: | FileCheck -strict-whitespace %s
|
||||
|
||||
struct A;
|
||||
// CHECK: RecordDecl 0x{{[^ ]*}} <{{.*}}:1, col:8> col:8 struct A
|
||||
|
|
|
@ -1,4 +1,12 @@
|
|||
// RUN: %clang_cc1 -triple x86_64-unknown-unknown -std=c++17 -ast-dump %s | FileCheck -strict-whitespace %s
|
||||
// Test without serialization:
|
||||
// RUN: %clang_cc1 -triple x86_64-unknown-unknown -std=c++17 -ast-dump %s \
|
||||
// RUN: | FileCheck -strict-whitespace %s
|
||||
//
|
||||
// Test with serialization:
|
||||
// RUN: %clang_cc1 -triple x86_64-unknown-unknown -std=c++17 -emit-pch -o %t %s
|
||||
// RUN: %clang_cc1 -x c++ -triple x86_64-unknown-unknown -std=c++17 -include-pch %t -ast-dump-all /dev/null \
|
||||
// RUN: | sed -e "s/ <undeserialized declarations>//" -e "s/ imported//" \
|
||||
// RUN: | FileCheck -strict-whitespace %s
|
||||
|
||||
struct A;
|
||||
// CHECK: CXXRecordDecl 0x{{[^ ]*}} <{{.*}}:1, col:8> col:8 struct A
|
||||
|
|
|
@ -1,4 +1,12 @@
|
|||
// RUN: %clang_cc1 -triple x86_64-unknown-unknown -std=c++17 -ast-dump %s | FileCheck -strict-whitespace %s
|
||||
// Test without serialization:
|
||||
// RUN: %clang_cc1 -triple x86_64-unknown-unknown -std=c++17 -ast-dump %s \
|
||||
// RUN: | FileCheck -strict-whitespace %s
|
||||
//
|
||||
// Test with serialization:
|
||||
// RUN: %clang_cc1 -triple x86_64-unknown-unknown -std=c++17 -emit-pch -o %t %s
|
||||
// RUN: %clang_cc1 -x c++ -triple x86_64-unknown-unknown -std=c++17 -include-pch %t -ast-dump-all /dev/null \
|
||||
// RUN: | sed -e "s/ <undeserialized declarations>//" -e "s/ imported//" \
|
||||
// RUN: | FileCheck -strict-whitespace %s
|
||||
|
||||
// FIXME: exists
|
||||
|
||||
|
|
|
@ -1,4 +1,12 @@
|
|||
// RUN: %clang_cc1 -std=gnu11 -ast-dump %s | FileCheck -strict-whitespace %s
|
||||
// Test without serialization:
|
||||
// RUN: %clang_cc1 -std=gnu11 -ast-dump %s \
|
||||
// RUN: | FileCheck -strict-whitespace %s
|
||||
//
|
||||
// Test with serialization:
|
||||
// RUN: %clang_cc1 -std=gnu11 -emit-pch -o %t %s
|
||||
// RUN: %clang_cc1 -x c -std=gnu11 -include-pch %t -ast-dump-all /dev/null \
|
||||
// RUN: | sed -e "s/ <undeserialized declarations>//" -e "s/ imported//" \
|
||||
// RUN: | FileCheck -strict-whitespace %s
|
||||
|
||||
int TestLocation = 0;
|
||||
// CHECK: VarDecl{{.*}}TestLocation
|
||||
|
|
|
@ -1,4 +1,12 @@
|
|||
// RUN: %clang_cc1 -std=c++2a -triple x86_64-linux-gnu -fcxx-exceptions -ast-dump %s | FileCheck -strict-whitespace %s
|
||||
// Test without serialization:
|
||||
// RUN: %clang_cc1 -std=c++2a -triple x86_64-linux-gnu -fcxx-exceptions -ast-dump %s \
|
||||
// RUN: | FileCheck -strict-whitespace %s
|
||||
//
|
||||
// Test with serialization:
|
||||
// RUN: %clang_cc1 -std=c++2a -triple x86_64-linux-gnu -fcxx-exceptions -emit-pch -o %t %s
|
||||
// RUN: %clang_cc1 -x c++ -std=c++2a -triple x86_64-linux-gnu -fcxx-exceptions -include-pch %t -ast-dump-all /dev/null \
|
||||
// RUN: | sed -e "s/ <undeserialized declarations>//" -e "s/ imported//" \
|
||||
// RUN: | FileCheck -strict-whitespace %s
|
||||
|
||||
namespace n {
|
||||
void function() {}
|
||||
|
|
|
@ -1,4 +1,13 @@
|
|||
// RUN: %clang_cc1 -Wno-unused -fobjc-arc -fblocks -fobjc-exceptions -ast-dump -ast-dump-filter Test %s | FileCheck -strict-whitespace %s
|
||||
// Test without serialization:
|
||||
// RUN: %clang_cc1 -Wno-unused -fobjc-arc -fblocks -fobjc-exceptions -ast-dump -ast-dump-filter Test %s \
|
||||
// RUN: | FileCheck -strict-whitespace %s
|
||||
//
|
||||
// Test with serialization:
|
||||
// RUN: %clang_cc1 -Wno-unused -fobjc-arc -fblocks -fobjc-exceptions -emit-pch -o %t %s
|
||||
// RUN: %clang_cc1 -x objective-c -Wno-unused -fobjc-arc -fblocks -fobjc-exceptions -include-pch %t \
|
||||
// RUN: -ast-dump-all -ast-dump-filter Test /dev/null \
|
||||
// RUN: | sed -e "s/ <undeserialized declarations>//" -e "s/ imported//" \
|
||||
// RUN: | FileCheck -strict-whitespace %s
|
||||
|
||||
void TestBlockExpr(int x) {
|
||||
^{ x; };
|
||||
|
|
|
@ -1,4 +1,12 @@
|
|||
// RUN: %clang_cc1 -std=c++17 -triple x86_64-unknown-unknown -ast-dump %s | FileCheck -strict-whitespace %s
|
||||
// Test without serialization:
|
||||
// RUN: %clang_cc1 -std=c++17 -triple x86_64-unknown-unknown -ast-dump %s \
|
||||
// RUN: | FileCheck -strict-whitespace %s
|
||||
//
|
||||
// Test with serialization:
|
||||
// RUN: %clang_cc1 -std=c++17 -triple x86_64-unknown-unknown -emit-pch -o %t %s
|
||||
// RUN: %clang_cc1 -x c++ -std=c++17 -triple x86_64-unknown-unknown -include-pch %t -ast-dump-all /dev/null \
|
||||
// RUN: | sed -e "s/ <undeserialized declarations>//" -e "s/ imported//" \
|
||||
// RUN: | FileCheck --strict-whitespace %s
|
||||
|
||||
template <typename Ty>
|
||||
// CHECK: FunctionTemplateDecl 0x{{[^ ]*}} <{{.*}}:1, line:[[@LINE+2]]:10> col:6 a
|
||||
|
|
|
@ -1,4 +1,11 @@
|
|||
// RUN: %clang_cc1 -triple x86_64-unknown-unknown -ast-dump %s | FileCheck -strict-whitespace %s
|
||||
// Test without serialization:
|
||||
// RUN: %clang_cc1 -triple x86_64-unknown-unknown -ast-dump %s \
|
||||
// RUN: | FileCheck -strict-whitespace %s
|
||||
//
|
||||
// Test with serialization:
|
||||
// RUN: %clang_cc1 -triple x86_64-unknown-unknown -emit-pch -o %t %s
|
||||
// RUN: %clang_cc1 -triple x86_64-unknown-unknown -x c++ -include-pch %t -ast-dump-all /dev/null \
|
||||
// RUN: | FileCheck -strict-whitespace %s
|
||||
|
||||
void test_type_trait() {
|
||||
// An unary type trait.
|
||||
|
@ -26,30 +33,30 @@ void test_unary_expr_or_type_trait() {
|
|||
(void) alignof(int);
|
||||
(void) __alignof(int);
|
||||
}
|
||||
// CHECK: TranslationUnitDecl {{.*}} <<invalid sloc>> <invalid sloc>
|
||||
// CHECK: |-FunctionDecl {{.*}} <{{.*}}ast-dump-traits.cpp:3:1, line:11:1> line:3:6 test_type_trait 'void ()'
|
||||
// CHECK-NEXT: | `-CompoundStmt {{.*}} <col:24, line:11:1>
|
||||
// CHECK-NEXT: | |-DeclStmt {{.*}} <line:5:3, col:12>
|
||||
// CHECK-NEXT: | | `-EnumDecl {{.*}} <col:3, col:11> col:8 referenced E
|
||||
// CHECK-NEXT: | |-CStyleCastExpr {{.*}} <line:6:3, col:21> 'void' <ToVoid>
|
||||
// CHECK: TranslationUnitDecl {{.*}} <<invalid sloc>> <invalid sloc>{{( <undeserialized declarations>)?}}
|
||||
// CHECK: |-FunctionDecl {{.*}} <{{.*}}ast-dump-traits.cpp:10:1, line:18:1> line:10:6{{( imported)?}} test_type_trait 'void ()'
|
||||
// CHECK-NEXT: | `-CompoundStmt {{.*}} <col:24, line:18:1>
|
||||
// CHECK-NEXT: | |-DeclStmt {{.*}} <line:12:3, col:12>
|
||||
// CHECK-NEXT: | | `-EnumDecl {{.*}} <col:3, col:11> col:8{{( imported)?}} referenced E
|
||||
// CHECK-NEXT: | |-CStyleCastExpr {{.*}} <line:13:3, col:21> 'void' <ToVoid>
|
||||
// CHECK-NEXT: | | `-TypeTraitExpr {{.*}} <col:10, col:21> 'bool' __is_enum
|
||||
// CHECK-NEXT: | |-CStyleCastExpr {{.*}} <line:8:3, col:30> 'void' <ToVoid>
|
||||
// CHECK-NEXT: | |-CStyleCastExpr {{.*}} <line:15:3, col:30> 'void' <ToVoid>
|
||||
// CHECK-NEXT: | | `-TypeTraitExpr {{.*}} <col:10, col:30> 'bool' __is_same
|
||||
// CHECK-NEXT: | `-CStyleCastExpr {{.*}} <line:10:3, col:47> 'void' <ToVoid>
|
||||
// CHECK-NEXT: | `-CStyleCastExpr {{.*}} <line:17:3, col:47> 'void' <ToVoid>
|
||||
// CHECK-NEXT: | `-TypeTraitExpr {{.*}} <col:10, col:47> 'bool' __is_constructible
|
||||
// CHECK-NEXT: |-FunctionDecl {{.*}} <line:13:1, line:16:1> line:13:6 test_array_type_trait 'void ()'
|
||||
// CHECK-NEXT: | `-CompoundStmt {{.*}} <col:30, line:16:1>
|
||||
// CHECK-NEXT: | `-CStyleCastExpr {{.*}} <line:15:3, col:34> 'void' <ToVoid>
|
||||
// CHECK-NEXT: |-FunctionDecl {{.*}} <line:20:1, line:23:1> line:20:6{{( imported)?}} test_array_type_trait 'void ()'
|
||||
// CHECK-NEXT: | `-CompoundStmt {{.*}} <col:30, line:23:1>
|
||||
// CHECK-NEXT: | `-CStyleCastExpr {{.*}} <line:22:3, col:34> 'void' <ToVoid>
|
||||
// CHECK-NEXT: | `-ArrayTypeTraitExpr {{.*}} <col:10, col:34> 'unsigned long' __array_rank
|
||||
// CHECK-NEXT: |-FunctionDecl {{.*}} <line:18:1, line:21:1> line:18:6 test_expression_trait 'void ()'
|
||||
// CHECK-NEXT: | `-CompoundStmt {{.*}} <col:30, line:21:1>
|
||||
// CHECK-NEXT: | `-CStyleCastExpr {{.*}} <line:20:3, col:28> 'void' <ToVoid>
|
||||
// CHECK-NEXT: |-FunctionDecl {{.*}} <line:25:1, line:28:1> line:25:6{{( imported)?}} test_expression_trait 'void ()'
|
||||
// CHECK-NEXT: | `-CompoundStmt {{.*}} <col:30, line:28:1>
|
||||
// CHECK-NEXT: | `-CStyleCastExpr {{.*}} <line:27:3, col:28> 'void' <ToVoid>
|
||||
// CHECK-NEXT: | `-ExpressionTraitExpr {{.*}} <col:10, col:28> 'bool' __is_lvalue_expr
|
||||
// CHECK-NEXT: `-FunctionDecl {{.*}} <line:23:1, line:28:1> line:23:6 test_unary_expr_or_type_trait 'void ()'
|
||||
// CHECK-NEXT: `-CompoundStmt {{.*}} <col:38, line:28:1>
|
||||
// CHECK-NEXT: |-CStyleCastExpr {{.*}} <line:25:3, col:20> 'void' <ToVoid>
|
||||
// CHECK-NEXT: `-FunctionDecl {{.*}} <line:30:1, line:35:1> line:30:6{{( imported)?}} test_unary_expr_or_type_trait 'void ()'
|
||||
// CHECK-NEXT: `-CompoundStmt {{.*}} <col:38, line:35:1>
|
||||
// CHECK-NEXT: |-CStyleCastExpr {{.*}} <line:32:3, col:20> 'void' <ToVoid>
|
||||
// CHECK-NEXT: | `-UnaryExprOrTypeTraitExpr {{.*}} <col:10, col:20> 'unsigned long' sizeof 'int'
|
||||
// CHECK-NEXT: |-CStyleCastExpr {{.*}} <line:26:3, col:21> 'void' <ToVoid>
|
||||
// CHECK-NEXT: |-CStyleCastExpr {{.*}} <line:33:3, col:21> 'void' <ToVoid>
|
||||
// CHECK-NEXT: | `-UnaryExprOrTypeTraitExpr {{.*}} <col:10, col:21> 'unsigned long' alignof 'int'
|
||||
// CHECK-NEXT: `-CStyleCastExpr {{.*}} <line:27:3, col:23> 'void' <ToVoid>
|
||||
// CHECK-NEXT: `-CStyleCastExpr {{.*}} <line:34:3, col:23> 'void' <ToVoid>
|
||||
// CHECK-NEXT: `-UnaryExprOrTypeTraitExpr {{.*}} <col:10, col:23> 'unsigned long' __alignof 'int'
|
||||
|
|
|
@ -1,4 +1,12 @@
|
|||
// RUN: %clang_cc1 -triple wasm32-unknown-unknown -ast-dump %s | FileCheck --strict-whitespace %s
|
||||
// Test without serialization:
|
||||
// RUN: %clang_cc1 -triple wasm32-unknown-unknown -ast-dump %s \
|
||||
// RUN: | FileCheck --strict-whitespace %s
|
||||
//
|
||||
// Test with serialization:
|
||||
// RUN: %clang_cc1 -triple wasm32-unknown-unknown -emit-pch -o %t %s
|
||||
// RUN: %clang_cc1 -triple wasm32-unknown-unknown -x c -include-pch %t -ast-dump-all /dev/null \
|
||||
// RUN: | sed -e "s/ <undeserialized declarations>//" -e "s/ imported//" \
|
||||
// RUN: | FileCheck --strict-whitespace %s
|
||||
|
||||
// Test that functions can be redeclared and they retain their attributes.
|
||||
|
||||
|
|
|
@ -1,5 +1,13 @@
|
|||
// RUN: %clang_cc1 -triple wasm32-unknown-unknown -ast-dump %s | FileCheck --strict-whitespace %s
|
||||
// Test without serialization:
|
||||
// RUN: %clang_cc1 -triple wasm32-unknown-unknown -ast-dump %s \
|
||||
// RUN: | FileCheck --strict-whitespace %s
|
||||
|
||||
// Test with serialization:
|
||||
// RUN: %clang_cc1 -triple wasm32-unknown-unknown -emit-pch -o %t %s
|
||||
// RUN: %clang_cc1 -triple wasm32-unknown-unknown -x c -include-pch %t -ast-dump-all /dev/null \
|
||||
// RUN: | sed -e "s/ <undeserialized declarations>//" -e "s/ imported//" \
|
||||
// RUN: | FileCheck --strict-whitespace %s
|
||||
//
|
||||
// Test that functions can be redeclared and they retain their attributes.
|
||||
|
||||
__attribute__((import_name("import_red"), import_module("mod"))) void red(void);
|
||||
|
|
|
@ -1,4 +1,12 @@
|
|||
// RUN: %clang_cc1 -std=c++11 -ast-dump %s -triple x86_64-linux-gnu | FileCheck %s
|
||||
// Test without serialization:
|
||||
// RUN: %clang_cc1 -std=c++11 -ast-dump %s -triple x86_64-linux-gnu \
|
||||
// RUN: | FileCheck %s
|
||||
//
|
||||
// Test with serialization:
|
||||
// RUN: %clang_cc1 -std=c++11 -triple x86_64-linux-gnu -emit-pch -o %t %s
|
||||
// RUN: %clang_cc1 -x c++ -std=c++11 -triple x86_64-linux-gnu -include-pch %t -ast-dump-all /dev/null \
|
||||
// RUN: | sed -e "s/ <undeserialized declarations>//" -e "s/ imported//" \
|
||||
// RUN: | FileCheck %s
|
||||
|
||||
char c8[] = u8"test\0\\\"\a\b\f\n\r\t\v\234";
|
||||
// CHECK: StringLiteral {{.*}} u8"test\000\\\"\a\b\f\n\r\t\v\234"
|
||||
|
|
Loading…
Reference in New Issue