[Boost-bugs] [Boost C++ Libraries] #8461: Name demangling in docstrings broken using Intel Compilers on Linux

Subject: [Boost-bugs] [Boost C++ Libraries] #8461: Name demangling in docstrings broken using Intel Compilers on Linux
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2013-04-19 08:45:49


#8461: Name demangling in docstrings broken using Intel Compilers on Linux
-----------------------------------+----------------------------------------
 Reporter: beamesleach@… | Owner: rwgk
     Type: Bugs | Status: new
Milestone: To Be Determined | Component: Python
  Version: Boost 1.53.0 | Severity: Cosmetic
 Keywords: |
-----------------------------------+----------------------------------------
 Hi,

 I'm using my system's boost_python library (compiled with GCC) whilst
 developing an extension module. I thought I'd try compiling it with the
 Intel Compilers, but when I do, docstring signatures show mangled names.

 e.g.

 {{{
>>> import test_make_list
>>> print test_make_list.IntList.__getitem__.__doc__

 __getitem__( (object)arg1, (object)arg2) -> object :

     C++ signature :
         N5boost6python3api6objectE
 __getitem__(N5boost6python14back_referenceIRSt4listIiSaIiEEEE,P7_object)
 }}}


 It turns out I can fix this by adding "BOOST_PYTHON_HAVE_GCC_CP_DEMANGLE"
 to the list of preprocessor definitions, but wondered if a fix could be
 introduced directly into the headers.

 Not sure how I can test this without recompiling the entirety of boost,
 but I thought the following macro clause could be added at line 24 of
 [http://www.boost.org/doc/libs/1_53_0/boost/python/type_id.hpp
 <boost/python/type_id.hpp>], to resolve this:

 {{{
    || (defined(__linux) && defined(__ICC))
 }}}

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/8461>
Boost C++ Libraries <http://www.boost.org/>
Boost provides free peer-reviewed portable C++ source libraries.

This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:12 UTC