Subject: Re: [Boost-bugs] [Boost C++ Libraries] #1931: Boost.Python headers won't compile with GCC 4.3
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2008-05-22 10:17:34
#1931: Boost.Python headers won't compile with GCC 4.3
-------------------------------+--------------------------------------------
Reporter: vbe_at_[hidden] | Owner: dave
Type: Bugs | Status: new
Milestone: To Be Determined | Component: Python
Version: Boost 1.35.0 | Severity: Problem
Resolution: | Keywords:
-------------------------------+--------------------------------------------
Comment (by soc):
FROM http://www.gnu.org/software/gcc/gcc-4.3/porting_to.html
'''Name lookup changes'''
GCC 4.3 by default no longer accepts code such as
{{{
template <class _Tp> class auto_ptr {};
template <class _Tp>
struct counted_ptr
{
auto_ptr<_Tp> auto_ptr();
};
}}}
but will issue the diagnostic
error: declaration of 'auto_ptr<_Tp> counted_ptr<_Tp>::auto_ptr()'
error: changes meaning of 'auto_ptr' from 'class auto_ptr<_Tp>'
The reference to struct auto_ptr needs to be qualified here, or the name
of the member function changed to be unambiguous.
{{{
template <class _Tp> class auto_ptr {};
template <class _Tp>
struct counted_ptr
{
::auto_ptr<_Tp> auto_ptr();
};
}}}
In addition, -fpermissive can be used as a temporary workaround to convert
the error into a warning until the code is fixed. Note that then in some
case name lookup will not be standard conforming.
--
Ticket URL: <http://svn.boost.org/trac/boost/ticket/1931#comment:3>
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:49:57 UTC