1// { dg-do run } 2char c; 3 4struct S { 5 template <typename T> 6 operator T*(); 7 8 template <typename T> 9 operator T(); 10}; 11 12template <> 13S::operator int() 14{ 15 return 2; 16} 17 18template <> 19S::operator char*() 20{ 21 return &c; 22} 23 24int main() 25{ 26 S s; 27 int i = s; 28 char* cp = s; 29 30 if (i != 2 || cp != &c) 31 return 1; 32} 33