The preprocessed source attacched with this report causes the following error message when compiled with 3.4: /cygdrive/e/spirit/boost/spirit/phoenix/composite.hpp:281: error: return-stateme nt with a value, in function returning 'void' The error message is totally confusing, and has nothing to do with the real bug, which is a missing templated operator() (or so I am told, I have not analyzed it). I am also told the same error message appears with 3.3. With Comeau, the error message is: "no instance of function template Test_Recipe_Grammar::lazy_attribute_filter_::operator() matches the argument list", which is the correct problem. The full error message can be seen here: http://rafb.net/paste/results/IiYOX564.html. This really needs a reduction to be properly analyzed.
Created attachment 6883 [details] Preprocessed source
Created attachment 6884 [details] Comeau error message Attacching Comeau error message, since the link above is going to expire soon.
I get this error first: pr16883.cc:50489: error: no match for call to `(Test_Recipe_Grammar::lazy_attribute_filter_) (__gnu_norm::map<uint32_t, std::pair<std::string, std::string>, std::less<uint32_t>, std::allocator<std::pair<const uint32_t, std::pair<std::string, std::string> > > >&, const std::pair<std::string, std::string>&)'
So it looks like the person is looking at the last error message rather than the first. The reason for the error message which we output also comes from: int f(); template <class T> T g(T *a){return f(a);} void h(){g<void>(0);} Which is correct because there is no f which has a return type of void. so closing as invalid.
Hi, Rafb.Net's code pasting service is designed to automatically delete pasted code after 24 hours. I've extracted this particular paste into a more permanent URL: http://www.rafb.net/gnu_16883.html Regards, Jake.(In reply to comment #0) > http://rafb.net/paste/results/IiYOX564.html.