bloomberg / clangmetatool

A framework for reusing code in Clang tools
https://bloomberg.github.io/clangmetatool/
Apache License 2.0
119 stars 25 forks source link

Enable Validating Header Dependencies #47

Closed envp closed 4 years ago

envp commented 4 years ago

Issue number of the reported bug or feature request: Internal ticket

Describe your changes We add the ability to track live dependencies of a header in the include graph through counts of:

provided by file uid A through file uid B. We call this the 'usage reference count' of the edge {A, B}.

Add new method:

Testing performed Added a test case t/031-validate-incldue-graph.t.cpp for the features proposed.

Test suite passes locally on:

envp commented 4 years ago

cc @dbeer1 @ruoso @azeemba @liangti

envp commented 4 years ago

@dbeer1 This is ready for review again.

envp commented 4 years ago

I've rebased the 'extra' commits into the intended parent.

envp commented 4 years ago

@azeemba This is good to merge now.