Mercurial > projects > ldc
annotate tests/mini/interface1.d @ 650:aa6a0b7968f7
Added test case for bug #100
Removed dubious check for not emitting static private global in other modules without access. This should be handled properly somewhere else, it's causing unresolved global errors for stuff that should work (in MiniD)
author | Tomas Lindquist Olsen <tomas.l.olsen@gmail.com> |
---|---|
date | Sun, 05 Oct 2008 17:28:15 +0200 |
parents | 1bb99290e03a |
children |
rev | line source |
---|---|
113
27b9f749d9fe
[svn r117] Initial working implementation of interfaces.
lindquist
parents:
diff
changeset
|
1 module interface1; |
27b9f749d9fe
[svn r117] Initial working implementation of interfaces.
lindquist
parents:
diff
changeset
|
2 |
133
44a95ac7368a
[svn r137] Many fixes towards tango.io.Console working, but not quite there yet...
lindquist
parents:
113
diff
changeset
|
3 extern(C) int printf(char*,...); |
44a95ac7368a
[svn r137] Many fixes towards tango.io.Console working, but not quite there yet...
lindquist
parents:
113
diff
changeset
|
4 |
113
27b9f749d9fe
[svn r117] Initial working implementation of interfaces.
lindquist
parents:
diff
changeset
|
5 interface Inter |
27b9f749d9fe
[svn r117] Initial working implementation of interfaces.
lindquist
parents:
diff
changeset
|
6 { |
27b9f749d9fe
[svn r117] Initial working implementation of interfaces.
lindquist
parents:
diff
changeset
|
7 void func(); |
27b9f749d9fe
[svn r117] Initial working implementation of interfaces.
lindquist
parents:
diff
changeset
|
8 } |
27b9f749d9fe
[svn r117] Initial working implementation of interfaces.
lindquist
parents:
diff
changeset
|
9 |
27b9f749d9fe
[svn r117] Initial working implementation of interfaces.
lindquist
parents:
diff
changeset
|
10 class Class : Inter |
27b9f749d9fe
[svn r117] Initial working implementation of interfaces.
lindquist
parents:
diff
changeset
|
11 { |
27b9f749d9fe
[svn r117] Initial working implementation of interfaces.
lindquist
parents:
diff
changeset
|
12 override void func() |
27b9f749d9fe
[svn r117] Initial working implementation of interfaces.
lindquist
parents:
diff
changeset
|
13 { |
27b9f749d9fe
[svn r117] Initial working implementation of interfaces.
lindquist
parents:
diff
changeset
|
14 printf("hello world\n"); |
27b9f749d9fe
[svn r117] Initial working implementation of interfaces.
lindquist
parents:
diff
changeset
|
15 } |
27b9f749d9fe
[svn r117] Initial working implementation of interfaces.
lindquist
parents:
diff
changeset
|
16 } |
27b9f749d9fe
[svn r117] Initial working implementation of interfaces.
lindquist
parents:
diff
changeset
|
17 |
27b9f749d9fe
[svn r117] Initial working implementation of interfaces.
lindquist
parents:
diff
changeset
|
18 void main() |
27b9f749d9fe
[svn r117] Initial working implementation of interfaces.
lindquist
parents:
diff
changeset
|
19 { |
27b9f749d9fe
[svn r117] Initial working implementation of interfaces.
lindquist
parents:
diff
changeset
|
20 scope c = new Class; |
27b9f749d9fe
[svn r117] Initial working implementation of interfaces.
lindquist
parents:
diff
changeset
|
21 c.func(); |
27b9f749d9fe
[svn r117] Initial working implementation of interfaces.
lindquist
parents:
diff
changeset
|
22 Inter i = c; |
27b9f749d9fe
[svn r117] Initial working implementation of interfaces.
lindquist
parents:
diff
changeset
|
23 i.func(); |
27b9f749d9fe
[svn r117] Initial working implementation of interfaces.
lindquist
parents:
diff
changeset
|
24 } |