2.1.12. Call Hierarchy

Some times it is important to know who is calling this function (method). If the function is too huge, its also good to know what other functions are called by this function.

How to see it? Right Click on the function and select Open Call Hierarchy. The keyboard shortcut is Ctrl + Alt + H (H for Hierarchy).

This image tells what test_gzip is doing.

../../../_images/c-call-hierarchy.png

Here is an interpretation.

  1. Calculating length of something. (strlen). But its done twice in this function. Use Up / Down arrows from the view Or Ctrl + , / Ctrl + . to go to the source lines where it is used.
  2. The variable hello is being read/modified. (Done at total 3 places)
  3. Invokes gzopen. Done twice in this function. gzopen is doing something else internally too.
  4. Etc.

You can toggle between who is calling this function / what functions are called by this function.

../../../_images/c-call-hierarchy-incoming.png

You can also toggle reads to field (variables), look at the recent history of call hierarchies looked, focus on another function.