XCode GCC-4.0 vs 4.2

Joh*_*ith 5 xcode gcc objective-c objective-c++

我刚刚将编译器选项从4.0更改为4.2.

现在我收到一个错误:

jump to case label crosses initialization of 'const char* selectorName'
Run Code Online (Sandbox Code Playgroud)

它在4.0中运行良好

有任何想法吗?

Vla*_*mir 4

只是一个猜测- 您const char*在 switch-case 语句中声明了变量(可能) - 您应该将该 case 包装在 {} 中来解决这个问题。

// error
case 1:
   const char* a = ... 
   break; 

// OK
case 1:{
   const char* a = ... 
}
   break; 
Run Code Online (Sandbox Code Playgroud)