annotate run/keys_01.d @ 1630:d0efa3ae5522 default tip

run/mini/naked_asm5: New x86_64 ABI passes the arguments in reverse order.
author David Nadlinger <code@klickverbot.at>
date Sat, 23 Apr 2011 22:57:32 +0200
parents f87ba6507260
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
374
f87ba6507260 added missing meta-data
thomask
parents: 4
diff changeset
1 // $HeadURL$
f87ba6507260 added missing meta-data
thomask
parents: 4
diff changeset
2 // $Date$
f87ba6507260 added missing meta-data
thomask
parents: 4
diff changeset
3 // $Author$
f87ba6507260 added missing meta-data
thomask
parents: 4
diff changeset
4
f87ba6507260 added missing meta-data
thomask
parents: 4
diff changeset
5 module dstress.run.keys_01;
f87ba6507260 added missing meta-data
thomask
parents: 4
diff changeset
6
4
1ed6616fe905 extended array tests
thomask
parents:
diff changeset
7 int main(){
1ed6616fe905 extended array tests
thomask
parents:
diff changeset
8 int[char[]] array;
1ed6616fe905 extended array tests
thomask
parents:
diff changeset
9 array["eins"]=1;
1ed6616fe905 extended array tests
thomask
parents:
diff changeset
10 array["zwei"]=2;
1ed6616fe905 extended array tests
thomask
parents:
diff changeset
11 array["drei"]=3;
1ed6616fe905 extended array tests
thomask
parents:
diff changeset
12
1ed6616fe905 extended array tests
thomask
parents:
diff changeset
13 char[][] key = array.keys;
1ed6616fe905 extended array tests
thomask
parents:
diff changeset
14 assert(key.length==3);
1ed6616fe905 extended array tests
thomask
parents:
diff changeset
15
1ed6616fe905 extended array tests
thomask
parents:
diff changeset
16 bool have[3];
1ed6616fe905 extended array tests
thomask
parents:
diff changeset
17
1ed6616fe905 extended array tests
thomask
parents:
diff changeset
18 assert(!have[0]);
1ed6616fe905 extended array tests
thomask
parents:
diff changeset
19 assert(!have[1]);
1ed6616fe905 extended array tests
thomask
parents:
diff changeset
20 assert(!have[2]);
1ed6616fe905 extended array tests
thomask
parents:
diff changeset
21
1ed6616fe905 extended array tests
thomask
parents:
diff changeset
22 foreach(char[] value; key){
1ed6616fe905 extended array tests
thomask
parents:
diff changeset
23 switch(value){
1ed6616fe905 extended array tests
thomask
parents:
diff changeset
24 case "eins":{
1ed6616fe905 extended array tests
thomask
parents:
diff changeset
25 have[0]=true;
1ed6616fe905 extended array tests
thomask
parents:
diff changeset
26 break;
1ed6616fe905 extended array tests
thomask
parents:
diff changeset
27 }case "zwei":{
1ed6616fe905 extended array tests
thomask
parents:
diff changeset
28 have[1]=true;
1ed6616fe905 extended array tests
thomask
parents:
diff changeset
29 break;
1ed6616fe905 extended array tests
thomask
parents:
diff changeset
30 }case "drei":{
1ed6616fe905 extended array tests
thomask
parents:
diff changeset
31 have[2]=true;
1ed6616fe905 extended array tests
thomask
parents:
diff changeset
32 break;
1ed6616fe905 extended array tests
thomask
parents:
diff changeset
33 }default:{
1ed6616fe905 extended array tests
thomask
parents:
diff changeset
34 assert(0);
1ed6616fe905 extended array tests
thomask
parents:
diff changeset
35 }
1ed6616fe905 extended array tests
thomask
parents:
diff changeset
36 }
1ed6616fe905 extended array tests
thomask
parents:
diff changeset
37 }
1ed6616fe905 extended array tests
thomask
parents:
diff changeset
38
1ed6616fe905 extended array tests
thomask
parents:
diff changeset
39 assert(have[0]);
1ed6616fe905 extended array tests
thomask
parents:
diff changeset
40 assert(have[1]);
1ed6616fe905 extended array tests
thomask
parents:
diff changeset
41 assert(have[2]);
1ed6616fe905 extended array tests
thomask
parents:
diff changeset
42
1ed6616fe905 extended array tests
thomask
parents:
diff changeset
43 return 0;
1ed6616fe905 extended array tests
thomask
parents:
diff changeset
44 }