Цитата(Слесарь @ Jun 3 2014, 22:13)

Здравствуйте!
Разрабатываю достаточно большой проект пользуясь MPLAB 8.60 + C18 v4.20. PIC18F67J60.
Линковщик пишет Error - Recursion not supported for functions with locals of "overlay"
Можно ли это как-то обойти?
Уточните С18 by Microchip последняя - v3.47 от 20янв.2014. а что у Вас не ясно.
Если я правильно понял : линкер пытается сообщить - рекурсивный вызов для функции (посмотрите документацию)
расположенный в оверлейной области или с данными оверлейного типа не допустим. Какие-то претензии к порядку вызовов.
Возможно вызов в прерывании и фоне одновременно или др. причины.
Тут (на форуме) часто звучали рекомендации в прерывание не вносить большие блоки кода. Выставте флаг ,
а в фоновом блоке отреагируйте на него. Из личных ощущений - PIC18 не шустрый и как такового стека в нем нет. То-есть данные сохраняются в зависимости от компилятора. С18 искусственно выделял регистр косвенной адресации и формировал стек данных. HITECH обыгрывала ситуацию иначе и возникала проблема, возможно ситуация схожа.
"Для того чтобы избежать критики, надо ничего не делать, ничего не говорить и никем не быть"
"Каждый из нас бывает дураком по крайней мере пять минут в день; мудрость заключается в том, чтобы не превысить лимит." Элберт Хаббард