[numeric/conversion] Possible bug in converter.hpp ?

Hello, I'm trying to build openvrml 0.15.10 which uses the Boost library. However, I get the following error message: /usr/include/boost/numeric/conversion/detail/converter.hpp:233: error: expected unqualified-id before numeric constant /usr/include/boost/numeric/conversion/detail/converter.hpp:238: error: type/value mismatch at argument 6 in template parameter list for 'template<class expr0, class expr1, class TT, class TF, class FT, class FF> struct boost::numeric::convdetail::for_both' /usr/include/boost/numeric/conversion/detail/converter.hpp:238: error: expected a type, got '0l' /usr/include/boost/numeric/conversion/detail/converter.hpp:238: error: 'type' does not name a type which appears to be a problem with the header file. I'm using Linux with gcc 4.0.2. The problematic code from converter.hpp is : template<class PredA, class PredB> struct combine { typedef applyBoth<PredA,PredB> Both ; typedef void None ; //LINE 233 typedef typename PredA::do_apply do_applyA ; typedef typename PredB::do_apply do_applyB ; typedef typename for_both<do_applyA, do_applyB, Both, PredA, PredB, None>::type type ; //LINE 238 } ; Can anyone confirm that there is indeed a problem with the converter.hpp header file? If so, how could it be fixed? Thanks. Regard, Eric Belanger -- This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean.

Eric Belanger wrote:
Hello,
I'm trying to build openvrml 0.15.10 which uses the Boost library. However, I get the following error message:
It might well be a problem in converter.hpp but I can't see it with the information you are providing me since the error is triggered by the template parameters used in your specific case. In gcc, you get a sequence of "Instantiating from" messages that allow you to see the compilation path that leads to the failing template instantiation and the corresponding template parameters. Can you use that to isolate the problem into a small but complete program? TIA Fernando Cacciola

On Wed, 7 Dec 2005, Fernando Cacciola wrote:
Eric Belanger wrote:
Hello,
I'm trying to build openvrml 0.15.10 which uses the Boost library. However, I get the following error message:
It might well be a problem in converter.hpp but I can't see it with the information you are providing me since the error is triggered by the template parameters used in your specific case. In gcc, you get a sequence of "Instantiating from" messages that allow you to see the compilation path that leads to the failing template instantiation and the corresponding template parameters. Can you use that to isolate the problem into a small but complete program?
I didn't get any other error message that the ones that I posted in my first email. I have also noticed that if I comment out the declaration of 'None' (line 233) and replace 'None' by 'void' in line 238, then the compilation is successful. I don't know C++ so I'm not sure how appropriate this fix is. However, it implies that the problem is in the declaration of 'None' itself and that the following errors about line 238 are caused by this failed declarations. A cause of this problem could be that None is already defined in a standard X11 include file (/usr/X11R6/include/X11/X.h): #ifndef None #define None 0L /* universal null resource or null atom */ #endif That's all the information I can give now. Let me know if you need more information. Thanks. Eric Belanger
TIA
Fernando Cacciola
_______________________________________________ Boost-users mailing list Boost-users@lists.boost.org http://lists.boost.org/mailman/listinfo.cgi/boost-users
-- This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean.
-- This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean.
participants (2)
-
Eric Belanger
-
Fernando Cacciola