Занимаясь продвижением анализатора Viva64 (из состава PVS-Studio) мы часто комментируем ключ /Wp64 из Microsoft Visual C++. Кто не в курсе, напомню, что этот ключ появился в Visual Studio 2003...
Продолжаем цикл рассказов о 64-битных ошибках, обнаруживаемых в реальных приложениях. Время идет, потребности в потребляемой памяти растут и пришел момент, когда кто-то решил отсортировать...
В предыдущей записи блога я обещал рассказать, почему сложно демонстрировать 64-битные ошибки на простых примерах. Разговор касался operator[] и я говорил, что в простых случая может работать...
В PVS-Studio 3.43 был пересмотрен подход в обнаружении анализатором Viva64 ошибок в классах, представляющих собой контейнеры (массивы). Ранее мы придерживались позиции, что если в классе...
Разрабатывая анализатор Viva64, предназначенный для поиска 64-битных ошибок, я иногда сталкиваюсь с интересными моментами поведения кода. Хочу показать один пример, который с практической...
Тестируя работу анализатора PVS-Studio на одном из проектов, обнаружили интересную ошибку. Данная ошибка не имеет отношения к 64-битной теме, хотя ее последствия диагностируются как таковые. Но...
Явные приведения типа часто маскируют ошибки, связанные с изменением типа указателя. Одной из таких ошибок является превращение указателя на 32-битные объекты в указатель на 64-битные...
В языке Си можно использовать функции без их предварительного объявления. Обращаю внимание, что речь идет именно о языке Си, а не Си++. Конечно, данная возможность опасна. Рассмотрим связанный с...