// { dg-do run } // Copyright (C) 2001 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 29 Dec 2001 // PR 4361. Template conversion operators were not overloaded. class C { public: operator float () {return 2;} operator int () { return 0; } template operator int () { return 1; } }; int main () { C p; int r; r = p.operator int (); if (r) return r; r = static_cast (p); if (r) return r + 2; return 0; }