Здравствуйте, Константин Л., Вы писали:
КЛ>Вот на это выдается ворнинг:
КЛ>КЛ>char* s = "";
КЛ>+s;
КЛ>
КЛ>Логично было бы выдавать ворнинг и в первом варианте. Собсно, из-за отсутствия ворнинга я пропустил баг, тк между плюсами должно было кое-что стоять.
Во втором варианте warning о другом: о том что expression исполюзуется как statement with no effects. А в первом варианте expression использовался не как statement, а как часть expression'а.
Другими словами, не в «унарности» плюса дело, такой же warning C4552 выдавался бы и на бинарный плюс:
int i = 0;
i + 2;