Предупреждение компилятора (уровень 1) C4788
"идентификатор": идентификатор усечен до символов "число"
Компилятор ограничивает максимальную длину, допустимую для имени функции. Когда компилятор создает funclets для кода EH/SEH, он формирует имя funclet путем подготовки имени функции с некоторым текстом, например "__catch", "__unwind" или другой строкой.
Полученное имя funclet может быть слишком длинным, и компилятор усечет его и создаст C4788.
Чтобы устранить это предупреждение, сократите исходное имя функции. Если функция является шаблоном или методом функции C++, используйте typedef для части имени. Например:
C1<x, y, z<T>>::C2<a,b,c>::f
можно заменить следующими способами:
typedef C1<x, y, z<T>>::C2<a,b,c> new_class ;
new_class::f
Это предупреждение возникает только в компиляторе x64.