Suppression de warning pour un fichier
Mala
Membre, Modérateur
J'ai besoin d'intégrer un bout de code open source qui ne répond pas aux "canons" de compilation d'Xcode. Du coup, j'ai le droit à une multitude de warnings.
En cherchant sur la web, j'ai trouvé ça...
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wall"
...
#pragma clang diagnostic pop
...mais ça me supprime seulement 3 warnings et toutes les conversions implictes continuent à faire râler Xcode. Est-ce que quelqu'un aurait une manip efficace pour les faire ignorer à Xcode?
Mots clés:
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
Je crois que je ferais un .h avec ce code, à l'intérieur duquel j'inclurais tous les .h du code " étranger ".
Pas sûr que ce soit la meilleure technique, cela dit.
-Wall, ça fait virer tous les warnings, ou seulement un certain type ? J'ai pas checké, mais je sais que j'ai vu d'autres termes (dans une vieille version de AFNetworking, j'ai du -Wcovered-switch-default par exemple...
Je pensais que -Wall supprimait tous les warning entre le push et le pop mais ça n'est pas la cas. J'ai toujours une ribambelle de warning sur des conversions implicites.
Ceroce, en quoi ta manip empêcherait les warnings?
-w semble tout virer d'après ce lien.
Alors j'ai fini par trouver une solution mais pas via les pragmas qui semblent poser problème à pas mal de monde sur le net. J'ai donc opté pour ajouter le flag de compilation -w directement sur le fichier incriminé.
Sous Xcode 5, il faut aller dans la "target->Build Phases" puis on développe le panel "Compile sources". On clique sur le fichier et un panneau apparait pour ajouter l'option de compilation.
J'avais dans l'idée que tout grouper tous les .h dans un .h qui désactive ce warning ferait que les sources seraient compilées avec tes pragmas.
En y réfléchissant, effectivement, ça ne fonctionne certainement pas puisque les sources sont compilées indépendamment.
Tu peux mettre le flag -fno-objc-arc pour un code qui serait non compatible avec ARC