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

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

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

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

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

Date: 2013-07-11 07:39 am (UTC)
From: [identity profile] baramin.livejournal.com
Спасибо! Теперь я знаю больше. Но это подло.

Date: 2013-07-11 07:39 am (UTC)
From: [identity profile] baramin.livejournal.com
Да, у меня теперь очень редко видны комментарии - пишу вслепую.

March 2017

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

Style Credit

Expand Cut Tags

No cut tags
Page generated Jul. 20th, 2025 10:09 pm
Powered by Dreamwidth Studios