--- languages/cpp/cppduchain/declarationbuilder.cpp.orig 2012-04-14 04:54:26.000000000 +0900 +++ languages/cpp/cppduchain/declarationbuilder.cpp 2012-06-08 21:43:19.000000000 +0900 @@ -1231,8 +1231,7 @@ QList contexts; // qlist does not provide convenient stable iterators - std::list worklist(decls.begin(), decls.end()); - for (std::list::iterator it = worklist.begin(); it != worklist.end(); ++it) { + for (QList::iterator it = decls.begin(); it != decls.end(); ++it) { Declaration * decl = *it; if(decl->kind() == Declaration::Namespace && decl->internalContext()) { contexts << decl->internalContext(); @@ -1241,7 +1240,7 @@ if (aliasDecl) { QList importedDecls = currentContext()->findDeclarations(aliasDecl->importIdentifier(), position); std::copy(importedDecls.begin(), importedDecls.end(), - std::back_inserter(worklist)); + std::back_inserter(decls)); } } }