Mercurial > projects > ldc
annotate tests/mini/virtcall2.d @ 1607:207a8a438dea
Merge DMD r253: refactor: Argument => Parameter
---
dmd/arrayop.c | 30 ++++----
dmd/arraytypes.h | 2 +-
dmd/class.c | 8 +-
dmd/declaration.c | 10 ++--
dmd/declaration.h | 16 ++--
dmd/doc.c | 12 ++--
dmd/dsymbol.c | 4 +-
dmd/expression.c | 48 +++++++-------
dmd/expression.h | 32 +++++-----
dmd/func.c | 78 +++++++++++-----------
dmd/init.c | 2 +-
dmd/interpret.c | 8 +-
dmd/mtype.c | 190 ++++++++++++++++++++++++++--------------------------
dmd/mtype.h | 32 +++++-----
dmd/opover.c | 34 +++++-----
dmd/parse.c | 40 ++++++------
dmd/parse.h | 2 +-
dmd/statement.c | 90 +++++++++++++-------------
dmd/statement.h | 14 ++--
dmd/struct.c | 8 +-
dmd/template.c | 30 ++++----
gen/functions.cpp | 10 ++--
gen/functions.h | 2 +-
gen/tocall.cpp | 10 ++--
gen/typinf.cpp | 6 +-
25 files changed, 359 insertions(+), 359 deletions(-)
author | Leandro Lucarella <llucax@gmail.com> |
---|---|
date | Wed, 06 Jan 2010 15:18:20 -0300 |
parents | 7ffac0079d08 |
children |
rev | line source |
---|---|
1264
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
1 enum { |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
2 COMMON, |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
3 INPUT, |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
4 OUTPUT, |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
5 CONDUIT, |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
6 OTHER |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
7 } |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
8 |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
9 interface Common |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
10 { int common(); } |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
11 |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
12 interface Input : Common |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
13 { int input(); } |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
14 |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
15 interface Output : Common |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
16 { int output(); } |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
17 |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
18 interface Conduit : Input, Output |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
19 { abstract int conduit(); } |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
20 |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
21 class Abstract : Conduit |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
22 { |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
23 abstract int conduit(); |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
24 abstract int output(); |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
25 abstract int input(); |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
26 int common() { return COMMON; } |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
27 } |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
28 |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
29 interface Other |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
30 { int other(); } |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
31 |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
32 class Impl : Abstract, Other |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
33 { |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
34 int conduit() { return CONDUIT; } |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
35 int output() { return OUTPUT; } |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
36 int other() { return OTHER; } |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
37 int input() { return INPUT; } |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
38 } |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
39 |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
40 void main() |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
41 { |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
42 auto impl = new Impl; |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
43 |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
44 { |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
45 auto i = impl; |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
46 assert(i.common() == COMMON); |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
47 assert(i.input() == INPUT); |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
48 assert(i.output() == OUTPUT); |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
49 assert(i.conduit() == CONDUIT); |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
50 assert(i.other() == OTHER); |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
51 } |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
52 |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
53 { |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
54 Abstract i = impl; |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
55 assert(i.common() == COMMON); |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
56 assert(i.input() == INPUT); |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
57 assert(i.output() == OUTPUT); |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
58 assert(i.conduit() == CONDUIT); |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
59 } |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
60 |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
61 { |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
62 Conduit i = impl; |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
63 assert(i.common() == COMMON); |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
64 assert(i.input() == INPUT); |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
65 assert(i.output() == OUTPUT); |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
66 assert(i.conduit() == CONDUIT); |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
67 } |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
68 |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
69 { |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
70 Output i = impl; |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
71 assert(i.output() == OUTPUT); |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
72 } |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
73 |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
74 { |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
75 Common i = impl; |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
76 assert(i.common() == COMMON); |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
77 } |
7ffac0079d08
Add (currently failing) test for correct virtual call resolution.
Christian Kamm <kamm incasoftware de>
parents:
diff
changeset
|
78 } |