At what scope does the call graph analyzer work?

I have a fellow engineer what would like to use clang to generate call
graphs for his program using:

-analyze -analyzer-checker=ViewCallGraph

Can someone tell me if the call graphs are limited to the scope of a
translation unit or will clang produce something for the entire program?

Chad

Just the translation unit, unfortunately. The call graph is intended to allow the analyzer to pick a good order to analyze individual functions, not as a full analysis tool in its own right.

Jordan

I have a fellow engineer what would like to use clang to generate call
graphs for his program using:

-analyze -analyzer-checker=ViewCallGraph

Can someone tell me if the call graphs are limited to the scope of a
translation unit or will clang produce something for the entire program?

Just the translation unit, unfortunately.

Correct.

The call graph is intended to allow the analyzer to pick a good order to analyze individual functions, not as a full analysis tool in its own right.

Call graph is designed to be general enough to be consumed by analyses other than the static analyzer. Currently, the static analyzer is the only consumer of it.