diff options
Diffstat (limited to 'gcc/testsuite/g++.old-deja/g++.jason/template34.C')
-rw-r--r-- | gcc/testsuite/g++.old-deja/g++.jason/template34.C | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/gcc/testsuite/g++.old-deja/g++.jason/template34.C b/gcc/testsuite/g++.old-deja/g++.jason/template34.C new file mode 100644 index 000000000..eaeb4641a --- /dev/null +++ b/gcc/testsuite/g++.old-deja/g++.jason/template34.C @@ -0,0 +1,25 @@ +// { dg-do run } +template<class T> +class Set { + public: + typedef int (*Compare)(const T&, const T&); + static Compare cmp1; + static int (*cmp2)(const T&, const T&); +}; + +template<class T> +int gen_cmp(const T& a, const T& b) { + if (a<b) return -1; + else if (a==b) return 0; + else return 1; +} + +template<class T> +typename Set<T>::Compare Set<T>::cmp1 = &gen_cmp; + +template<class T> +int (*Set<T>::cmp2)(const T&, const T&) = &gen_cmp; + +int main() { + Set<int> s; +} |