ReAl (10.07.2007 19:50, просмотров: 1) ответил dxp на Насколько я понимаю, тут имеет место баг комплятора .
avr-gcc тоже немного веселится в этом месте, но несколько по другому. в зависимости от версии и оптимизации может выполнить деструктор крит. секции до зачитывания состояния события в IsSignaled().
Железно помогает сделать volatile поле состояние события.
Собственно, ему более подходит volatile, чем критической секции, так как оно действительно можеть меняться "откуда-то".