Suprimir la advertencia del linker: "Meta method X en la categoría de Y anula el método de la class en Z"

Estoy usando intencionalmente una categoría para anular un método que sé que ya está implementado en una class primaria. Sé que esto suele ser un signo de layout débil, por favor, sin conferencias, pero en este caso no puedo subclass limpiamente. Sé que swizzling también puede ser una opción.

Pero por ahora, ¿cómo puedo suprimir esta advertencia? llvm arroja una advertencia de comstackdor que puedo desactivar ( diagnostic ignonetworking "-Wobjc-protocol-method-implementation" ). Pero luego el linker también se queja.

Esto hace una pregunta similar pero estaba buscando una respuesta diferente. ¿Cómo puedo decirle al linker que no se queje?

Gracias.

Desafortunadamente, no hay una buena respuesta.

La única solución basada en linkeres es pasar -Wl,-w en el time de enlace; es decir, dígale a Clang que pase la opción -w al linker. Esto suprimirá todas las advertencias del linker, incluyendo potencialmente las que aún te gustaría ver.

Una solución de alto nivel es canalizar la salida del linker a través de grep -v . Los detalles de esa solución tenderían a depender en gran medida de su shell y su sistema de compilation.