Subject: [Boost-bugs] [Boost C++ Libraries] #2465: Redefinition error on GCC 4.3.2 using template names as variable names.
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2008-11-02 17:52:08
#2465: Redefinition error on GCC 4.3.2 using template names as variable names.
--------------------------+-------------------------------------------------
Reporter: mikhailberis | Owner: az_sw_dude
Type: Bugs | Status: new
Milestone: Boost 1.37.0 | Component: date_time
Version: Boost 1.36.0 | Severity: Problem
Keywords: |
--------------------------+-------------------------------------------------
On GCC 4.3.2 the following code snippet causes an error:
{{{
namespace ns {
template <class T>
name { };
name<int> name; // error here, redefining name
}
}}}
The workaround to this is to use the namespace-qualified type name in the
template instantiation:
{{{
ns::name<int> name; // error goes away
}}}
Attached is a (trivial) patch that addresses the issue.
-- Ticket URL: <https://svn.boost.org/trac/boost/ticket/2465> 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:59 UTC