range_based_for.cpp 1.1 KB

1234567891011121314151617181920212223242526272829
  1. // Make sure that compiler-added local variables (whose line number is zero)
  2. // don't crash llvm-cov.
  3. // We need shell for cd
  4. // REQUIRES: shell
  5. // RUN: rm -rf %t
  6. // RUN: mkdir %t
  7. // RUN: cd %t
  8. // RUN: cp %s %p/Inputs/range_based_for.gc* .
  9. // RUN: llvm-cov gcov range_based_for.cpp | FileCheck %s --check-prefix=STDOUT
  10. // STDOUT: File 'range_based_for.cpp'
  11. // STDOUT: Lines executed:100.00% of 5
  12. // STDOUT: range_based_for.cpp:creating 'range_based_for.cpp.gcov'
  13. // RUN: FileCheck %s --check-prefix=GCOV < %t/range_based_for.cpp.gcov
  14. // GCOV: -: 0:Runs:1
  15. // GCOV: -: 0:Programs:1
  16. int main(int argc, const char *argv[]) { // GCOV: 1: [[@LINE]]:int main(
  17. int V[] = {1, 2}; // GCOV: 1: [[@LINE]]: int V[]
  18. for (int &I : V) { // GCOV: 10: [[@LINE]]: for (
  19. } // GCOV: 2: [[@LINE]]: }
  20. return 0; // GCOV: 1: [[@LINE]]: return
  21. } // GCOV: -: [[@LINE]]:}
  22. // llvm-cov doesn't work on big endian yet
  23. // XFAIL: powerpc64-, s390x, mips-, mips64-, sparc