blob: 09877a5a67267e79776566c2d90b6f69647b246a (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
// { dg-do run }
// PRMS Id: 1502
// Bug: g++ fails to resolve 'gnc' in the call to 'grid'.
template<class T> class foo {
public:
foo() { }
};
template<class T> class bar : public foo<T> {
public:
bar() : foo<T>() {}
};
template<class T> class ben : public foo<T> {
public:
ben() : foo<T>() {}
void grid(T (*f)(bar<T>&),bar<T>& x,bar<T>& y,bar<T>& param);
};
template<class T> void ben<T>::grid(T (*f)(bar<T>&),bar<T>& x,bar<T>& y,bar<T>& param) { }
template<class T> T gnc(bar<T>& a)
{
return 0;
}
int main()
{
ben<double> a;
bar<double> x,y,p;
a.grid(gnc,x,y,p);
return 0;
}
|