repo.or.cz
/
official-gcc.git
/
blob
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
log
|
graphiclog1
|
graphiclog2
|
commit
|
commitdiff
|
tree
|
refs
|
edit
|
fork
blame
|
history
|
raw
|
HEAD
* gcc.dg/stack-check-5.c: Skip with -fstack-protector.
[official-gcc.git]
/
gcc
/
testsuite
/
g++.old-deja
/
g++.other
/
lookup19.C
blob
d4104f0fca53bbd9f57e63144bafa7775d3a9a62
1
// { dg-do assemble }
2
// Test for proper handling of type lookup for conversion operator names.
3
4
// Test 1: Only at file scope
5
typedef int B;
6
struct A
7
{
8
int B;
9
operator B *(); // { dg-error "" }
10
};
11
12
A::operator B * () // { dg-error "" }
13
{
14
return 0;
15
}
16
17
// Test 2: Only at class scope
18
struct C
19
{
20
typedef int D;
21
operator D *();
22
};
23
24
int D;
25
C::operator D * ()
26
{
27
return 0;
28
}
29
30
// Test 3: Matching
31
struct E
32
{
33
typedef int F;
34
operator F *();
35
};
36
37
typedef int F;
38
E::operator F * ()
39
{
40
return 0;
41
}
42
43
// Test 4: Conflicting
44
struct G
45
{
46
typedef int H;
47
operator H *();
48
};
49
50
typedef double H;
51
G::operator H * ()
52
{
53
return 0;
54
}