[Bug c++/43327] New: ICE in unifiy.c
roger dot ferrer at bsc dot es
gcc-bugzilla@gcc.gnu.org
Wed Mar 10 22:29:00 GMT 2010
The following code
---
template <typename _T>
struct A
{
template <int _N, int _M>
struct B;
template <int _N>
struct B<_N, _T::m>
{
static void f();
};
};
struct C
{
static const int m = 4;
};
void m()
{
A<C>::B<1, 4>::f();
}
--
causes the following ICE as of 4.2
[g++ 4.4]
test.cc: In function âÂÂvoid m()âÂÂ:
test.cc:22: internal compiler error: in unify, at cp/pt.c:14081
g++ 4.1 yields this error, instead
[g++ 4.1]
test.cc: In function âÂÂvoid m()âÂÂ:
test.cc:22: error: incomplete type âÂÂA<C>::B<1, 4>â used in nested name
specifier
This code seems fine to me (and so seems to intel, xlc++ and comeau online) so
I assume it is some issue in g++.
--
Summary: ICE in unifiy.c
Product: gcc
Version: 4.4.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: roger dot ferrer at bsc dot es
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43327
More information about the Gcc-bugs
mailing list