Я только что изменил опцию компилятора с 4.0 на 4.2.
Теперь я получаю сообщение об ошибке:
jump to case label crosses initialization of 'const char* selectorName'
Отлично работает в 4.0
Есть идеи?
Просто предположение - вы объявляете переменную (вероятно, const char*) в 1 из ваших операторов регистра переключателя - вы должны заключить этот случай в {}, чтобы это исправить.
const char*
// error case 1: const char* a = ... break; // OK case 1:{ const char* a = ... } break;
Вы, вероятно, объявляете переменную внутри регистра, не заключая ее в фигурную скобку:
case foo: const char* selectorName; // ... break;
Должно быть:
case foo: { const char* selectorName; // ... break; }