Jul. 4th, 2013

baramin: (Default)
Если у вас падает код, значит у вас ошибка.
Компилятор всегда прав.
НО! Верить нельзя никому. Особенно MSVC компилятору.
GCC работает не поперхнувшись.

Указатель
typedef void (PolicyChecker::*FramePolicyFunction)(PolicyAction);

При forward декларации класса считает метод не виртуальным.
При явной декларации - правильно разрешает в виртуальный вызов.

Линкер не дает ошибки (предупреждений не видел тоже). Результат - вынос мозга.
Ассемблер выглядит как попытка вызвать _fastcall, при том что сама функция _stdcall.

Пойду повешусь.

March 2017

S M T W T F S
   1234
567 891011
12131415161718
19202122232425
262728293031 

Page Summary

Style Credit

Expand Cut Tags

No cut tags
Page generated Aug. 19th, 2017 10:17 pm
Powered by Dreamwidth Studios