Как использовать Clang для перевода с C ++ на другой язык - PullRequest
1 голос
/ 28 марта 2012

Я недавно скомпилировал Clang и LLVM для Windows.Моя цель - использовать его для перевода с C ++ на другой язык, но я не уверен, что лучший способ это сделать.Например, если я вызываю clang с опцией -ast-print "pretty print", похоже, что Clang может получить точное представление исходного кода из своего внутреннего AST.Нужно ли мне каким-то образом имитировать этот код, чтобы я получал красивую печать на моем новом языке?Или я должен идти по дереву AST?Спасибо за любую помощь!

1 Ответ

1 голос
/ 28 марта 2012

Первое решение - использовать библиотеку libclang для перевода исходного кода C / C ++ во что угодно.

Второе - написать бэкэнд LLVM, который будет преобразовывать IR LLVM в ваш язык (например, в C-бэкэнд).Это более гибко (IMO), но потребует от вас работать на гораздо более низком уровне, чем исходный код C ++.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...