¿Cómo habilitar los nuevos literales de objetos Objective-C en iOS?
Cuando creo un nuevo proyecto con Xcode 4.4 y agrego estas líneas:
NSDictionary *test = @{ @"key" : @"test value" };
NSString *value = test[@"key"];
NSLog(@"value is: %@", value);
se compila sin advertencias y se ejecuta como se espera.
Al agregar las mismas líneas a un proyecto existente se produce el error del compilador:
NSString *value = test[@"key"]; <-- Expected method to read dictionary element not found on object of type 'NSDictionary *'
Comparé la configuración de construcción objetivo de ambos proyectos, pero nada saltó hacia mí.
Actualizar: El nuevo proyecto que compiló con éxito fue para OSX. Probé otro nuevo para iOS con las líneas anteriores y no se compila, al igual que mi proyecto preexistente (iOS).