CoreDataを追加したらARCのエラーが出た

 
久々!約2年ぶり!!

ARCがデフォルトONになってからの現象でしょうか。
新規プロジェクト作成時にUse Core Dataのチェックせずに作って、後になって追加する時にハマりました。

既存のプロジェクトへUse Core Dataオンにしたサンプルからコードをコピペしてみたところ、

ARC Semantic Issue
Receiver type 'NSManagedObjectContext' for instance message is a forward declaration

 
とか言われてコンパイルが通りませんでした…

ぱっと見エラーと関係なさそうなのですが、プリコンパイルヘッダの修正が漏れていました。

#ifdef __OBJC__
  #import <UIKit/UIKit.h>
  #import <Foundation/Foundation.h>
  #import <CoreData/CoreData.h>
#endif

 
pchファイルにCoreDataのヘッダを追加してやればOKでした。
pchファイルはSupporting Filesの中にいます。


参考
https://github.com/ideashower/ShareKit/issues/259