'expression1' : relational expression as switch expression; possible confusion with 'expression2'
A switch statement uses a relational expression as its control expression, which results in a Boolean value for the case statements. Did you mean expression2? The following sample generates C4145:
void main() { int i = 0; switch(i == 1) { // C4145, use i instead of i == 1 to resolve case 1: break; default: break; } }