Цитата(yuragv @ Jun 14 2011, 21:33)

Иар 5.10 для MSP430
У меня 5.30, ошибок нет.
Цитата(yuragv @ Jun 14 2011, 21:33)

компилятор выдает Internal Error на
INLINE inline void SetISRStackPointer() { __set_SP_register( reinterpret_cast<word>(__segment_end("CSTACK")) ); }
подскажите как по другому можно написать?
Что по-другому написать? Ошибка возникает внутри компилятора, вы тут ничего сделать не сможете, кроме замены компилятора. А вообще, сильно не рекомендую использовать переключение на стек прерываний на процессорах, в которых такая возможность не поддерживается аппаратно.
Цитата(yuragv @ Jun 14 2011, 21:33)

Можно обойти ошибку, выбрав уровень оптимизации Low. но тогда на все инлайн функции
выдает предупреждения - слишком низкий уровень оптимизации.
чем это чревато?
Чревато ошибками. Низкий уровень оптимизации приводит прежде всего к размещению переменных не в регистрах, а в стеке, и если это размещение происходит до переключения стеков, программа ляжет. Поэтому и не рекомендую это использовать без крайней необходимости.
«Отыщи всему начало, и ты многое поймёшь» К. Прутков