我有一个在 Xcode 3.2.x 下运行良好的项目。在 Xcode 4.2 下,编译时出现以下错误:
"error: unknown type name 'BOOL'; did you mean 'BOOL'?"
我可以右击有问题的BOOL
Xcode 将跳转到 Apple 的定义。 BOOL
在 <objc/objc.h>
中定义,所以我将它包含在我的源文件中(尽管我使用的是带有 UIKit.h 和 Foundation.h 的预编译头文件)。仍然没有喜悦 - 编译错误仍然存在。
任何有关 Xcode 4 变通办法的想法都将不胜感激。 Google 提供 0 次点击。
编辑:添加了有问题的代码以消除任何歧义。
// AppConstants.h
typedef enum { ThreadPriorityLow = NSOperationQueuePriorityLow, ThreadPriorityNormal = NSOperationQueuePriorityNormal,
ThreadPriorityHigh = NSOperationQueuePriorityHigh, ThreadPriorityDefault = ThreadPriorityNormal } ThreadPriority;
static inline BOOL IsValidThreadPriority(ThreadPriority priority)
{
return priority == ThreadPriorityLow || priority == ThreadPriorityNormal || priority == ThreadPriorityHigh;
}
编辑:在查看 Emacs 和 HexFiend 下的源代码以查找非法字符并没有发现任何内容(源代码是 8 位干净的)之后,我倾向于认为这是由于 Apple 方面的某种错误造成的。
最佳答案
一个大胆的猜测是你的行中出现了一个特殊字符,你可能在 XCode 3 中使用了一些特殊的字符编码并在 XCode 4 中打开文件触发了这个错误。
要查看此答案是否正确,我会建议您 cat
或 vim
终端中的文件,并查看是否有一些通配符位于该特定行。
让我们知道这是否有效
关于objective-c - Xcode 4 : "error: unknown type name ' BOOL'; did you mean 'BOOL' ?“,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7751411/