Extracting all functions from C++ source code

Maurizio Vitale maurizio.vitale@polymath-solutions.com
Mon May 12 19:08:00 GMT 2008


I second this suggestion. I routinely use the xml output of doxygen
and parse it with Python scripts to extract all sort of interesting  
things,
mainly for documentation purposes, but also for test generation.
OTH
	Maurizio

On May 11, 2008, at 1:52 PM, Larry Martell wrote:

> On Fri, May 9, 2008 at 5:22 PM, eliss <eliss.carmine@gmail.com> wrote:
>> I'm trying to find a way to extract all the function definitions AND
>> function uses from thousands of C++ files. For example, if foo.cpp
>> contains:
>>
>> int func(char b)
>> {
>>  return 0;
>> }
>>
>> func('d'); func('e');
>> print("bar");
>>
>> Then I want to get something that tells me "int func(char b) is the
>> declaration on line 1, pos 0 ; func(char) is on line 5, pos 0 ;
>> func(char) is on line 5, pos 11 ; print(char*) is on line 6, pos 0"
>>
>> Can I use gcc or g++ to do this? I've looked into ctags, but it can
>> only get the function definitions (and they are partial or cutoff
>> sometimes). I've also tried rolling my own but the amount of grammar
>> that can be used overwhelmed me.
>
> Take a look at doxygen - I think that can do what you want.
>
> -larry



More information about the Gcc-help mailing list