Receiver type is forward declaration

core-data, ios, ios7, objective-c

Solution

You must import CoreData/CoreData.h in the file Supporting Files/YourApp-Prefix.pch:

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

Problem

I have this code (along with other stuff): ``` - (NSManagedObjectContext *) managedObjectContext { assert([NSThread isMainThread]); if (_managedObjectContext != nil) { return _managedObjectContext; } NSPersistentStoreCoordinator *coordinator = [self persistentStoreCoordinator]; if (coordinator != nil) { _managedObjectContext = [[NSManagedObjectContext alloc] init]; [_managedObjectContext setPersistentStoreCoordinator: coordinator]; } return _managedObjectContext; } ``` These lines are giving me errors that class message is a forward declaration: ``` _managedObjectContext = [[NSManagedObjectContext alloc] init]; [_managedObjectContext setPersistentStoreCoordinator: coordinator]; ``` What is this and how do I fix it?

Original source