Синтаксический анализатор

Синтаксический анализ исходного кода это основа любого компилятора. Синтаксический анализ обычно производится над лексемами, полученными на предыдущем этапе анализа исходного кода - лексическом анализе. Мы попытались сделать следующее:

  • разбить исходный Си код на лексемы;
  • построить на основе полученных лексем дерево синтаксического разбора;
  • свернуть часть выражений;
  • сгенерировать из дерева синтаксического разбора файл с исходным кодом на языке Си;
  • сравнить исходную версию со сгенерированной версией.

Вот что из этого начинает получаться:

- регенерация исходного кода лексического анализатора.

- регенерация исходного кода словаря зарезервированных слов.

- регенерация кода разбора директивы #define

- регенерация функции main()

---