Не скажите! Вот есть блок кода. У него есть "входные сущности" - то, что он берет от остального кода; и выходные сущности - переменные, которые он меняет. Это не функция, не inline функция, не макрос, не объект в С++ - это именно блок кода.
В зависимости от условий, этот блок кода пишется по разному. Зависимости:
архитектура | плата | ОСь | компилятор
Если все это делать if def - разобраться в этом потом попросут невозможно.
очется видеть его целиком при написании - так что куча макросов не сильно катит. Нужно, чтобы в IDE code folging работал более интелектуально: если выбран некий параметр, то все блоки, который от него зависят, "расфолдились", а все остальные - "зафолдились". Нужно экономить все ресурсы мозгов программиста:
* контекстно адресуемая память на макросы
* буфер памяти под "связанные" с основным кодом куски кода (чтобы помнить, что же там написано)
* беготня глаз по экрану
* беготня рук
Вот и хочется написать этот блок либо индивидульно под каждый вариант, либо в виде "встроенного" С (типа встроенного HTML PHP или Perl): т.е. вроде как С, но что-то потом подставляется в результате каких-то операций. Ну или как для GCC можно писать на псевдоасме, а он потом сам по регистрам разложит.
COG является неким прототипом, но очень простым
http://www.nedbatc …code/cog/index_ru.html
Нужна более мощная штука, причем вместе с очень продвинутым редактором.
Идеи такой "штукенции" у меня крутятся в голове. Был бы программером - начал бы писать уже этот "кодогенератор". Ну и в качестве редактора
http://scite.ruteam.ru/