summaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.old-deja/g++.jason/conversion11.C
blob: 6621a27b6a2cbcb8717e4439b3eb2df9851d3c54 (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
// { dg-do assemble  }
// PRMS Id: 8805
// Bug: The two-level conversion is not found when calling a global fn.

class Int {
public:
  Int(int A);
};

class Ding {
public:
  Ding(Int A);
};

class Something {
public:
  void DoSomething(Ding A);	// { dg-message "Something::DoSomething|no known conversion" } referred to
};

void DoSomething(Ding A);

void foo(Something* pX)
{
  DoSomething(1);		// { dg-error "could not convert" }
  pX->DoSomething(1);		// { dg-error "no matching" } 
  // { dg-message "candidate" "candidate note" { target *-*-* } 25 }
  (*pX).DoSomething(1);		// { dg-error "no matching" } 
  // { dg-message "candidate" "candidate note" { target *-*-* } 27 }
}