forceinline полезен, если вы хотите в дальнейшем защитить код от анализа и модификации с помощью vmprotect, starforce, themida и так далее. Но если инлайнить всё подряд, чтобы "верхние" методы получались порядка мегабайта по размеру, то появляется реальный шанс поймать баг компилятора. Наверное потому, что такие крайности не тестируются. А разобраться, что происходит, оказывается не просто из-за размера получившегося метода. Дважды сталкивался с ошибками компиляции в msvc, оба раза причиной были многоуровневая вложенность и шаблоны.
если инлайнить слишком много, то начиная с некоторого размера и сложности получаемого кода компилятор перестаёт что либо оптимизировать
forceinline полезен, если вы хотите в дальнейшем защитить код от анализа и модификации с помощью vmprotect, starforce, themida и так далее. Но если инлайнить всё подряд, чтобы "верхние" методы получались порядка мегабайта по размеру, то появляется реальный шанс поймать баг компилятора. Наверное потому, что такие крайности не тестируются. А разобраться, что происходит, оказывается не просто из-за размера получившегося метода. Дважды сталкивался с ошибками компиляции в msvc, оба раза причиной были многоуровневая вложенность и шаблоны.
Откуда автор может знать, в чём обвиняют профессора? Достоверная ли это информация?