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

C Discussion :

structure has no mumber named 'annee'.


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    233
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 233
    Par défaut structure has no mumber named 'annee'.
    salut tous le monde,
    j'utilise une structure DATE:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    typedef struct
    {
       unsigned char jour    [2];
       unsigned char mois    [2];
       unsigned char annee   [2];
       unsigned char heure   [2];
       unsigned char minute  [2];
       unsigned char seconde [2];
    } DATE;
    cette structure est déclarée dans un fichier oem.h que j'ai inclu dans mon fichier entry.c pour pouvoir utiliser la structure. mais lors de la compilation il m'affiche un message d'erreur: structure has no number named 'annee'.
    quelqu'un peut m'aider?

    merci

  2. #2
    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
    tu as essayé en donnant un autre nom à ta structure ?
    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.

  3. #3
    Rédacteur
    Avatar de Franck.H
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2004
    Messages
    6 951
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Service public

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6 951
    Par défaut
    On peut voir dans quel contexte et d quelle façon tu appel ce membre de ta structure ? Un peu plus de code serais le bienvenue
    Mon Site
    Ma bibliothèque de gestion des chaînes de caractères en C

    L'imagination est plus importante que le savoir. A. Einstein

    Je ne répond à aucune question technique par MP, merci d'avance !

  4. #4
    Membre chevronné Avatar de Mayti4
    Inscrit en
    Février 2004
    Messages
    442
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 442
    Par défaut
    Citation Envoyé par Médinoc
    tu as essayé en donnant un autre nom à ta structure ?

  5. #5
    Membre Expert
    Inscrit en
    Décembre 2004
    Messages
    1 478
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 478
    Par défaut
    Citation Envoyé par Mayti4
    tu as essayé en donnant un autre nom à ta structure ?
    S'il y avait deux typedefs avec le meme nom, le compilateur se plaindrait d'une redefinition. La seule solution, c'est que le fichier oem.h que moon93 inclut n'est pas celui qu'il croit...

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    233
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 233
    Par défaut
    j'ai changé le nom de la structure , j'ai met DATE1 et j'au eu ce message d'erreur:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
     
    In file included from C:/SDK/inc/ta_appli.h:1,
                     from C:/SDK/inc/SDK30.H:2,
                     from src/Entry.c:26:
    C:/SDK/inc/oem.h:462: error: parse error before '*' token
    C:/SDK/inc/oem.h:463: error: parse error before '*' token
    C:/SDK/inc/oem.h:464: error: parse error before '*' token
    C:/SDK/inc/oem.h:465: error: parse error before "DATE"
    C:/SDK/inc/oem.h:806: error: parse error before '*' token
    C:/SDK/inc/oem.h:807: error: parse error before '*' token
    C:/SDK/inc/oem.h:894: error: parse error before '*' token
    In file included from C:/SDK/inc/SDK30.H:16,
                     from src/Entry.c:26:
    C:/SDK/inc/services.h:119: error: parse error before "DATE"
    C:/SDK/inc/services.h:125: error: parse error before '*' token
    C:/SDK/inc/services.h:126: error: parse error before '*' token
    C:/SDK/inc/services.h:128: error: parse error before '*' token
    C:/SDK/inc/services.h:132: error: parse error before '*' token
    C:/SDK/inc/services.h:133: error: parse error before "DATE"
    In file included from C:/SDK/inc/SDK30.H:24,
                     from src/Entry.c:26:
    C:/SDK/inc/util_sq.h:78: error: parse error before "DATE"
    C:/SDK/inc/util_sq.h:79: error: parse error before "DATE"
    C:/SDK/inc/util_sq.h:80: error: parse error before "DATE"
    C:/SDK/inc/util_sq.h:81: error: parse error before '*' token
    C:/SDK/inc/util_sq.h:82: error: parse error before "DATE"
    C:/SDK/inc/util_sq.h:83: error: parse error before "DATE"
    C:/SDK/inc/util_sq.h:102: error: parse error before "DATE"
    C:/SDK/inc/util_sq.h:103: error: parse error before '*' token
    src/Entry.c: In function `P_Lire_drSV':
    src/Entry.c:276: error: structure has no member named `annee'
    src/Entry.c:280: error: structure has no member named `annee'
    src/Entry.c:281: error: structure has no member named `mois'
    src/Entry.c:282: error: structure has no member named `jour'
    src/Entry.c:320: warning: implicit declaration of function `MAJ_Donnees_PS'
    src/Entry.c:323: warning: implicit declaration of function `MAJ_Donnees_DroitsVitale'
    src/Entry.c: In function `FFMS_Menu':
    src/Entry.c:593: warning: implicit declaration of function `TEST_SWIPE'
    make: *** [obj_gnu\Entry.o] Error 1
    j'ai verifié ce qu'il y a dans la ligne :C:/SDK/inc/oem.h:462; y a pas de token '*'!!!!

  7. #7
    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
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    src/Entry.c:276: error: structure has no member named `annee'
    src/Entry.c:280: error: structure has no member named `annee'
    src/Entry.c:281: error: structure has no member named `mois'
    src/Entry.c:282: error: structure has no member named `jour'
    Ces erreurs montrent bien que le compilo connait le type de structure auquel tu accède à ces lignes.
    Alors soit DATE est déclaré entretemps, soit la structure en question n'est pas une DATE.
    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.

  8. #8
    Membre émérite Avatar de homeostasie
    Homme Profil pro
    Inscrit en
    Mai 2005
    Messages
    939
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 939
    Par défaut
    Il est possible que t'es fait une faute de frappe dans ton .c quand tu te sers de ta structure et notamment lorsque tu désires sauvegarder dans DATE.annee

  9. #9
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    233
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 233
    Par défaut
    je déclare une variable de type DATE:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    unsigned char P_Lire_drSV(unsigned char *code, unsigned char *contexte_cps, DATE *DateSyst, NO_SEGMENT mynoappli)
    et je l'utilise:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    ...
    memcpy(&ucEmissMessage[63],&(DateSyst->annee),2);
      memcpy(&ucEmissMessage[65],&(DateSyst->mois),2);
      memcpy(&ucEmissMessage[67],&(DateSyst->jour),2);
    ...
    !!???

  10. #10
    Membre Expert
    Inscrit en
    Décembre 2004
    Messages
    1 478
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 478
    Par défaut
    structure has no number named 'annee'.
    Ce doit etre member, pas number.

    Sinon, tu n'as pas mis un accent sur annee dans ton typedef ?

  11. #11
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    233
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 233
    Par défaut
    non, pad d'accent sur annee

  12. #12
    Expert confirmé

    Avatar de fearyourself
    Homme Profil pro
    Ingénieur Informaticien Senior
    Inscrit en
    Décembre 2005
    Messages
    5 121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Ingénieur Informaticien Senior
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2005
    Messages : 5 121
    Par défaut
    Comme toujours, un code minimal, compilable (bon je rigole), qui présente le problème...

    Jc

  13. #13
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    233
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 233
    Par défaut
    j'ai le meme problème aussi avecune definition dans un fichier message.h
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    #define LG_CONTEXTE    43
    et j'ai appelé LG_CONTEXTE depuis mon entry.c qui contien biensur include"message.h"!!!!!

  14. #14
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut
    Citation Envoyé par moon93
    mais lors de la compilation il m'affiche un message d'erreur: structure has no number named 'annee'.
    quelqu'un peut m'aider?
    Oui. Montre le code minimum mais complet qui provoque cette erreur.

  15. #15
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    233
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 233
    Par défaut
    dans la fonction
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    unsigned char P_Lire_drSV(unsigned char *code, unsigned char *contexte_cps, DATE *DateSyst, NO_SEGMENT mynoappli)
    je créer une instance de la structure DATE(DATE *DateSyst) définie dans le fichier OEM.h.
    les fichiers inclus sont:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    #include "SDK30.H"
    #include "message.h"
    #include "OEM.h"
    et le bou de code qui cause le problème est:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    ...
    memcpy(&ucEmissMessage[63],&(DateSyst->annee),2);
      memcpy(&ucEmissMessage[65],&(DateSyst->mois),2);
      memcpy(&ucEmissMessage[67],&(DateSyst->jour),2);
    je ne sais pas si j'était clair ou non,

  16. #16
    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
    Quelle partie de "minimum mais complet" ne comprends-tu pas ?
    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.

  17. #17
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    233
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 233
    Par défaut
    voila c'est la fonction dans laquelle, j'instance la structure et je l'utilise:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
     
    unsigned char P_Lire_drSV(unsigned char *code, unsigned char *contexte_cps, DATE *DateSyst, NO_SEGMENT mynoappli)
    {
      unsigned char  stat;
      unsigned char  etat;
      unsigned short cr;
      /*DATE DateSyst;*/
      /*unsigned char   texte[2*16+1];*/ 
     
      etat = 0x00;
      /*read_date (&DateSyst);*/
     
      /* Preparation du message de lecture de la carte SV */
     
     
      memcpy(&ucEmissMessage[6],contexte_cps,LG_CONTEXTE);
     
      memcpy(&ucEmissMessage[49],code,4); /* code porteur */
     
     
     
      if (memcmp(&(DateSyst->annee),"50",2)<0)
    	  memcpy(&ucEmissMessage[61],"20",2);
      else
         memcpy(&ucEmissMessage[61],"19",2);
      memcpy(&ucEmissMessage[63],&(DateSyst->annee),2);
      memcpy(&ucEmissMessage[65],&(DateSyst->mois),2);
      memcpy(&ucEmissMessage[67],&(DateSyst->jour),2);
     
      usLgEmissMessage=69;
     
      /* Ouverture du lecteur carte, si necessaire */
      if (stdcam0()==NULL)
    	 fopen("CAM0","rw");
      else
      {
        fclose(stdcam0());
         fopen("CAM0","rw");
      }   
      /* par defaut la carte */
      cr=CAM0;
      /* Etat du lecteur CAM0 */
      status(stdcam0(),&stat);
      /* pas de carte presente */
      if (!(stat & CAM_PRESENT))
      {
        cr=0;
        printf("%c  CARTE VITALE\n    ARRACHEE",0x1B);
    	 ttestall(0,200);
      }
     
      /* Carte en butee */
      if ((cr & CAM0))
      {
         /* Demande au gestionnaire d'executer l'ordre "Lecture droits Vitale"*/
    	 APPLI_Dialogue(mynoappli,ucEmissMessage,usLgEmissMessage,ucRecepMessage,&usLgRecepMessage);
    	 /* A la sortie de l'EI96, la carte Vitale est hors tension */
    	 /* La fonction APPLI_Dialogue ferme le peripherique CAM0 */
    	 if (ucRecepMessage[0] == 0x00)
    	 {
    	 	/*print_debug("1");*/
    #ifdef LABO
    	 envoi_xmodem(ucRecepMessage+44,usLgRecepMessage-44,'V');
    #endif
    	 	/*print_debug("2");*/
    		 MAJ_Donnees_PS(ucRecepMessage, 44);
     
    		 /* analyse espace mémoire disponible */
    		 if (MAJ_Donnees_DroitsVitale(ucRecepMessage, usLgRecepMessage))
    		 {
    		  etat = 0x01;
    		 }
    	 }
    	 else
    	 {
    		int warning;
    		warning=0;
    		switch (ucRecepMessage[1])
    		{
    		  .....
    		}
    		ttestall (0, 300);
     
    		if (usLgRecepMessage==44)
    		  MAJ_Donnees_PS(ucRecepMessage, 44);
    #ifdef RAPIDO
    		if(warning) {                          
          	if (ucRecepMessage[0] == 0x03) {
    				printf("%cREMONTEE\nDONNEES ADM.",0x1B);
    				ttestall (0, 200);
    #ifdef LABO
    					 envoi_xmodem(ucRecepMessage+1+44,usLgRecepMessage-1-44,'V');
    #endif
    				MAJ_Donnees_PS(ucRecepMessage+1, 44);
     
    			 if (MAJ_Donnees_DroitsVitale(ucRecepMessage+1, usLgRecepMessage))
    			 {
    			  etat = 0x02;
    			 }
    			} else {
    				printf("%cREMONTEE\nDONNEES ADM.",0x1B);
    				ttestall (0, 200);
    				MAJ_Donnees_PS(ucRecepMessage+1, 44);
     
    				/* analyse espace mémoire disponible */
    				if (MAJ_Donnees_DroitsVitale(ucRecepMessage , usLgRecepMessage)) {
    					etat = 0x02;
    				}
    			}
    		}
    #endif
    	 }
      }
     
     
      return etat;
    }

  18. #18
    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
    Si je compile ça tout seul, j'aurais tes erreurs ?
    Ça m'étonnerait...
    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.

  19. #19
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut
    Citation Envoyé par moon93
    je ne sais pas si j'était clair ou non,
    Ben non. C'est pas complet.

    Retire les '&', ce sont des tableaux...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    memcpy (ucEmissMessage + 63, DateSyst->annee, 2);

  20. #20
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    233
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 233
    Par défaut
    j'ai enlevé &, et j'ai eu le message d'erreur:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    src/Entry.c: In function `P_Lire_drSV':
    src/Entry.c:276: error: structure has no member named `annee'
    src/Entry.c:279: warning: passing arg 1 of `memcpy' makes pointer from integer without a cast
    src/Entry.c:280: error: structure has no member named `annee'
    src/Entry.c:280: warning: passing arg 1 of `memcpy' makes pointer from integer without a cast
    src/Entry.c:281: error: structure has no member named `mois'
    src/Entry.c:281: warning: passing arg 1 of `memcpy' makes pointer from integer without a cast
    src/Entry.c:282: error: structure has no member named `jour'
    src/Entry.c:282: warning: passing arg 1 of `memcpy' makes pointer from integer without a cast
    src/Entry.c:320: warning: implicit declaration of function `MAJ_Donnees_PS'
    src/Entry.c:323: warning: implicit declaration of function `MAJ_Donnees_DroitsVitale'
    src/Entry.c: In function `FFMS_Menu':
    src/Entry.c:593: warning: implicit declaration of function `TEST_SWIPE'
    make: *** [obj_gnu\Entry.o] Error 1

Discussions similaires

  1. SQLiteException: table X has no column named Y
    Par vilour dans le forum Android
    Réponses: 0
    Dernier message: 04/04/2015, 16h10
  2. Réponses: 16
    Dernier message: 04/03/2015, 12h00
  3. Class X has no association named et problème de requête.
    Par loic20h28 dans le forum Doctrine2
    Réponses: 0
    Dernier message: 15/02/2015, 22h03
  4. Class X has no association named.
    Par Auden dans le forum Doctrine2
    Réponses: 3
    Dernier message: 15/07/2013, 20h00
  5. [Compilation] Erreur : "has no member named"
    Par Trademark dans le forum Débuter
    Réponses: 8
    Dernier message: 03/05/2010, 22h11

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