xref: /aosp_15_r20/external/clang/test/Index/evaluate-cursor.cpp (revision 67e74705e28f6214e480b399dd47ea732279e315)
1*67e74705SXin Li // Test is line- and column-sensitive. Run lines are below.
2*67e74705SXin Li 
3*67e74705SXin Li struct Foo {
4*67e74705SXin Li   int x = 10;
5*67e74705SXin Li };
6*67e74705SXin Li 
foo()7*67e74705SXin Li void foo() {
8*67e74705SXin Li   int p = 11;
9*67e74705SXin Li }
10*67e74705SXin Li 
11*67e74705SXin Li #define FUNC_MAC(x) x
12*67e74705SXin Li 
goo()13*67e74705SXin Li void goo() {
14*67e74705SXin Li   int p = FUNC_MAC(1);
15*67e74705SXin Li   int a = __LINE__;
16*67e74705SXin Li }
17*67e74705SXin Li 
18*67e74705SXin Li // RUN: c-index-test -evaluate-cursor-at=%s:4:7 \
19*67e74705SXin Li // RUN:    -evaluate-cursor-at=%s:8:7 \
20*67e74705SXin Li // RUN:    -evaluate-cursor-at=%s:8:11 -std=c++11 %s | FileCheck %s
21*67e74705SXin Li // CHECK: Value: 10
22*67e74705SXin Li // CHECK: Value: 11
23*67e74705SXin Li // CHECK: Value: 11
24*67e74705SXin Li 
25*67e74705SXin Li // RUN: c-index-test -get-macro-info-cursor-at=%s:11:9 \
26*67e74705SXin Li // RUN:    -get-macro-info-cursor-at=%s:14:11 \
27*67e74705SXin Li // RUN:    -get-macro-info-cursor-at=%s:15:11 -std=c++11 %s | FileCheck -check-prefix=CHECK-MACRO %s
28*67e74705SXin Li // CHECK-MACRO: [function macro]
29*67e74705SXin Li // CHECK-MACRO: [function macro]
30*67e74705SXin Li // CHECK-MACRO: [builtin macro]
31