Zbuduj AST z kodu C
Jak mogę zbudować AST (Abstract Syntax Tree) z kodu gcc C, aby wprowadzić pewne modyfikacje, takie jak konwersja niektórych zmiennych int do float, a następnie powtórzyć (wygenerować) składnię kodu do C.
Właściwie, na razie jedyną funkcjonalnością, jakiej naprawdę potrzebuję, jest wyodrębnienie tabeli zmiennych i ich typów z programu c składającego się z kilku linii ... Myślę, że jest to prosty parser.
Mam kilka zmiennych, takich jak:
int var_bss ;
float var_f_bss;
int var_data = 4;
float var_f_data = 5;
I funkcja:
int Foo(){
some local variables;
}
Kod jest w jednym pliku c.
Chcę wprowadzić wszystkie zmienne do użytkownika końcowego, aby mógł wybrać typ źródła w określonym segmencie pamięci, np. int zmienne w .data. Następnie użytkownik może przekonwertować te zmienne na zmienne. Na koniec generuję ten sam kod dla użytkownika, ale z nowymi typami zmiennych, które wybrał.