diff options
Diffstat (limited to 'llvm')
-rw-r--r-- | llvm/include/llvm/ProfileData/Coverage/CoverageMapping.h | 7 | ||||
-rw-r--r-- | llvm/unittests/ProfileData/CoverageMappingTest.cpp | 3 |
2 files changed, 6 insertions, 4 deletions
diff --git a/llvm/include/llvm/ProfileData/Coverage/CoverageMapping.h b/llvm/include/llvm/ProfileData/Coverage/CoverageMapping.h index 8f336c1..d3a5d44 100644 --- a/llvm/include/llvm/ProfileData/Coverage/CoverageMapping.h +++ b/llvm/include/llvm/ProfileData/Coverage/CoverageMapping.h @@ -693,8 +693,9 @@ public: /// An iterator over the \c LineCoverageStats objects for lines described by /// a \c CoverageData instance. class LineCoverageIterator - : public iterator_facade_base< - LineCoverageIterator, std::forward_iterator_tag, LineCoverageStats> { + : public iterator_facade_base<LineCoverageIterator, + std::forward_iterator_tag, + const LineCoverageStats> { public: LineCoverageIterator(const CoverageData &CD) : LineCoverageIterator(CD, CD.begin()->Line) {} @@ -711,8 +712,6 @@ public: const LineCoverageStats &operator*() const { return Stats; } - LineCoverageStats &operator*() { return Stats; } - LineCoverageIterator &operator++(); LineCoverageIterator getEnd() const { diff --git a/llvm/unittests/ProfileData/CoverageMappingTest.cpp b/llvm/unittests/ProfileData/CoverageMappingTest.cpp index f6f93cd..cc4c953 100644 --- a/llvm/unittests/ProfileData/CoverageMappingTest.cpp +++ b/llvm/unittests/ProfileData/CoverageMappingTest.cpp @@ -693,6 +693,9 @@ TEST_P(CoverageMappingTest, test_line_coverage_iterator) { ++Line; } ASSERT_EQ(11U, Line); + + // Check that operator->() works / compiles. + ASSERT_EQ(1U, LineCoverageIterator(Data)->getLine()); } TEST_P(CoverageMappingTest, uncovered_function) { |