annotate run/default_argument_09.d @ 1576:b3e16c86558e

[Issue 1398] New: GDC doesn't generate correct code <mariusmuja@gmail.com> 2007-08-04 http://d.puremagic.com/issues/show_bug.cgi?id=1398
author thomask
date Thu, 21 Feb 2008 15:20:08 +0000
parents 36bedfa079e6
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
422
95f08c5ab3e9 default argument, forward reference
thomask
parents:
diff changeset
1 // $HeadURL$
95f08c5ab3e9 default argument, forward reference
thomask
parents:
diff changeset
2 // $Date$
95f08c5ab3e9 default argument, forward reference
thomask
parents:
diff changeset
3 // $Author$
95f08c5ab3e9 default argument, forward reference
thomask
parents:
diff changeset
4
95f08c5ab3e9 default argument, forward reference
thomask
parents:
diff changeset
5 // @author@ Lars Ivar Igesund <larsivar@igesund.net>
95f08c5ab3e9 default argument, forward reference
thomask
parents:
diff changeset
6 // @date@ 2005-04-09
1489
b8c0195059d9 changed nntp: URLs to http: URLs
thomask
parents: 422
diff changeset
7 // @uri@ http://www.digitalmars.com/pnews/read.php?server=news.digitalmars.com&group=digitalmars.D.bugs&artnum=3596
422
95f08c5ab3e9 default argument, forward reference
thomask
parents:
diff changeset
8
95f08c5ab3e9 default argument, forward reference
thomask
parents:
diff changeset
9 module dstress.run.default_argument_09;
95f08c5ab3e9 default argument, forward reference
thomask
parents:
diff changeset
10
95f08c5ab3e9 default argument, forward reference
thomask
parents:
diff changeset
11 char [] BAR = "Bar";
95f08c5ab3e9 default argument, forward reference
thomask
parents:
diff changeset
12
1560
36bedfa079e6 D1 -> D2 : 2/N
thomask
parents: 1489
diff changeset
13 int foo(char [] x = BAR){
36bedfa079e6 D1 -> D2 : 2/N
thomask
parents: 1489
diff changeset
14 return x.length;
422
95f08c5ab3e9 default argument, forward reference
thomask
parents:
diff changeset
15 }
95f08c5ab3e9 default argument, forward reference
thomask
parents:
diff changeset
16
95f08c5ab3e9 default argument, forward reference
thomask
parents:
diff changeset
17 int main(){
95f08c5ab3e9 default argument, forward reference
thomask
parents:
diff changeset
18 assert(foo()==3);
95f08c5ab3e9 default argument, forward reference
thomask
parents:
diff changeset
19 assert(foo("a")==1);
95f08c5ab3e9 default argument, forward reference
thomask
parents:
diff changeset
20 assert(foo==3);
95f08c5ab3e9 default argument, forward reference
thomask
parents:
diff changeset
21 BAR="ab";
95f08c5ab3e9 default argument, forward reference
thomask
parents:
diff changeset
22 assert(foo==2);
95f08c5ab3e9 default argument, forward reference
thomask
parents:
diff changeset
23 return 0;
95f08c5ab3e9 default argument, forward reference
thomask
parents:
diff changeset
24 }