Mercurial > projects > dstress
changeset 1544:ab3b56fdd9ab
[Issue 1148] Weird error "... of type TOK146" on recursive type definition
Bruno Medeiros <brunodomedeiros+bugz@gmail.com>
2007-05-26
http://d.puremagic.com/issues/show_bug.cgi?id=1148
author | thomask |
---|---|
date | Sun, 01 Jul 2007 13:22:46 +0000 |
parents | 9597b1b8030f |
children | 111a9895f863 |
files | run/t/typeof_17_A.d run/t/typeof_17_B.d run/t/typeof_17_C.d |
diffstat | 3 files changed, 90 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/run/t/typeof_17_A.d Sun Jul 01 13:22:46 2007 +0000 @@ -0,0 +1,32 @@ +// $HeadURL$ +// $Date$ +// $Author$ + +// @author@ Bruno Medeiros <brunodomedeiros+bugz@gmail.com> +// @date@ 2007-05-26 +// @uri@ http://d.puremagic.com/issues/show_bug.cgi?id=1148 +// @desc@ [Issue 1148] Weird error "... of type TOK146" on recursive type definition + +module dstress.run.t.typeof_17_A; + +void* v; + +void bar(void* fn){ + v = cast(void*)fn; +} + +void foo(functype param) { + param(null); +} + +alias void function(void*) functype; + +int main(){ + v = &main; + foo(&bar); + if(null !is v){ + assert(0); + } + + return 0; +}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/run/t/typeof_17_B.d Sun Jul 01 13:22:46 2007 +0000 @@ -0,0 +1,34 @@ +// $HeadURL$ +// $Date$ +// $Author$ + +// @author@ Bruno Medeiros <brunodomedeiros+bugz@gmail.com> +// @date@ 2007-05-26 +// @uri@ http://d.puremagic.com/issues/show_bug.cgi?id=1148 +// @desc@ [Issue 1148] Weird error "... of type TOK146" on recursive type definition + +module dstress.run.t.typeof_17_B; + +int count; + +void foo(functype param) { + count++; + if(param){ + param(null); + } +} + +alias typeof(&foo) functype; + +int main(){ + foo(null); + if(count != 1){ + assert(0); + } + foo(&foo); + if(count != 3){ + assert(0); + } + + return 0; +}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/run/t/typeof_17_C.d Sun Jul 01 13:22:46 2007 +0000 @@ -0,0 +1,24 @@ +// $HeadURL$ +// $Date$ +// $Author$ + +// @author@ Bruno Medeiros <brunodomedeiros+bugz@gmail.com> +// @date@ 2007-05-26 +// @uri@ http://d.puremagic.com/issues/show_bug.cgi?id=1148 +// @desc@ [Issue 1148] Weird error "... of type TOK146" on recursive type definition + +module dstress.run.t.typeof_17_C; + +functype foo(int i) { + return null; +} + +alias typeof(&foo) functype; + +int main(){ + if(foo(1) !is null){ + assert(0); + } + + return 0; +}