

iOSでGameKitを使用してGameCenterのランキング機能を使ったアプリを作っています。  
使用言語はObjective-Cです。  
Xcode７まではビルド通って、アプリが実行できました。  
Xcode8にしてビルドすると、自分のファイルでは無いファイルでビルドエラーが出ます。

[code]

    Lexical or Preprocessor Issue Group
    
    /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS10.0.sdk/System/Library/Frameworks/GameKit.framework/Headers/GKGameSessionEventListener.h:23:102: Too few arguments provided to function-like macro invocation
    
[/code]

エラーが起きているのは

GKGameSessionEventListener.h の

[code]

    + (void)addEventListener:(NSObject<GKGameSessionEventListener> *)listener NS_SWIFT_NAME(add(listener:)) NS_AVAILABLE(10_12, 10_0) __WATCHOS_PROHIBITED;
    
[/code]

部分です。

このビルドエラーを回避する方法はありますでしょうか？


CC BY-SA 3.0
2016-09-16T05:12:43.860
28920
2016-10-05T07:32:35.793
2016-09-16T07:34:37.240
5519
2638
question
ios objective-c xcode iphone
XCode 8でGameKit.frameworkでのビルドエラー


自己解決しました。お役に立つかどうかわかりませんが、報告します。

自分用のマクロ add というものを定義していました。  
  
`#define add(data, val, limit) {if(++data >= limit)data = limit;}`

このaddをコメントアウトしました。  
それにより、このビルドエラーは出なくなりました。


CC BY-SA 3.0
2016-10-05T07:21:40.230
29371
2016-10-05T07:32:35.793
2016-10-05T07:32:35.793
2638
2638
28920
answer