ios objective-c xcode macros c-preprocessor

ios - Xcode 8 y Macros de preprocesador



objective-c c-preprocessor (2)

Prueba primero "Limpiar compilación" ... si eso no funciona, prueba

En las macros de preprocesador no utilizadas en encabezados precompilados hay dos subtítulos

Macros de preprocesador no utilizados en encabezados precompilados
depurar +
lanzamiento +

Con una ventaja que aparece al lado cuando pasas el cursor sobre ellos. Presiona el signo más en ambos y deberías obtener:

Macros de preprocesador no utilizados en encabezados precompilados
depurar +
Cualquier arquitectura | Cualquier SDK
lanzamiento +
Cualquier arquitectura | Cualquier SDK

No necesita ingresar nada aquí después de presionar +. Una vez que haya agregado estas dos entradas adicionales, intente con otra compilación limpia.

Desde la última actualización de XCode 8.1 (Build 8B62) tengo problemas extraños con el resaltado de sintaxis / terminación del código en conexión con las macros del preprocesador.

Trabajaron muy bien con la semilla XCode 8 GM que he estado usando antes de la actualización, pero ahora XCode no reconoce el objetivo correcto al seleccionar un esquema. Por ejemplo, tengo una biblioteca estática de controlador con 2 objetivos, uno para iOS y el otro para Apple Watch. En cada una de ellas utilizo una macro (APP / WATCH) para operaciones específicas de la plataforma. Pero cuando estoy en el objetivo de la aplicación, el editor de Xcode resalta el código como si fuera el objetivo de VERIFICACIÓN, mientras que el código real para este objetivo no tiene resaltado ni finalización automática. Xcode parece detectar al azar macros de diferentes objetivos. El compilador, por otro lado, siempre detecta el código correcto y funciona 100% bien, por lo que no hay nada de malo en el código. Es solo el editor.

Además, cuando inicio Xcode, el código se resalta durante aproximadamente un segundo y luego vuelve a aparecer todo el texto en blanco. La eliminación y la lectura de todos los esquemas no funcionó, limpiar y eliminar los datos derivados tampoco tiene ningún efecto sobre esto. ¿Alguien tiene el mismo problema o incluso una solución para esto?

EDITAR: Jugué un poco con objetivos y macros y descubrí que Xcode solo toma macro de un objetivo y descarta todos los demás, sin importar qué objetivo se seleccione. ¿Alguna ayuda?


Fue un error real en XCode 8. Con XCode 9 (a partir de hoy, septiembre de 2017 beta 6), finalmente se resuelve.