Giter Site home page Giter Site logo

Comments (2)

henry2cox avatar henry2cox commented on September 8, 2024

Thanks for the report.
I believe this is already fixed in my TOT - so I will push the update shortly.

Note that the root cause is related to data inconsistency: the baseline, current, and source diff data do not agree with each other.
In our case, the issue was that the file paths in the 'diff' file did not match the names in the coverage data; the tool requires that path names be identical (however, see the genhtml --elide-path-mismatch .. documentation for a workaround).
The bug fix simply removes the call to the undef object (so no crash) - but you will still see the unmapped error.
The fix also adds some additional text to the output logs, to make it easier to diagnose the cause of the mismatch.

The out-of-range line number issue is commonly caused by one or more of:

  • inconsistent baseline/current/diff names - so the tool gets confused about the size of some file
  • version mismatches such that genhtml is not looking at the same source code as the data had been generated.
    Depending on your project and use model, it can be a good idea to use the --version-script lcov/genhml option to avoid inconsistencies caused by version differences.
  • bug in gcc/gcov/llvm/etc such that out-of-range lines appear in the output data.
    This is very common in lex/yacc/tablegen output - but also happens in other files.
    In those 'other files', the most common case is that gcov (or llvm-cov) report line N+1 in a file containing N lines.
    See the genhtml --synthesize-missing.., genhtml --filter range... and genhtml --ignore range... options for possible workarounds.

from lcov.

henry2cox avatar henry2cox commented on September 8, 2024

call from undef object should be fixed in 3abff7c.

from lcov.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.