[C++-sig] g++ compiler limitations other than -ftemplate-depth-n and -DBOOST_PYTHON_MAX_ARITY ?

Christopher A Mejia camejia at raytheon.com
Mon Jun 8 15:59:45 CEST 2009


Stefan,

Thanks for your response.  The API that I am trying to wrap is the Data 
Client Server portion of the U.S. Naval Research Labs' SIMDIS Analysis & 
Display Tool (simdis.nrl.navy.mil).  This is free software, but does require 
registration and there is a human in the loop of the approval process. 
Anyway, I don't feel comfortable redistributing the software (or 
preprocessed details), but if you're really interested you could obtain it 
directly yourself.  Apparently this API is a good test case for pushing some 
of the limits of Boost.Python.  Since you agree that this is probably a 
compiler issue, it's unlikely that you or anyone else would be able to 
reproduce the same errors anyway.  I came up with a workaround, which is to 
wrap a version of the function without the last three arguments, i.e. from 
Python I am OK with always having those last three parameters set to their 
default values.  But if anyone has any other ideas to try, I'd like to hear 
them.

Thanks again for your time,
--Chris

----- Original Message ----- 
From: Stefan Seefeld
To: Development of Python/C++ integration
Sent: Saturday, June 06, 2009 10:15 AM
Subject: Re: [C++-sig] g++ compiler limitations other 
than -ftemplate-depth-n and -DBOOST_PYTHON_MAX_ARITY ?


What you describe sounds like GCC is getting confused. It may have run
into wrong code, but the error message may be caused by a wrong
interpretation of what you wanted to do.
The fact that things work if you reduce the number of arguments, and the
fact that you had to increase BOOST_PYTHON_MAX_ARITY suggests that
perhaps some of the code inside boost.python does not support the arity
of your call (and isn't configurable via BOOST_PYTHON_MAX_ARITY, so the
compiler couldn't find a matching function for your call. Then, instead
of telling you that it couldn't find a match, it thought you may have
missed qualification (etc.).

However, to substantiate this speculation, I'd need to see the code at
the call site. But the source is so noisy due to all the macros that
it's impossible to see. Could you send a preprocessed source of the
relevant bits ?

Thanks,
       Stefan


-- 

      ...ich hab' noch einen Koffer in Berlin...

_______________________________________________
Cplusplus-sig mailing list
Cplusplus-sig at python.org
http://mail.python.org/mailman/listinfo/cplusplus-sig

The following line is added for your protection and will be used for 
analysis if this message is reported as spam:

(Raytheon Analysis: IP=82.94.164.166; 
e-from=cplusplus-sig-bounces+camejia=raytheon.com at python.org; 
from=seefeld at sympatico.ca; date=Jun 6, 2009 5:15:33 PM; subject=Re: 
[C++-sig] g++ compiler limitations other than
 -ftemplate-depth-n and -DBOOST_PYTHON_MAX_ARITY ?) 



More information about the Cplusplus-sig mailing list