Mir unbekannte Fehlermeldung in CodeBlocks (mingw)
-
Hallo,
Ich habe hier eine Fehlermeldung, die ich nicht einordnen kann. Sie tritt in einer Zeile auf, wo ich einen std::string in ein vector<string> per push_back einfügen will.
int DivideString(const std::string &src, std::vector<std::string> &res) { if( src.empty() ) return 0; stringstream in(src); string tempstr; if( !(in >> tempstr) ) return 0; res.clear(); do { if( !tempstr.empty() ) res.push_back(tempstr); // hier kommt der Fehler } while( in >> tempstr); return res.size(); }
So lautet die Fehlermeldung.
D:\mingw\bin\..\lib\gcc\mingw32\3.4.5\..\..\..\..\include\c++\3.4.5\bits\stl_vector.h:564: instantiated from `void std::vector<_Tp, _Alloc>::push_back(const _Tp&) [with _Tp = std::string, _Alloc = std::allocatorstd::string]'
..\..\..\..\Programming\CLib\StringTools\Lib_CStringTools.cpp:44: instantiated from here
D:\mingw\bin\..\lib\gcc\mingw32\3.4.5\..\..\..\..\include\c++\3.4.5\bits\vector.tcc:243: warning: '__len' might be used uninitialized in this function
:: === Build finished: 2 errors, 1 warnings ===Vielleicht, weiß ja jemand, was das soll,
Ciao
-
Da steht zwar "2 errors, 1 warnings", aber das gepostete ist IMHO nur die Warnung, und die zwei Zeilen darüber sagen aus von wo das Template in dem die Warnung geworfen wird instanziert wurde. Bist Du sicher dass da drüber nicht noch was kommt?
Diese drei Zeilen für sich deuten zwar auf eine Schlampigkeit in der Bibliothek hin, sollten jedoch nicht das Compilieren an sich behindern... Welche GCC (MinGW) Version ist das?
-
Es ist die Version 3.4.5
Es kommen keine weiteren Meldungen. Du hast aber recht, die executable wird erstellt. Das ist schon sehr merkwürdig.