Partage
  • Partager sur Facebook
  • Partager sur Twitter

Problème avec filesystem [MinGW - gcc 8.2.0]

    30 juin 2019 à 14:01:30

    Hello,

    J'ai voulu tester la lib filesystem avec la distro MinGW de nuwen contenant GCC 8.2.0 mais visiblement il y a un souci au niveau du header fs_path.h.

    main.cpp :

    #include <iostream>
    #include <filesystem>
    
    namespace fs = std::filesystem;
    
    int main()
    {
        return 0;
    }

    Erreur :

    error: no match for 'operator!=' (operand types are 'std::filesystem::__cxx11::path' and 'std::filesystem::__cxx11::path')
    note: candidate: 'template<class _StateT> bool std::operator!=(const std::fpos<_StateT>&, const std::fpos<_StateT>&)'

    fs_path.h (ligne 237) :

    #ifdef _GLIBCXX_FILESYSTEM_IS_WINDOWS
          if (__p.is_absolute()
    	  || (__p.has_root_name() && __p.root_name() != root_name())) // <---- ICI
    	operator=(__p);
          else
    	{
    	  string_type __pathname;
    	  if (__p.has_root_directory())
    	    __pathname = root_name().native();
    	  else if (has_filename() || (!has_root_directory() && is_absolute()))
    	    __pathname = _M_pathname + preferred_separator;
    	  __pathname += __p.relative_path().native(); // XXX is this right?
    	  _M_pathname.swap(__pathname);
    	  _M_split_cmpts();
    	}
    #else

    J'ai cherché sur le net mais je ne suis pas sûr de la manière dont je pourrai m'y prendre pour corriger ce problème. J'aurais bien tenté de régler le souci moi-même puisque apparament c'est juste un fail au niveau de l'opérateur mais... je ne voudrais pas faire de connerie et ça me semble complexe à régler aussi :D.

    Si quelqu'un a une piste je suis preneur.

    -
    Edité par Guit0Xx 30 juin 2019 à 14:04:45

    • Partager sur Facebook
    • Partager sur Twitter

    ...

      30 juin 2019 à 15:38:05

      Salut,

      Est-ce bien l'erreur https://sourceforge.net/p/mingw-w64/bugs/737/ ?

      Si c'est le cas, as-tu essayé de mettre à jour ta version de gcc (en une version qui contiendrait les patches - il faut peut-être compiler toi-même) ?

      Sinon, as-tu essayé la solution (le fix) de Chris ?

      Généralement, c'est effectivement une mauvaise idée de fixer ça soi-même dans la mesure du possible. Mais quand il s'agit d'un bug, tu peux fixer ça en attendant que le bug soit corrigé dans une release future.

      • Partager sur Facebook
      • Partager sur Twitter

      J'aime les bandes dessinées, manhuas, manhwas, mangas, comics... Du coup j'ai fait aralosbd.fr !

      Problème avec filesystem [MinGW - gcc 8.2.0]

      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
      • Editeur
      • Markdown