aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.dg/overload/arg4.C
blob: 34aa62506836f5599937f51b13d46d757d6573b3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
// { dg-do compile }

// Copyright (C) 2004 Free Software Foundation, Inc.
// Contributed by Nathan Sidwell 30 Nov 2004 <nathan@codesourcery.com>

// PR 17431. copy ctor from user conv
// Origin: Volker Reichelt <reichelt@gcc.gnu.org>

struct A {};

struct B : A
{
  B(int);  // { dg-error "" "" }
  B(B&);   // { dg-error "" "" }
  B(A);    // { dg-error "" "" }
};

struct C
{
  operator B () const;  
};


void foo(B);

void bar()
{
  C c;
  foo(c); // { dg-error "no matching function|initializing" "" }
}