0

在objective-c文件的结构中声明枚举时出现错误。我最近升级到 LLVM 5,之前没有出现这个错误。我试过 C99 和 C11。有什么想法是错误的,还是以前允许的这种非法语法?

struct LogParams
{
    typedef NS_ENUM (int, Level)    // Error type name does not allow storage class to be specified
    {
        LevelTrace = 0,
        LevelDebug,
        LevelInfo,
        LevelWarn,
        LevelError,
        LevelFatal
    };

    uint64_t time;
};
4

1 回答 1

1

在结构中声明 enum 或 typedef 在 C++ 和 Objective-C++ 翻译中是有效的。

它在 C 或 Objective-C 中是不合法的。

于 2013-07-13T15:54:01.240 回答