fk0, легенда (27.12.2013 01:54 - 02:02, просмотров: 318) ответил fk0 на Два разных программиста видели, что не работает макропроцессор для проекта успешно собираемого три последних года двумя другими компиляторами. Про рукожопость рассказывай в другом месте.
В очередной раз потратил пол-ночи на эту поделку индусов. XC18 называется, очередной версии. Разложенные грабли обошёл (попытку насильно вкомпилить свой doprnt.c, подсовывание собственных .h с дурными именами а-ля adc.h -- отсюда, кстати, и грабли с #ifndef и #include -- просто диагностика тоже на уровне...) Но кончилось как и всегда нашим любимым can't generate code на каждую 100-ю строчку программы и too many errors. Что можно упрощать в выражениях вида "if (tm->tm_year < 70) tm->tm_year+=100;" я не знаю. Разбирать до уровня байтов и ассемблера не вижу смысла. Таки объём кода большой.
ёщё раз -- xc18 и др. компиляторы PRO-уровня НИХУЯ НЕ РАБОТАЮТ. Те, кто заявляют иное -- нагло пиздят или у них проекты уровня hello world.
Там ещё куча мелких косяков и это реально на неделю работы исправлений (только их) и ещё тестирование потом -- как проверить, что оно потом вообще работает? Ну его нафиг, такую миграцию. Для одного проекта, а не для 100500.
PS: вдогонку. Миграция между Hitech-C STD-версией и GCC (включая C30), если держаться в рамках C89 -- совершенно безболезненная. Попытка миграции на C18 провалилась, но в основном из-за объёма кода у C18 значительно большего -- в прошивку не влезло.
[ZX]