Comments 16
Единорожек тут выглядит так, будто ему дали пинка под зад и он летит :D
+5
На rdesktop уже все забили, и чинить его, наверное, никто не будет.
Сейчас актуален FreeRDP
Сейчас актуален FreeRDP
+1
А rrdtool не хотите проверить? Широко известная в узких кругах программа с 20 летней историей.
0
UFO just landed and posted this here
А льзя ли сделать, чтоб конструкция «break; case» не вызывала срабатывания V622?
switch ( value )
{
break; case 1: func1();
break; case 2: func2();
break; case 3: func3();
}
0
Анализатор тут прав, зачем так писать? Возможно, для кого-то это даже красиво, но не более.
0
Так писать можно не для красоты, а для того, чтоб не попадать в ситуацию «ой я опять забыл break». Или когда в кейсе был написан return, затем код изменился, но break добавить забыли. С тех пор, как я начал так писать в своих личных проектах, ни разу не возникло типичных для switch проблем.
Зато буквально пару недель назад нашёл несколько проблем во вложенных свитчах при код-ревью одного проекта на работе. В своё время наши парни не захотели писать «break; case», типа выглядит плохо, и вот результат.
Зато буквально пару недель назад нашёл несколько проблем во вложенных свитчах при код-ревью одного проекта на работе. В своё время наши парни не захотели писать «break; case», типа выглядит плохо, и вот результат.
+1
Предлагаю вписать в файл конфигурации диагностик (.pvsconfig) комментарий:
См. раздел "Подавление ложных предупреждений".
//-V:break;case:622
См. раздел "Подавление ложных предупреждений".
0
Да я так и сделал, просто хотел уточнить насчёт данного случая. Анализатор ругается на первый break, но ведь реально там ошибки нет.
0
Почему нет? Быть может должно было быть:
switch ( value )
{
case 0: func0();
break; case 1: func1();
break; case 2: func2();
break; case 3: func3();
break;
}
0
Это просто переформатированный обычный switch. Если перед «case 0» добавить ещё один кейс, то у нас проблемы, потому что скорее всего break никто не добавит. Есть ли хоть какая-нибудь причина не писать break перед первым case?
Я сейчас серьезно спрашиваю, интересно разобраться.
Я сейчас серьезно спрашиваю, интересно разобраться.
0
Я сейчас посмотрел ещё раз что делает V622 и понимаю, что эта штука именно для диагностики случая, когда потеряли первый case. Я сначала думал, что тут про любой кейс в свитче. Насколько я понимаю, есть другие диагностические сообщения для свитча, поэтому вопрос снимается, сорри за то, что побеспокоил.
+1
а как по мне, так фактически это Dead Code, этот джамп (если он не будет удалён компилятором) недостижим… Но я бы игнорировал в случае если это break — выглядит как хорошый оверрайд.
+1
> Но я бы игнорировал в случае если это break — выглядит как хорошый оверрайд.
У нас 100500 исключений, чтобы не ругаться на определённые стили. Но всё предвидеть невозможно и не всегда разумно.
У нас 100500 исключений, чтобы не ругаться на определённые стили. Но всё предвидеть невозможно и не всегда разумно.
0
Sign up to leave a comment.
Проверка rdesktop и xrdp с помощью анализатора PVS-Studio