LINUX.ORG.RU

История изменений

Исправление tp_for_my_bunghole, (текущая версия) :

Может для чего-то простого реализовать нормальный сервер не проблема, но вот в годный крестовый сервер я уже слабо верю

Решение элементарно. Пишешь свой компилятор который не генерирует исполняемый код а только смотрит «что есть что» во время компиляции и сохраняет это в базу. Видит вывод после макропроцессора, какие ветки макросов активны(для подсветки кода). В Emacs есть плагин ggtags для «C»(в основном) у которого уже есть готовый стандарт базы данных в виде файлов именно для этого, то есть остаётся только сделать этот компилятор заполняющий эту базу.

Систему сборки C++ проекта нужно только пропустить через этот компилятор вместо GCC/Clang - и точная аналитика по всему проекту готова в виде файла для ggtags. Вообще это одна из интересных областей для написания кода, компиляторы, и при этом нет трудной рутинной части в генерации нативного кода. Но то что это до сих пор не начали говорит больше о тех кто пишет C++, они и так страдают на работе наверное и мотивации нет.

В проект RTags продолжают коммитить, но не попадались на пути восхищения этим подходом. Что и как там работает - непонятно.

Есть в Emacs и cedet со своим форматом, хорошим интерфейсом и API, автор Alex Ott упоминаемый на первой странице комментов. Проект к которому можно было бы пристроить анализатор-компилятор.
https://alexott.net/ru/index.html

Исправление tp_for_my_bunghole, :

Может для чего-то простого реализовать нормальный сервер не проблема, но вот в годный крестовый сервер я уже слабо верю

Решение элементарно. Пишешь свой компилятор который не генерирует исполняемый код а только смотрит «что есть что» во время компиляции и сохраняет это в базу. Видит вывод после макропроцессора, какие ветки макросов активны(для подсветки кода). В Emacs есть плагин ggtags для «C»(в основном) у которого уже есть готовый стандарт базы данных в виде файлов именно для этого, то есть остаётся только сделать этот компилятор заполняющий эту базу.

Систему сборки C++ проекта нужно только пропустить через этот компилятор вместо GCC/Clang - и точная аналитика по всему проекту готова в виде файла для ggtags. Вообще это одна из самых интересных областей для написания кода, компиляторы, и при этом нет трудной рутинной части в генерации нативного кода. Но то что это до сих пор не начали говорит больше о тех кто пишет C++, они и так страдают на работе наверное и мотивации нет.

В проект RTags продолжают коммитить, но не попадались на пути восхищения этим подходом. Что и как там работает - непонятно.

Исходная версия tp_for_my_bunghole, :

Может для чего-то простого реализовать нормальный сервер не проблема, но вот в годный крестовый сервер я уже слабо верю

Решение элементарно. Пишешь свой компилятор который не генерирует исполняемый код а только смотрит «что есть что» во время компиляции и сохраняет это в базу. Видит вывод после макропроцессора, какие ветки макросов активны(для подсветки кода). В Emacs есть плагин ggtags для «C»(в основном) у которого уже есть готовый стандарт базы данных в виде файлов именно для этого, то есть остаётся только сделать этот компилятор заполняющий эту базу.

Систему сборки C++ проекта нужно только пропустить через этот компилятор вместо GCC/Clang - и точная аналитика по всему проекту готова в виде файла для ggtags. Вообще это одна из самых интересных областей для написания кода, компиляторы, и при этом нет трудной рутинной части в генерации нативного кода. Но то что это до сих пор не начали говорит больше о тех кто пишет C++, они и так страдают на работе наверное и мотивации нет.