Files
llvm/test/tools/llvm-cov/Inputs/multiple_objects/header.h
T
Vedant Kumar 310c280673 [llvm-cov] Avoid over-counting covered lines and regions
* Fix an unsigned integer overflow in the logic that computes the
  number of uncovered lines in a function.

* When aggregating region and line coverage summaries, take into account
  that different instantiations may have a different number of regions.

The new test case provides test coverage for both bugs. I also verified
this change by preparing a coverage report for a stage2 build of llc --
the new assertions should detect any outstanding over-counting bugs.

Fixes PR34613.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@313417 91177308-0d34-0410-b5e6-96231b3b80d8
2017-09-15 23:00:02 +00:00

30 lines
372 B
C++

static inline void f1() {
#ifdef DEF
if (false && false)
return;
if (true || false || true)
return;
if (true && false)
return;
#endif
}
template<typename T>
void f2(T **x) {
#ifdef DEF
if (false && false)
*x = nullptr;
if (true || false || true)
*x = nullptr;
if (true && false)
*x = nullptr;
#endif
}
static inline void f3() {
}