[Bug c++/43101] New: [4.5 regression] Rejects template with const static data member used in return type
bangerth at gmail dot com
gcc-bugzilla@gcc.gnu.org
Wed Feb 17 01:59:00 GMT 2010
The kludge used as a workaround for PR 26261 doesn't work any more:
-----------------------
template <int dim> class X {};
template <class T> class Y {
static const unsigned int dim = 1;
X<Y<T>::dim> f();
};
template <class T>
X<Y<T>::dim> Y<T>::f() { return X<dim>(); }
------------------------------
This compiled with gcc 4.3, but with a mainline snapshot from
last October we get this:
a.cc:9:14: error: prototype for 'X<Y::dim> Y<T>::f()' does not match any in
class 'Y<T>'
a.cc:5:18: error: candidate is: X<1> Y<T>::f()
So this is a regression.
Best
W.
--
Summary: [4.5 regression] Rejects template with const static data
member used in return type
Product: gcc
Version: 4.5.0
Status: UNCONFIRMED
Keywords: rejects-valid
Severity: normal
Priority: P3
Component: c++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: bangerth at gmail dot com
OtherBugsDependingO 26261
nThis:
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43101
More information about the Gcc-bugs
mailing list