Construa o AST a partir do código C

Como posso construir uma AST (Abstract Syntax Tree) do código gcc C para fazer algumas modificações, como converter algumas variáveis ​​int para float e reproduzir (gerar) o código em sintaxe C novamente depois disso.

Na verdade, no momento, a única funcionalidade que eu realmente preciso é extrair uma tabela de variáveis ​​e seus tipos de um programa c composto por poucas linhas ... Eu acho que há um simples analisador fazendo isso.

Eu tenho algumas variáveis ​​como:

int  var_bss ;           
float var_f_bss;            
int var_data = 4;        
float var_f_data = 5;  

E uma função:

int Foo(){          
   some local variables;            
}    

O código está em um único arquivo c.

Quero apresentar todas as variáveis ​​ao usuário final para que ele escolha um tipo de fonte em um segmento de memória específico, por exemplo, variáveis ​​int no arquivo .data. Em seguida, o usuário pode converter essas variáveis ​​em flutuantes. Finalmente, eu gero o mesmo código para o usuário, mas com os novos tipos de variáveis ​​que ele escolheu.

questionAnswers(3)

yourAnswerToTheQuestion