Следует ли отключить предупреждение MSVC C4138 ("* / 'найдено за пределами комментария")? - PullRequest
0 голосов
/ 25 февраля 2019

При компиляции следующего кода с msvc2017

void Foo::bar(A */*a*/)

я получаю это предупреждение:

foo.cpp:38: warning: C4138: '*/' found outside of comment

Я могу исправить это, добавив пробел после звездочки:

void Foo::bar(A * /*a*/)

однако, мне пришлось бы делать это в нескольких местах, и если я когда-либо раскомментирую параметр, стиль кодирования, который я использую, не будет соблюдаться из-за дополнительного пробела.

Поскольку яне получайте того же предупреждения с gcc или clang, мне интересно, если это особенность MSVC, которую можно безопасно отключить.

1 Ответ

0 голосов
/ 25 февраля 2019

Да, это необоснованное предупреждение;нет ничего плохого в коде, который вы представляете.Фактически, комментирование имен переменных в определениях функций может быть полезным, например, когда вы хотите подавить предупреждения о "неиспользуемой переменной" в списках параметров функции, которые являются самодокументируемыми.

  1. Отключите предупреждение и положитесь на компилятор, чтобы выдать диагностику, если действительно в вашем коде есть несоответствующий блок комментариев.

  2. Отправить отчет об ошибке поставщику компилятора.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...