Mercurial > projects > dstress
diff run/mini/nested17.d @ 1628:c6ef09dfba4d
add mini test set from ldc project
author | Moritz Warning <moritzwarning@web.de> |
---|---|
date | Mon, 10 Jan 2011 19:47:18 +0100 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/run/mini/nested17.d Mon Jan 10 19:47:18 2011 +0100 @@ -0,0 +1,45 @@ +// $HeadURL: svn://svn.berlios.de/dstress/trunk/run/n/nested_class_03_A.d $ +// $Date: 2005-06-18 09:15:32 +0200 (Sat, 18 Jun 2005) $ +// $Author: thomask $ + +// @author@ John C <johnch_atms@hotmail.com> +// @date@ 2005-06-09 +// @uri@ news:d88vta$vak$1@digitaldaemon.com + +//module dstress.run.n.nested_class_03_A; +module mini.nested17; + +interface Inner{ + int value(); +} + +class Outer{ + int x; + + Inner test(){ + printf("val = %d\n", x); + return new class Inner { + int y; + + this(){ + printf("val = %d\n", x); + y=x; + } + + int value(){ + return y; + } + }; + } +} + +int main(){ + Outer o = new Outer(); + o.x=2; + int val = o.test().value(); + printf("val = %d\n", val); + assert(val == o.x); + return 0; +} + +extern(C) int printf(char*, ...);