1*67e74705SXin Li 2*67e74705SXin Li #include "targeted-top.h" 3*67e74705SXin Li #include "targeted-preamble.h" 4*67e74705SXin Li 5*67e74705SXin Li extern int LocalVar; 6*67e74705SXin Li int LocalVar; 7*67e74705SXin Li 8*67e74705SXin Li // RUN: c-index-test -write-pch %t.h.pch %S/targeted-top.h -Xclang -detailed-preprocessing-record 9*67e74705SXin Li // RUN: env CINDEXTEST_FAILONERROR=1 c-index-test -file-refs-at=%s:5:17 %s -include %t.h \ 10*67e74705SXin Li // RUN: -Xclang -error-on-deserialized-decl=NestedVar1 \ 11*67e74705SXin Li // RUN: -Xclang -error-on-deserialized-decl=TopVar \ 12*67e74705SXin Li // RUN: | FileCheck %s -check-prefix=LOCAL 13*67e74705SXin Li 14*67e74705SXin Li // RUN: env CINDEXTEST_FAILONERROR=1 CINDEXTEST_EDITING=1 CINDEXTEST_COMPLETION_NO_CACHING=1 \ 15*67e74705SXin Li // RUN: c-index-test -file-refs-at=%s:5:17 %s -include %t.h \ 16*67e74705SXin Li // RUN: -Xclang -error-on-deserialized-decl=PreambleVar \ 17*67e74705SXin Li // RUN: -Xclang -error-on-deserialized-decl=NestedVar1 \ 18*67e74705SXin Li // RUN: -Xclang -error-on-deserialized-decl=TopVar \ 19*67e74705SXin Li // RUN: | FileCheck %s -check-prefix=LOCAL 20*67e74705SXin Li 21*67e74705SXin Li // LOCAL: VarDecl=LocalVar:5:12 22*67e74705SXin Li // LOCAL: VarDecl=LocalVar:5:12 =[5:12 - 5:20] 23*67e74705SXin Li // LOCAL: VarDecl=LocalVar:6:5 =[6:5 - 6:13] 24*67e74705SXin Li 25*67e74705SXin Li // RUN: env CINDEXTEST_FAILONERROR=1 c-index-test -file-refs-at=%S/targeted-top.h:14:7 %s -include %t.h \ 26*67e74705SXin Li // RUN: -Xclang -error-on-deserialized-decl=NestedVar1 \ 27*67e74705SXin Li // RUN: | FileCheck %s -check-prefix=TOP 28*67e74705SXin Li 29*67e74705SXin Li // RUN: env CINDEXTEST_FAILONERROR=1 CINDEXTEST_EDITING=1 CINDEXTEST_COMPLETION_NO_CACHING=1 \ 30*67e74705SXin Li // RUN: c-index-test -file-refs-at=%S/targeted-top.h:14:7 %s -include %t.h \ 31*67e74705SXin Li // RUN: -Xclang -error-on-deserialized-decl=PreambleVar \ 32*67e74705SXin Li // RUN: -Xclang -error-on-deserialized-decl=NestedVar1 \ 33*67e74705SXin Li // RUN: | FileCheck %s -check-prefix=TOP 34*67e74705SXin Li 35*67e74705SXin Li // TOP: FieldDecl=x:14:7 (Definition) 36*67e74705SXin Li // TOP: FieldDecl=x:14:7 (Definition) =[14:7 - 14:8] 37*67e74705SXin Li // TOP: MemberRefExpr=x:14:7 SingleRefName=[20:13 - 20:14] RefName=[20:13 - 20:14] =[20:13 - 20:14] 38*67e74705SXin Li 39*67e74705SXin Li // RUN: env CINDEXTEST_FAILONERROR=1 c-index-test -file-refs-at=%S/targeted-nested1.h:2:16 %s -include %t.h \ 40*67e74705SXin Li // RUN: -Xclang -error-on-deserialized-decl=TopVar \ 41*67e74705SXin Li // RUN: | FileCheck %s -check-prefix=NESTED 42*67e74705SXin Li 43*67e74705SXin Li // RUN: env CINDEXTEST_FAILONERROR=1 CINDEXTEST_EDITING=1 CINDEXTEST_COMPLETION_NO_CACHING=1 \ 44*67e74705SXin Li // RUN: c-index-test -file-refs-at=%S/targeted-nested1.h:2:16 %s -include %t.h \ 45*67e74705SXin Li // RUN: -Xclang -error-on-deserialized-decl=PreambleVar \ 46*67e74705SXin Li // RUN: -Xclang -error-on-deserialized-decl=TopVar \ 47*67e74705SXin Li // RUN: | FileCheck %s -check-prefix=NESTED 48*67e74705SXin Li 49*67e74705SXin Li // NESTED: VarDecl=NestedVar1:2:12 50*67e74705SXin Li // NESTED: VarDecl=NestedVar1:2:12 =[2:12 - 2:22] 51*67e74705SXin Li 52*67e74705SXin Li // RUN: env CINDEXTEST_FAILONERROR=1 CINDEXTEST_EDITING=1 CINDEXTEST_COMPLETION_NO_CACHING=1 \ 53*67e74705SXin Li // RUN: c-index-test -file-refs-at=%S/targeted-preamble.h:2:15 %s -include %t.h \ 54*67e74705SXin Li // RUN: -Xclang -error-on-deserialized-decl=NestedVar1 \ 55*67e74705SXin Li // RUN: -Xclang -error-on-deserialized-decl=TopVar \ 56*67e74705SXin Li // RUN: | FileCheck %s -check-prefix=PREAMBLE 57*67e74705SXin Li 58*67e74705SXin Li // PREAMBLE: VarDecl=PreambleVar:2:12 59*67e74705SXin Li // PREAMBLE: VarDecl=PreambleVar:2:12 =[2:12 - 2:23] 60