summaryrefslogtreecommitdiffstats
path: root/clang/test/CoverageMapping/logical.cpp
diff options
context:
space:
mode:
authorVedant Kumar <vsk@apple.com>2017-10-17 06:51:54 +0000
committerVedant Kumar <vsk@apple.com>2017-10-17 06:51:54 +0000
commite5f06a81a870a6c3e1caa5203d9fceed45c1d0e1 (patch)
tree93162f61ce96e68fdf2a41cea87d179065f19df7 /clang/test/CoverageMapping/logical.cpp
parent1e0f1f476a4f3d922002969c1bd3513c9808149e (diff)
downloadbcm5719-llvm-e5f06a81a870a6c3e1caa5203d9fceed45c1d0e1.tar.gz
bcm5719-llvm-e5f06a81a870a6c3e1caa5203d9fceed45c1d0e1.zip
[Coverage] Explicitly mark the l.h.s of && and || (fixes PR33465)
This makes it possible to view sub-line region counts for the l.h.s of && and || expressions in coverage reports. It also fixes PR33465, which shows an example of incorrect coverage output for an assignment statement containing '||'. llvm-svn: 315979
Diffstat (limited to 'clang/test/CoverageMapping/logical.cpp')
-rw-r--r--clang/test/CoverageMapping/logical.cpp15
1 files changed, 10 insertions, 5 deletions
diff --git a/clang/test/CoverageMapping/logical.cpp b/clang/test/CoverageMapping/logical.cpp
index 198cc60d99b..bc7c785b7b5 100644
--- a/clang/test/CoverageMapping/logical.cpp
+++ b/clang/test/CoverageMapping/logical.cpp
@@ -1,13 +1,18 @@
// RUN: %clang_cc1 -fprofile-instrument=clang -fcoverage-mapping -dump-coverage-mapping -emit-llvm-only -main-file-name logical.cpp %s | FileCheck %s
-int main() { // CHECK: File 0, [[@LINE]]:12 -> [[@LINE+10]]:2 = #0
+int main() { // CHECK: File 0, [[@LINE]]:12 -> [[@LINE+15]]:2 = #0
bool bt = true;
bool bf = false;
- bool a = bt && bf; // CHECK-NEXT: File 0, [[@LINE]]:18 -> [[@LINE]]:20 = #1
- a = bt &&
+ bool a = bt && bf; // CHECK-NEXT: File 0, [[@LINE]]:12 -> [[@LINE]]:14 = #0
+ // CHECK-NEXT: File 0, [[@LINE-1]]:18 -> [[@LINE-1]]:20 = #1
+
+ a = bt && // CHECK-NEXT: File 0, [[@LINE]]:7 -> [[@LINE]]:9 = #0
bf; // CHECK-NEXT: File 0, [[@LINE]]:7 -> [[@LINE]]:9 = #2
- a = bf || bt; // CHECK-NEXT: File 0, [[@LINE]]:13 -> [[@LINE]]:15 = #3
- a = bf ||
+
+ a = bf || bt; // CHECK-NEXT: File 0, [[@LINE]]:7 -> [[@LINE]]:9 = #0
+ // CHECK-NEXT: File 0, [[@LINE-1]]:13 -> [[@LINE-1]]:15 = #3
+
+ a = bf || // CHECK-NEXT: File 0, [[@LINE]]:7 -> [[@LINE]]:9 = #0
bt; // CHECK-NEXT: File 0, [[@LINE]]:7 -> [[@LINE]]:9 = #4
return 0;
}
OpenPOWER on IntegriCloud