annotate run/memory_management_03.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 38ea1bb385b6
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
381
caa540af4671 checked if arrays are passed as reference
thomask
parents:
diff changeset
1 // $HeadURL$
caa540af4671 checked if arrays are passed as reference
thomask
parents:
diff changeset
2 // $Date$
caa540af4671 checked if arrays are passed as reference
thomask
parents:
diff changeset
3 // $Author$
caa540af4671 checked if arrays are passed as reference
thomask
parents:
diff changeset
4
caa540af4671 checked if arrays are passed as reference
thomask
parents:
diff changeset
5 module dstress.run.memory_management_03;
caa540af4671 checked if arrays are passed as reference
thomask
parents:
diff changeset
6
870
38ea1bb385b6 bit -> bool and __DSTRESS_TORTURE_BLOCK__ fixes
thomask
parents: 381
diff changeset
7 void test(bool[] arr){
381
caa540af4671 checked if arrays are passed as reference
thomask
parents:
diff changeset
8 arr[1] = !arr[1];
caa540af4671 checked if arrays are passed as reference
thomask
parents:
diff changeset
9 }
caa540af4671 checked if arrays are passed as reference
thomask
parents:
diff changeset
10
caa540af4671 checked if arrays are passed as reference
thomask
parents:
diff changeset
11 int main(){
870
38ea1bb385b6 bit -> bool and __DSTRESS_TORTURE_BLOCK__ fixes
thomask
parents: 381
diff changeset
12 bool[] c;
381
caa540af4671 checked if arrays are passed as reference
thomask
parents:
diff changeset
13 c.length=3;
caa540af4671 checked if arrays are passed as reference
thomask
parents:
diff changeset
14 c[0]=true;
caa540af4671 checked if arrays are passed as reference
thomask
parents:
diff changeset
15 c[1]=false;
caa540af4671 checked if arrays are passed as reference
thomask
parents:
diff changeset
16 c[2]=false;
caa540af4671 checked if arrays are passed as reference
thomask
parents:
diff changeset
17 test(c);
caa540af4671 checked if arrays are passed as reference
thomask
parents:
diff changeset
18 assert(c[0]==true);
caa540af4671 checked if arrays are passed as reference
thomask
parents:
diff changeset
19 assert(c[1]==true);
caa540af4671 checked if arrays are passed as reference
thomask
parents:
diff changeset
20 assert(c[2]==false);
caa540af4671 checked if arrays are passed as reference
thomask
parents:
diff changeset
21 return 0;
caa540af4671 checked if arrays are passed as reference
thomask
parents:
diff changeset
22 }