PR libstdc++/54924 - Warn for std::string constructor with wrong size
[official-gcc.git] / gcc / testsuite / g++.dg / lookup / decl1.C
blob42a9978e597c51f75326c6d53e76ea8dfb10a019
1 // { dg-do compile }
3 // Copyright (C) 2002 Free Software Foundation, Inc.
4 // Contributed by Nathan Sidwell 24 Dec 2002 <nathan@codesourcery.com>
6 // PR 8702. Failure to match templates.
8 template <typename X> struct C1{};
10 template <typename X>
11 struct C2 {
12   template<typename Y> operator C1<Y>();
13   template<typename Y> operator C2<Y>();
16 template<typename X> template<typename Y>
17 C2<X>::operator C1<Y>()
19   return C1<Y>();
22 struct A
24   operator int ();                      // { dg-error "operator" }
25   operator float ();                    // { dg-error "operator" }
26   operator float () const;              // { dg-error "operator" }
27   template <typename T> operator T * (); // { dg-error "candidates" }
30 A::operator short () { // { dg-error "prototype for" }
31   return 0;