Я попробовал следующее в Eclipse:
-  
if (false) {}: предупреждение "мертвый код" -  
while (false) {}: ошибка компиляции 'недостижимый код' 
Мне было интересно, есть ли настоящая "причина" для этой разницы. Я уже нашел это...
Ошибка компилятора кода недоступна
... но почему бы не разрешить while (false) для той же цели отладки?