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

Boost C++ Discussion :

[ptree] Impossible de compiler


Sujet :

Boost C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre Expert
    Avatar de Klaim
    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Août 2004
    Messages
    1 717
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur de jeux vidéo
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2004
    Messages : 1 717
    Par défaut [ptree] Impossible de compiler
    Bonjour,

    J'essaie de compiler ce bout de code (inspiré du tutorial) :
    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
     
    #include <string>
    #include <boost/property_tree/ptree.hpp>
    #include <boost/property_tree/info_parser.hpp>
     
     
    const std::string CONFIG_FILE = "game.cfg";
     
    int main()
    {
    	using namespace boost::property_tree;
    	ptree properties; // erreur de compilation ici
     
    	//read_info( CONFIG_FILE, properties );
     
    	return 0;
    }
    Mais ça ne compile pas sous VC10 et je ne comprends pas bien d'ou viens le problème.

    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
    Main.cpp
    d:\sdk\boost\boost_1_43_0\include\boost-1_43\boost\property_tree\detail\ptree_implementation.hpp(30): error C2440: 'specialization' : cannot convert from 'const std::string std::_Pair_base<_Ty1,_Ty2>::* ' to 'const std::basic_string<_Elem,_Traits,_Ax> std::pair<_Ty1,_Ty2>::* '
              with
              [
                  _Ty1=const std::string,
                  _Ty2=boost::property_tree::basic_ptree<std::string,std::string>
              ]
              and
              [
                  _Elem=char,
                  _Traits=std::char_traits<char>,
                  _Ax=std::allocator<char>,
                  _Ty1=const std::string,
                  _Ty2=boost::property_tree::basic_ptree<std::string,std::string>
              ]
              Standard conversion from pointer-to-member of base to pointer-to-member of derived is not applied for template arguments
              d:\sdk\boost\boost_1_43_0\include\boost-1_43\boost\property_tree\detail\ptree_implementation.hpp(159) : see reference to class template instantiation 'boost::property_tree::basic_ptree<Key,Data>::subs' being compiled
              with
              [
                  Key=std::string,
                  Data=std::string
              ]
              d:\sdk\boost\boost_1_43_0\include\boost-1_43\boost\property_tree\detail\ptree_implementation.hpp(159) : while compiling class template member function 'boost::property_tree::basic_ptree<Key,Data>::basic_ptree(void)'
              with
              [
                  Key=std::string,
                  Data=std::string
              ]
              d:\tests\test_ptree\test_ptree\main.cpp(11) : see reference to class template instantiation 'boost::property_tree::basic_ptree<Key,Data>' being compiled
              with
              [
                  Key=std::string,
                  Data=std::string
              ]
    Le typedef ptree utilise std::string sont je suppose que c'était censé marcher...
    J'ai tenté avec boost 1.42 puis j'ai upgradé à 1.43 mais ça ne change rien.

    Je me dis qu'il doit y avoir une erreur très bête que je fais, mais je n'arrive pas à la trouver... alors avant d'aller demander sur la mailing list de boost, est-ce que quelqu'un voit quelque chose d'anormal dans ce code?

  2. #2
    Membre Expert
    Avatar de Klaim
    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Août 2004
    Messages
    1 717
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur de jeux vidéo
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2004
    Messages : 1 717
    Par défaut
    J'ai envoyé un mail sur la mailing list quand même.

    J'ai ensuite essayé de compiler ce code du tutorial : http://www.boost.org/doc/libs/1_43_0...g_settings.cpp

    Mais j'ai le même problème :
    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
     
     Main.cpp
    d:\sdk\boost\boost_1_43_0\include\boost-1_43\boost\property_tree\detail\ptree_implementation.hpp(30): error C2440: 'specialization' : cannot convert from 'const std::string std::_Pair_base<_Ty1,_Ty2>::* ' to 'const std::basic_string<_Elem,_Traits,_Ax> std::pair<_Ty1,_Ty2>::* '
              with
              [
                  _Ty1=const std::string,
                  _Ty2=boost::property_tree::basic_ptree<std::string,std::string>
              ]
              and
              [
                  _Elem=char,
                  _Traits=std::char_traits<char>,
                  _Ax=std::allocator<char>,
                  _Ty1=const std::string,
                  _Ty2=boost::property_tree::basic_ptree<std::string,std::string>
              ]
              Standard conversion from pointer-to-member of base to pointer-to-member of derived is not applied for template arguments
              d:\sdk\boost\boost_1_43_0\include\boost-1_43\boost\property_tree\detail\ptree_implementation.hpp(159) : see reference to class template instantiation 'boost::property_tree::basic_ptree<Key,Data>::subs' being compiled
              with
              [
                  Key=std::string,
                  Data=std::string
              ]
              d:\sdk\boost\boost_1_43_0\include\boost-1_43\boost\property_tree\detail\ptree_implementation.hpp(159) : while compiling class template member function 'boost::property_tree::basic_ptree<Key,Data>::basic_ptree(void)'
              with
              [
                  Key=std::string,
                  Data=std::string
              ]
              d:\tests\test_ptree_tutorial\test_ptree_tutorial\main.cpp(33) : see reference to class template instantiation 'boost::property_tree::basic_ptree<Key,Data>' being compiled
              with
              [
                  Key=std::string,
                  Data=std::string
              ]

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

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 580
    Par défaut
    Sa mérite un ticket, ça vient de VC. (ça compile sur gcc).

  4. #4
    Membre Expert
    Avatar de Klaim
    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Août 2004
    Messages
    1 717
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur de jeux vidéo
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2004
    Messages : 1 717
    Par défaut
    Je viens de voir dans la doc que VC10 n'a pas été testé ou n'a pas reussi les tests...

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

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 580

  6. #6
    Membre Expert
    Avatar de Klaim
    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Août 2004
    Messages
    1 717
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur de jeux vidéo
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2004
    Messages : 1 717
    Par défaut
    Réponse sur la mailing list : corrigé dans le trunk : https://svn.boost.org/trac/boost/ticket/4092

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

Discussions similaires

  1. Impossible de compiler un projet avec #include <glib.h>
    Par canard75 dans le forum Autres éditeurs
    Réponses: 1
    Dernier message: 14/12/2005, 18h18
  2. Jbuilder2006 impossible de compiler mon projet
    Par danje dans le forum JBuilder
    Réponses: 4
    Dernier message: 01/11/2005, 23h32
  3. [devc++]Impossible de compiler !!!
    Par insomniak dans le forum Dev-C++
    Réponses: 11
    Dernier message: 24/10/2005, 13h38
  4. [Dev-cpp] Impossible de compiler le projet !
    Par Franck.H dans le forum Dev-C++
    Réponses: 5
    Dernier message: 18/10/2005, 11h55
  5. [JOnAS][JOPE] impossible de compiler un bean
    Par Raylemon dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 05/04/2005, 16h48

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