Mercurial > projects > dstress
changeset 1102:7187745681d9
[Issue 236] Class literal expression always says "base classes expected"
Jarrett Billingsley <jarrett.billingsley@gmail.com>
2006-07-02
news:bug-236-3@http.d.puremagic.com/issues/
author | thomask |
---|---|
date | Tue, 15 Aug 2006 09:45:21 +0000 |
parents | a00abc0969b3 |
children | 246bfd1f5ef5 |
files | run/c/class_26_A.d run/c/class_26_B.d |
diffstat | 2 files changed, 84 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/run/c/class_26_A.d Tue Aug 15 09:45:21 2006 +0000 @@ -0,0 +1,43 @@ +// $HeadURL$ +// $Date$ +// $Author$ + +// @author@ Jarrett Billingsley <jarrett.billingsley@gmail.com> +// @date@ 2006-07-02 +// @uri@ news:bug-236-3@http.d.puremagic.com/issues/ +// @desc@ [Issue 236] Class literal expression always says "base classes expected" + +module dstress.run.c.class_26_A; + +int main(){ + int status; + + int delegate() foo(){ + class C{ + int dg(){ + return ++status; + } + } + + C c = new C(); + + return &c.dg; + } + + int delegate() bar = foo(); + + if(status != 0){ + assert(0); + } + + if(bar() != 1){ + assert(0); + } + + if(status != 1){ + assert(0); + } + + return 0; +} +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/run/c/class_26_B.d Tue Aug 15 09:45:21 2006 +0000 @@ -0,0 +1,41 @@ +// $HeadURL$ +// $Date$ +// $Author$ + +// @author@ Jarrett Billingsley <jarrett.billingsley@gmail.com> +// @date@ 2006-07-02 +// @uri@ news:bug-236-3@http.d.puremagic.com/issues/ +// @desc@ [Issue 236] Class literal expression always says "base classes expected" + +module dstress.run.c.class_26_B; + + +int main(){ + int status; + + int delegate() foo(){ + return &(new class + { + int dg(){ + return ++status; + } + } + ).dg; + } + + int delegate() bar = foo(); + + if(status != 0){ + assert(0); + } + + if(bar() != 1){ + assert(0); + } + + if(status != 1){ + assert(0); + } + + return 0; +}