Через небольшую опечатку я случайно нашел эту конструкцию:
int main(void) {
char foo = 'c';
switch(foo)
{
printf("Cant Touch This\n"); // This line is Unreachable
case 'a': printf("A\n"); break;
case 'b': printf("B\n"); break;
case 'c': printf("C\n"); break;
case 'd': printf("D\n"); break;
}
return 0;
}
Кажется, что printf
в верхней части выражения switch
действителен, но также полностью недоступен.
Я получил чистую компиляцию, даже не предупредив о недостижимом коде, но это кажется бессмысленным.
Если компилятор помечен как недостижимый код?
Это вообще служит какой-либо цели?