24 lines · cpp
1// Test without serialization:2// RUN: %clang_cc1 %s -ast-dump | FileCheck %s3//4// Test with serialization:5// RUN: %clang_cc1 -emit-pch -o %t %s6// RUN: %clang_cc1 -x c++ -include-pch %t -ast-dump-all /dev/null \7// RUN: | sed -e "s/ <undeserialized declarations>//" -e "s/ imported//" \8// RUN: | FileCheck %s9 10struct FOO {11 static const int vec_align_bytes = 16;12 void foo() {13 double a alignas(vec_align_bytes);14 ;15 }16};17 18// CHECK: | `-AlignedAttr {{.*}} <col:14> alignas19// CHECK-NEXT: | `-ConstantExpr {{.*}} <col:22> 'int'20// CHECK-NEXT: | |-value: Int 1621// CHECK-NEXT: | `-ImplicitCastExpr {{.*}} <col:22> 'int' <LValueToRValue>22// CHECK-NEXT: | `-DeclRefExpr {{.*}} <col:22> 'const int' lvalue Var {{.*}} 'vec_align_bytes' 'const int' non_odr_use_constant23// CHECK-NEXT: `-NullStmt {{.*}} <line:14:5>24