Bug 575368 - Exception when opening GCov coverage files on Cygwin GCC

- in some cases (especially with optimization), inlined code will
  show up in the TAG_LINES whereby another source file will be
  referenced and we will add 0, source index to the lineno info
- fix SourceFile.createLines() to keep track of when the source index
  switches and use a local SourceFile instance to access the correct
  lines ArrayList
- add a new method initializeLines() to SourceFile to ensure that the
  ArrayList gets sets up at least once
- change CovManager.processCovFiles() to pass allSrcs to
  the SourceFile.createFiles() method so it can access any source
  file it needs to

Change-Id: I733061c1e91db2a81ad1703c99b998f73bd315d4
Reviewed-on: https://git.eclipse.org/r/c/linuxtools/org.eclipse.linuxtools/+/184549
Tested-by: Linux Tools Bot <linuxtools-bot@eclipse.org>
Reviewed-by: Jeff Johnston <jjohnstn@redhat.com>
2 files changed
tree: 3cd45c32269fb9dc4bc5a966f66705343af4ea80
  1. changelog/
  2. containers/
  3. gcov/
  4. gprof/
  5. javadocs/
  6. libhover/
  7. lttng/
  8. man/
  9. perf/
  10. profiling/
  11. releng/
  12. rpm/
  13. systemtap/
  14. vagrant/
  15. valgrind/
  16. .gitignore
  17. .project
  18. LICENSE
  19. pom.xml
  20. README.md
README.md

Contributing to Linux Tools

Thanks for your interest in this project.

Project description:

The Linux Tools project aims to bring a full-featured C and C++ IDE to Linux developers. We build on the source editing and debugging features of the CDT and integrate popular native development tools such as the GNU Autotools, Valgrind, OProfile, RPM, SystemTap, GCov, GProf, LTTng, etc. Current projects include LTTng trace viewers and analyzers, an RPM .spec editor, Autotools build integration, a Valgrind heap usage analysis tool, and OProfile call profiling tools. The project also provides a place for Linux distributions to collaboratively overcome issues surrounding distribution packaging of Eclipse technology. The project produces both best practices and tools related to packaging. One of our features is a source archive of the Eclipse SDK that can be used by all Linux distributions building and distributing it.

Developer resources:

Information regarding source code management, builds, coding standards, and more.

Eclipse Contributor Agreement:

Before your contribution can be accepted by the project team contributors must electronically sign the Eclipse Contributor Agreement (ECA).

Commits that are provided by non-committers must have a Signed-off-by field in the footer indicating that the author is aware of the terms by which the contribution has been provided to the project. The non-committer must additionally have an Eclipse Foundation account and must have a signed Eclipse Contributor Agreement (ECA) on file.

For more information, please see the Eclipse Committer Handbook: https://www.eclipse.org/projects/handbook/#resources-commit

Contact:

Contact the project developers via the project's “dev” list.

Search for bugs:

This project uses Bugzilla to track ongoing development and issues.

Create a new bug:

Be sure to search for existing bugs before you create another one. Remember that contributions are always welcome!