IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Autres éditeurs Discussion :

gcc, disable warnings ?


Sujet :

Autres éditeurs

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    116
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Avril 2007
    Messages : 116
    Par défaut gcc, disable warnings ?
    Bonjour,

    y'a t-il un moyen avec gcc4.1.2 de ne pas faire apparaitre certains warning a la compilation ?

    merci

  2. #2
    Membre émérite Avatar de Jérémy Lefevre
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juin 2004
    Messages
    898
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Luxembourg

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2004
    Messages : 898
    Par défaut
    quel warning veux tu faire disparaitre?

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    116
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Avril 2007
    Messages : 116
    Par défaut
    des warning du type "unused variables ...".
    J'ai compilé avec -Wall, je pourrais le désactiver mais tous les autres warning sont importants je veux les voir apparaitre.
    Vous pourriez me dire "ben utilises tes variables !!" oui ... mais c'est souvent du code qui ne vas pas forcément être utile tout de suite mais qui le sera a plus ou moins long terme.

    merci

  4. #4
    Membre émérite Avatar de Jérémy Lefevre
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juin 2004
    Messages
    898
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Luxembourg

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2004
    Messages : 898
    Par défaut
    ok alors l'option l'option -W te permet d'afficher des warning Wall ( all ) te permet d'afficher tout les warning. il exist cependant d'autre flag comme :

    -W

    Génère un warning dans les cas suivants :
    • pour certaines utilisations délictueuses de setjmp(3) et longjmp(3),
    • quand une fonction qui devrait renvoyer une valeur la renvoie dans certains cas et pas d'autres ;
    • quand on utilise une expression composée (plusieurs expressions séparées par des virgules), et que certaines expressions dans l'expression composée n'ont pas d'effet sur le résultat final ;
    • quand une valeur non signée est comparée avec 0 à l'aide de > ou <= :
    • quand une fonction déclare un paramètre sans type et que le compilateur se voit obligé de lui donner le type automatique int
    -Wimplicit-int

    Provoque un warning quand une déclaration ne mentionne pas le type de l'objet déclaré, et oblige le compilateur à choisir le type par défaut int

    -Wimplicit-function-declaration

    Provoque un warning quand une fonction est utilisée avant d'être déclarée. Dans ce cas, en effet, le compilateur génère automatiquement un prototype pour la fonction utilisée, mais on ne peut jamais être sûr que ce prototype correspond vraiment à la fonction.

    -Wimplicit

    Synonyme de -Wimplicit-int et -Wimplicit-function-delcaration mis ensemble.

    -Wmain

    Génère un warning quand la fonction main est déclarée d'une manière bizarre, c'est-à-dire différente de la manière standard. La déclaration standard de la fonction main étant une fonction exportée (donc non statique), de type de retour int, et prenant zéro ou deux arguments.

    -Wreturn-type

    Génère un warning dans les cas suivants :
    • une fonction est définie sans type de retour, qui devient automatiquement int,
    • une instruction return est invoquée sans argument dans une fonction dont le type de retour n'est pas void
    • une fonction de type de retour non-void se termine sans instruction return
    -Wunused

    Génère un warning quand une variable est déclarée mais jamais utilisée, quand une fonction déclarée static n'est jamais définie, ou quand une instruction effectue un calcul qui n'est pas utilisé par la suite.

    -Wswitch

    Théoriquement, vu que la norme ne permet pas d'utiliser switch, nous ne devrions pasa voir besoin d'utiliser cette option. Néanmoins, elle reste intéressante : elle génère un warning quand une instruction switch prend une énumération en paramètre mais ne teste pas tous les cas possibles pour cette énumération.

    -Wcomment

    Génère un warning quand un commentaire contient «/*»

    -Wtrigraphs

    Génère un warning quand un trigraphe ANSI est utilisé (dans le cas où les trigraphes sont autorisés par -ansi).

    -Wformat

    Autorise le compilateur à vérifier les arguments de printf(3), scanf(3) et fonctions apparentées, pour vérifier la correspondance entre la chaîne de format indiquée en premier paramètre et les arguments suivants.

    -Wchar-subscripts

    Avertit quand on utilise une valeur de type char comme indice pour accéder à un tableau.

    -O -Wuninitialized

    Génère un warning quand on utilise une variable qui n'a peut-être pas encore reçu de valeur. Cette option s'utilise avec (au moins) -O.

    -Wparentheses

    Génère des warnings à des endroits où le compilateur soupçonne le programmeur d'avoir fait une faute de priorité, ou encore quand la valeur d'une assignation est utilisée comme condition dans un test.

    -Wtraditional

    Génère des warnings pour certaines constructions qui ont un effet différent en C ANSI qu'en C «traditionnel».

    -Wshadow

    Provoque un warning quand une déclaration écrase une autre déclaration précédente.

    -Wpointer-arith

    Provoque des warnings lors de calculs douteux avec des pointeurs.

    -Wcast-qual

    Cette option semble être activée par défaut. Provoque un warning quand on enlève des attributs d'un pointeur par transtypage.

    -Wcast-align

    Provoque un warning quand on risque de changer l'alignement d'un type. Ce cas arrive quand on transforme un pointeur sur un type de base en un pointeur sur un type de base plus large, sur les architectures où les types de base doivent être alignés..

    -Wwrite-strings

    Fait en sorte que les chaînes de caractères soient de type const char[taille]. Ainsi, les tentatives d'accès en écriture dans la chaîne sont détectées. Ces tentatives sont théoriquement illégales, étant donné que les chaînes de caractères sont stoquées dans des parties mémoire en lecture-seule.

    -Waggregate-return

    Provoque un warning quand une fonction renvoie une structure ou une union

    -Wstrict-prototypes

    Provoque un warning quand une fonction est déclarée ou définie sans indiquer le type de ses arguments.

    -Wmissing-prototypes

    Provoque un warning quand une fonction exportée (globale) est définie sans avoir été prototypée auparavant.

    -Wmissing-declarations

    Comme -Wmissing-prototypes, mais ne nécessite qu'une déclaration (le prototype peut ne pas être complet).

    -Wredundant-decls

    Provoque un warning quand une fonction est redéclarée, même quand la déclaration est identique.

    -Wnested-externs

    Provoque un warning quand on importe une variable (ou fonction) globale (à l'aide de export) depuis le corps d'une fonction.

    -Werror

    Arrête la compilation quand un warning est généré.


    Voila bon courage ....

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    116
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Avril 2007
    Messages : 116
    Par défaut
    j'ésperais un petit #pragma warning() a la visual ...

    en tout cas merci pour la réponse complète je vais voir ca tout de suite

  6. #6
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 395
    Par défaut
    Essaie -Wnounused ou -Wno-unused (avant ou après le -Wall, je ne sais plus).

    PS: -Wall est bien loin d'activer tous les Warnings. Une bonne partie ne sont activés qu'avec -Wextra en plus, et même cela ne suffit pas à activer -Wwrite-strings, qu'il faut mettre explicitement.

    De plus, beaucoup de warnings n'apparaissent que si l'on tente d'optimiser (-O2 minimum)...
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [gcc/warning] implicit declaration of function ‘close’
    Par TabrisLeFol dans le forum Réseau
    Réponses: 4
    Dernier message: 09/01/2007, 20h48
  2. Réponses: 3
    Dernier message: 18/10/2006, 20h42
  3. gcc - maximum de warnings ?
    Par Tex-Twil dans le forum Autres éditeurs
    Réponses: 8
    Dernier message: 09/10/2006, 15h11
  4. [gcc][bug?] warning: will never be executed
    Par PRomu@ld dans le forum Autres éditeurs
    Réponses: 16
    Dernier message: 22/08/2006, 16h58
  5. [gcc] Configuration de warning stricte
    Par Gruik dans le forum C
    Réponses: 5
    Dernier message: 26/05/2006, 19h16

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo