Цитата(cyrax0 @ Jan 15 2015, 01:43)

Если бы этот вариант подходил, я бы здесь не писал.
Ну Вам же уже подсказали, что при ошибках, состояние ошибки сохраняется в
errno (я сам не уверен что для всех желаемых Вами случаев).
Если Вам нужно именно прерывание, в чем проблема? В Вашем STM32F407 отсутствует MPU?
Через MPU защищаете некую область памяти от записи, линкуете туда
errno и получаете прерывание MPU каждый раз при попытке записи в
errno.
Фсё.
В особо извращённом случае, можно
errno смаппировать на регистр данных какой-нить неиспользуемой периферии, например - буфер передаваемых данных SPI и разрешить прерывание на
завершение передачи от этой периферии.
Цитата(_Pasha @ Jan 15 2015, 10:32)

Собственно можно пойти далеко в обход: написать нужный функционал на плюсах, но при этом переопределить оператор =
Ну да, и как прикажете быть например с:
a = log(-1) + 1 ?
Если идти в обход плюсами, то нужно описать
errno как класс, перегрузить оператор присвоения ему и внутрь этого перегруженного оператора вставить вызов обработчика ошибки.
Но это возможно только если не используется предкомпилённых математических библиотек, а все они компилятся в исходниках с проектом.