
Hi, the above two tests fail on a number of compilers with what looks like a two-phase lookup issue. See: http://tinyurl.com/jeakp http://tinyurl.com/q3hbv I can reproduce this locally with g++ 3.4. Can somebody check if this is a bug in the library, or some quirk with g++ 3.4? Thanks, Volodya

Vladimir Prus wrote:
Hi, the above two tests fail on a number of compilers with what looks like a two-phase lookup issue. See:
http://tinyurl.com/jeakp http://tinyurl.com/q3hbv
I can reproduce this locally with g++ 3.4. Can somebody check if this is a bug in the library, or some quirk with g++ 3.4?
Bugs in the implementation, related to two-phase lookup, I guess. These should now be fixed in CVS. Regards, João

João Abecasis wrote:
Vladimir Prus wrote:
Hi, the above two tests fail on a number of compilers with what looks like a two-phase lookup issue. See:
http://tinyurl.com/jeakp http://tinyurl.com/q3hbv
I can reproduce this locally with g++ 3.4. Can somebody check if this is a bug in the library, or some quirk with g++ 3.4?
Bugs in the implementation, related to two-phase lookup, I guess. These should now be fixed in CVS.
Thanks Joao! Regards, -- Joel de Guzman http://www.boost-consulting.com http://spirit.sf.net

Jo?o Abecasis wrote:
Vladimir Prus wrote:
Hi, the above two tests fail on a number of compilers with what looks like a two-phase lookup issue. See:
http://tinyurl.com/jeakp http://tinyurl.com/q3hbv
I can reproduce this locally with g++ 3.4. Can somebody check if this is a bug in the library, or some quirk with g++ 3.4?
Bugs in the implementation, related to two-phase lookup, I guess. These should now be fixed in CVS.
I am afraid, this still doesn't work, though with a different error: gcc.compile.c++ ../../../bin.v2/libs/spirit/test/ast_calc_tests.test/gcc-3.4/debug/ast_calc_tests.o In file included from ../../../boost/spirit/tree/tree_to_xml.hpp:108, from ast_calc_tests.cpp:13: ../../../boost/spirit/tree/impl/tree_to_xml.ipp: In static member function `static const wchar_t* boost::spirit::impl::string_lit<wchar_t>::to_wchar_t(const char*)': ../../../boost/spirit/tree/impl/tree_to_xml.ipp:66: error: cannot convert `const char*' to `const wchar_t*' in return "g++-3.4" -ftemplate-depth-100 -O0 -fno-inline -Wall -g -fPIC -DBOOST_ALL_NO_LIB=1 -I"../../.." -c -o "../../../bin.v2/libs/spirit/test/ast_calc_tests.test/gcc-3.4/debug/ast_calc_tests.o" "ast_calc_tests.cpp" I'm using up-to-date CVS as of now. The repeat_ast_test fails with the same error. Here's the code: static wchar_t const* to_wchar_t(..........) { return std::use_facet<ctype_t>(std::locale()) .widen(source, source + len, result); } The problem is that the 'widen' method always returns char*, and return value is equal to the second parameter. I guess the right code would be: std::use_facet<ctype_t>(std::locale()) .widen(source, source + len, result); return result; but I'm not quite sure. Can you check if this works and is right semantically? Thanks, Volodya

Vladimir Prus wrote:
The problem is that the 'widen' method always returns char*, and return value is equal to the second parameter. I guess the right code would be:
std::use_facet<ctype_t>(std::locale()) .widen(source, source + len, result); return result;
but I'm not quite sure. Can you check if this works and is right semantically?
Your fix looks right (double-checked with Hartmut), so I've committed it to CVS. Thanks for the heads-up! João
participants (3)
-
Joel de Guzman
-
João Abecasis
-
Vladimir Prus