У меня есть исходный файл C / C ++ с условной компиляцией. Прежде чем отправить его клиентам, я хочу удалить большинство операторов #if, чтобы моим клиентам не приходилось беспокоиться о передаче правильных опций -D компилятору.
Я реализовал это и работает в Python, но он правильно обрабатывает только операторы #ifdef и #ifndef. Мне нужно добавить поддержку операторов #if, но синтаксис #if намного сложнее. (Например, вы можете использовать &&, ||,!, Скобки, операторы отношений, арифметику и т. Д.).
Существует ли какой-либо существующий код с открытым исходным кодом для анализа и оценки операторов #if? (Желательно на Python).
Единственная известная мне реализация - это GCC, и она слишком сложна для этой задачи.