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 :

Erreur en passant de gcc3 à gcc4


Sujet :

C++

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    32
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 32
    Points : 18
    Points
    18
    Par défaut Erreur en passant de gcc3 à gcc4
    J'ai un programme qui compilait sans pb avec gcc3 et refuse maintenant de compiler avec gcc4.

    Voivi les messages retournés par g++:
    Citation Envoyé par g++
    file.h:310: error: extra qualification not allowed
    file.h:311: error: explicit specialization of non-template 'std::<anonymous struct>'
    file.h:311: error: an anonymous struct cannot have function members
    file.h:321: error: abstract declarator 'std::<anonymous struct>' used as declaration
    Voici en gros le code fautif:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    namespace std
    {
      template<> struct std::greater<Type*>
        {
          bool operator()(const Type* v1, const Type* v2) const
          {
            return v1->val() < v2->val();
          }
        };
    }
    Je précise que le code n'est pas de moi, mais que j'essaie de le faire marcher sur ma machine.

    Donc si quelqu'un a une idée de comment modifier cela pour pouvoir enfin le compiler et l'utiliser, merci d'avance ^^.

  2. #2
    Membre émérite
    Avatar de white_tentacle
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    1 505
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 1 505
    Points : 2 799
    Points
    2 799
    Par défaut
    ooops, lu trop vite

  3. #3
    Membre chevronné
    Avatar de Goten
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 580
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 580
    Points : 2 205
    Points
    2 205
    Par défaut
    C'est quoi Type? (un type perso, un typedef ?)
    "Hardcoded types are to generic code what magic constants are to regular code." --A. Alexandrescu

  4. #4
    Membre éprouvé
    Inscrit en
    Avril 2005
    Messages
    1 110
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 1 110
    Points : 937
    Points
    937
    Par défaut
    On peut mettre std:: dans namespace std {} ?

  5. #5
    Membre chevronné
    Avatar de Goten
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 580
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 580
    Points : 2 205
    Points
    2 205
    Par défaut
    Citation Envoyé par camboui Voir le message
    On peut mettre std:: dans namespace std {} ?

    Bien vu . Le message d'erreur étant pourtant plutôt clair.
    "Hardcoded types are to generic code what magic constants are to regular code." --A. Alexandrescu

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    32
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 32
    Points : 18
    Points
    18
    Par défaut
    Effectivement, c'était ça le problème, merci beaucoup.

    PS: le message est sûrement clair lorsque l'on est un dev c++, mais ca n'est pas vraiment mon cas, j'ai mis le nez dans le code afin de pouvoir l'utiliser, c'est tout ^^.

  7. #7
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    26 860
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 26 860
    Points : 219 062
    Points
    219 062
    Billets dans le blog
    120
    Par défaut
    Mince, j'avais vu cette erreur hier, mais en voyant le message de gcc j'ai eu un doute. Surtout que le code compilé avant, donc ... enfin bref ... je suis un clampin.

    Même si le message était "clair" pour moi qui suit dev c++ ( on va dire débutant du coup ) bah je me suis trompé.
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

Discussions similaires

  1. Erreurs d'édition des liens en passant de GCC 4.5 à 4.6
    Par uriotcea dans le forum Débuter
    Réponses: 3
    Dernier message: 18/07/2012, 21h32
  2. Réponses: 6
    Dernier message: 30/05/2010, 23h41
  3. passer de gcc4 à gcc3.4
    Par vetchang dans le forum Ubuntu
    Réponses: 3
    Dernier message: 10/12/2009, 18h23
  4. [Kylix] Erreur objet
    Par Anonymous dans le forum EDI
    Réponses: 1
    Dernier message: 22/03/2002, 09h41

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