1// { dg-do assemble  }
2
3template<class K>
4struct A {
5	int foo(const K&);
6	int bar(const K&);
7};
8
9template<class K>
10int
11A<K>::bar(const K& k)
12{
13	return(foo(k));
14}
15
16template<>
17int
18A<const char*>::foo(const char*const& k)
19{
20        return((__SIZE_TYPE__)k);
21}
22