H
halfmaddad
Hi Everyone
I have tried very hard to study various code bases in the past but had limited success. I have used brute force and printed all the source code and tried to read through everything and had limited success.
I have used ctags and cflow.
cflow gives results like this:
main() <int main (int argc, char **argv) at cobc.c:3669>:
memset()
cobc_sig_handler() <void COB_A_NORETURN cobc_sig_handler (int sig)
at cobc.c:1478>:
raise()
kill()
getpid()
exit()
continues on....
It shows that raise, kill, getpid etc are callable from cobc_sig_handler but it can't tell which path of execution it will take. Is there another tool that would list only the functions actually called?
I thought that I could look at each function cflow listed(or another tool's result's) and then use ctags to view the argument definitions.
Does this sound like a logical way to study the code base ? If not could you recommend some other techniques ?
Thanks for reading
I have tried very hard to study various code bases in the past but had limited success. I have used brute force and printed all the source code and tried to read through everything and had limited success.
I have used ctags and cflow.
cflow gives results like this:
main() <int main (int argc, char **argv) at cobc.c:3669>:
memset()
cobc_sig_handler() <void COB_A_NORETURN cobc_sig_handler (int sig)
at cobc.c:1478>:
raise()
kill()
getpid()
exit()
continues on....
It shows that raise, kill, getpid etc are callable from cobc_sig_handler but it can't tell which path of execution it will take. Is there another tool that would list only the functions actually called?
I thought that I could look at each function cflow listed(or another tool's result's) and then use ctags to view the argument definitions.
Does this sound like a logical way to study the code base ? If not could you recommend some other techniques ?
Thanks for reading