1 // RUN: %clang_cc1 -mllvm -emptyline-comment-coverage=false -fprofile-instrument=clang -fcoverage-mapping -dump-coverage-mapping -emit-llvm-only -main-file-name macroparams2.c %s | FileCheck %s
2 
3 #define MACRO(REFS, CALLS)  (4 * (CALLS) < (REFS))
4 
5 struct S {
6   int i, j;
7 };
8 
9 // CHECK: File 0, [[@LINE+1]]:12 -> [[@LINE+11]]:2 = #0
main()10 int main() {
11   struct S arr[32] = { 0 };
12   int n = 0;
13   // CHECK-NEXT: Expansion,File 0, [[@LINE+3]]:7 -> [[@LINE+3]]:12 = #0
14   // CHECK-NEXT: Gap,File 0, [[@LINE+2]]:33 -> [[@LINE+2]]:34 = #1
15   // CHECK-NEXT: File 0, [[@LINE+1]]:34 -> [[@LINE+3]]:4 = #1
16   if (MACRO(arr[n].j, arr[n].i)) {
17     n = 1;
18   }
19   return n;
20 }
21 
22 // CHECK: File 1, 3:29 -> 3:51 = #0
23