Обнаружил странную ситуацию.
работаю с IAR 4.12 для AT90S2313? транслирую программу - ведет себя совершенно неадекватно, похоже виснит в инициализации. Нашел, что критично наличие инициализируемого массива в 10 байт.
Если его использую - признаков работы своей программы на C не видать. Отключаю использование - все нормально.
Похожая туфта при исользоватнии в главной прогамме переменых описанных static.
После дня мучений, просмотра ассемблерных листингов (все разумно) поменял в установках компилятора тип процессора c 2313 на 26-й - все заработало как положено по стандарту С.
Вспомнил, что в прошлом, на 3-й версии IAR тоже были чудеса, и вылечил такойже заменой типа процессора. Пока не ясно где еще это вылезет.
Если кто встречал чтото подобное, отзовитесь.
Может это тема больше подходит для подфорума IAR, но мне кажется что дело именно в процесоре.