blob: 78cc9cf36c73c14eab880a17ce524ab9820328eb [file] [log] [blame]
Bruno Ricci7a7d50e2020-07-08 16:36:48 +01001// Test without serialization:
Bruno Riccif63e3ea2020-07-06 21:50:23 +01002// RUN: %clang_cc1 -triple x86_64-unknown-unknown -Wno-unused-value -std=gnu++17 \
3// RUN: -ast-dump %s -ast-dump-filter Test \
4// RUN: | FileCheck --strict-whitespace --match-full-lines %s
Bruno Ricci7a7d50e2020-07-08 16:36:48 +01005//
6// Test with serialization:
7// RUN: %clang_cc1 -triple x86_64-unknown-unknown -Wno-unused-value -std=gnu++17 -emit-pch -o %t %s
8// RUN: %clang_cc1 -x c++ -triple x86_64-unknown-unknown -Wno-unused-value -std=gnu++17 \
9// RUN: -include-pch %t -ast-dump-all -ast-dump-filter Test /dev/null \
10// RUN: | sed -e "s/ <undeserialized declarations>//" -e "s/ imported//" \
11// RUN: | FileCheck --strict-whitespace --match-full-lines %s
Bruno Riccif63e3ea2020-07-06 21:50:23 +010012
13int i;
14struct S {
15 int i;
16};
17
18void Test() {
19 constexpr int *pi = &i;
20 // CHECK: | `-VarDecl {{.*}} <col:{{.*}}, col:{{.*}}> col:{{.*}} pi 'int *const' constexpr cinit
21 // CHECK-NEXT: | |-value: LValue <todo>
22
23 constexpr int(S::*pmi) = &S::i;
24 // CHECK: `-VarDecl {{.*}} <col:{{.*}}, col:{{.*}}> col:{{.*}} pmi 'int (S::*const)' constexpr cinit
25 // CHECK-NEXT: |-value: MemberPointer <todo>
26}