This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug c++/37563] New: [4.3/4.4 regression] Trouble calling qualified member function
- From: "reichelt at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 17 Sep 2008 16:00:59 -0000
- Subject: [Bug c++/37563] New: [4.3/4.4 regression] Trouble calling qualified member function
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
The following valid code snippet is rejected since GCC 4.3.0:
==========================================
struct A {};
template<int> struct Traits
{
typedef void X;
};
template<> struct Traits<0>
{
typedef A X;
};
template<int N> struct B
{
typedef typename Traits<N>::X Y;
void foo(Y y)
{
y.Y::A::~A();
}
};
==========================================
bug.cc: In member function 'void B<N>::foo(typename Traits<N>::X)':
bug.cc:19: error: 'void' is not a class type
--
Summary: [4.3/4.4 regression] Trouble calling qualified member
function
Product: gcc
Version: 4.4.0
Status: UNCONFIRMED
Keywords: rejects-valid
Severity: normal
Priority: P3
Component: c++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: reichelt at gcc dot gnu dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37563