Mercurial > projects > dstress
changeset 1296:630c47fdf443
[Issue 684] dmd should compile this
david <davidl@126.com>
2006-12-13
http://d.puremagic.com/issues/show_bug.cgi?id=684
author | thomask |
---|---|
date | Sat, 30 Dec 2006 15:39:56 +0000 |
parents | b5658302a26b |
children | c6b68d917f83 |
files | run/t/tuple_11_A.d run/t/tuple_11_B.d run/t/tuple_11_C.d run/t/tuple_11_D.d run/t/tuple_11_E.d run/t/tuple_11_F.d run/t/tuple_11_G.d run/t/tuple_11_H.d |
diffstat | 8 files changed, 300 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/run/t/tuple_11_A.d Sat Dec 30 15:39:56 2006 +0000 @@ -0,0 +1,38 @@ +// $HeadURL$ +// $Date$ +// $Author$ + +// @author@ david <davidl@126.com> +// @date@ 2006-12-13 +// @uri@ http://d.puremagic.com/issues/show_bug.cgi?id=684 +// @desc@ [Issue 684] dmd should compile this + +module dstress.run.t.tuple_11_A; + +uint t_length = uint.max; +uint m_length = uint.max; + +class X{ + static template a(T...){ + template a(M...){ + void a(M m){ + t_length = T.length; + m_length = M.length; + } + } + } +} + +int main(){ + auto x = new X(); + x.a!()(); + + if(t_length != 0){ + assert(0); + } + if(m_length != 0){ + assert(0); + } + + return 0; +}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/run/t/tuple_11_B.d Sat Dec 30 15:39:56 2006 +0000 @@ -0,0 +1,38 @@ +// $HeadURL$ +// $Date$ +// $Author$ + +// @author@ david <davidl@126.com> +// @date@ 2006-12-13 +// @uri@ http://d.puremagic.com/issues/show_bug.cgi?id=684 +// @desc@ [Issue 684] dmd should compile this + +module dstress.run.t.tuple_11_B; + +uint t_length = uint.max; +uint m_length = uint.max; + +class X{ + static template a(T...){ + template a(M...){ + void a(M m){ + t_length = T.length; + m_length = M.length; + } + } + } +} + +int main(){ + auto x = new X(); + x.a!(int)(); + + if(t_length != 1){ + assert(0); + } + if(m_length != 0){ + assert(0); + } + + return 0; +}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/run/t/tuple_11_C.d Sat Dec 30 15:39:56 2006 +0000 @@ -0,0 +1,38 @@ +// $HeadURL$ +// $Date$ +// $Author$ + +// @author@ david <davidl@126.com> +// @date@ 2006-12-13 +// @uri@ http://d.puremagic.com/issues/show_bug.cgi?id=684 +// @desc@ [Issue 684] dmd should compile this + +module dstress.run.t.tuple_11_C; + +uint t_length = uint.max; +uint m_length = uint.max; + +class X{ + static template a(T...){ + template a(M...){ + void a(M m){ + t_length = T.length; + m_length = M.length; + } + } + } +} + +int main(){ + auto x = new X(); + x.a!()(1); + + if(t_length != 0){ + assert(0); + } + if(m_length != 1){ + assert(0); + } + + return 0; +}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/run/t/tuple_11_D.d Sat Dec 30 15:39:56 2006 +0000 @@ -0,0 +1,38 @@ +// $HeadURL$ +// $Date$ +// $Author$ + +// @author@ david <davidl@126.com> +// @date@ 2006-12-13 +// @uri@ http://d.puremagic.com/issues/show_bug.cgi?id=684 +// @desc@ [Issue 684] dmd should compile this + +module dstress.run.t.tuple_11_D; + +uint t_length = uint.max; +uint m_length = uint.max; + +class X{ + static template a(T...){ + template a(M...){ + void a(M m){ + t_length = T.length; + m_length = M.length; + } + } + } +} + +int main(){ + auto x = new X(); + x.a!(float)(1); + + if(t_length != 1){ + assert(0); + } + if(m_length != 1){ + assert(0); + } + + return 0; +}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/run/t/tuple_11_E.d Sat Dec 30 15:39:56 2006 +0000 @@ -0,0 +1,37 @@ +// $HeadURL$ +// $Date$ +// $Author$ + +// @author@ david <davidl@126.com> +// @date@ 2006-12-13 +// @uri@ http://d.puremagic.com/issues/show_bug.cgi?id=684 +// @desc@ [Issue 684] dmd should compile this + +module dstress.run.t.tuple_11_E; + +uint t_length = uint.max; +uint m_length = uint.max; + +class X{ + static template a(T...){ + template a(M...){ + void a(M m){ + t_length = T.length; + m_length = M.length; + } + } + } +} + +int main(){ + X.a!(float)(1); + + if(t_length != 1){ + assert(0); + } + if(m_length != 1){ + assert(0); + } + + return 0; +}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/run/t/tuple_11_F.d Sat Dec 30 15:39:56 2006 +0000 @@ -0,0 +1,37 @@ +// $HeadURL$ +// $Date$ +// $Author$ + +// @author@ david <davidl@126.com> +// @date@ 2006-12-13 +// @uri@ http://d.puremagic.com/issues/show_bug.cgi?id=684 +// @desc@ [Issue 684] dmd should compile this + +module dstress.run.t.tuple_11_F; + +uint t_length = uint.max; +uint m_length = uint.max; + +class X{ + static template a(T...){ + template a(M...){ + void a(M m){ + t_length = T.length; + m_length = M.length; + } + } + } +} + +int main(){ + X.a!()(1); + + if(t_length != 0){ + assert(0); + } + if(m_length != 1){ + assert(0); + } + + return 0; +}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/run/t/tuple_11_G.d Sat Dec 30 15:39:56 2006 +0000 @@ -0,0 +1,37 @@ +// $HeadURL$ +// $Date$ +// $Author$ + +// @author@ david <davidl@126.com> +// @date@ 2006-12-13 +// @uri@ http://d.puremagic.com/issues/show_bug.cgi?id=684 +// @desc@ [Issue 684] dmd should compile this + +module dstress.run.t.tuple_11_G; + +uint t_length = uint.max; +uint m_length = uint.max; + +class X{ + static template a(T...){ + template a(M...){ + void a(M m){ + t_length = T.length; + m_length = M.length; + } + } + } +} + +int main(){ + X.a!(creal)(); + + if(t_length != 1){ + assert(0); + } + if(m_length != 0){ + assert(0); + } + + return 0; +}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/run/t/tuple_11_H.d Sat Dec 30 15:39:56 2006 +0000 @@ -0,0 +1,37 @@ +// $HeadURL$ +// $Date$ +// $Author$ + +// @author@ david <davidl@126.com> +// @date@ 2006-12-13 +// @uri@ http://d.puremagic.com/issues/show_bug.cgi?id=684 +// @desc@ [Issue 684] dmd should compile this + +module dstress.run.t.tuple_11_H; + +uint t_length = uint.max; +uint m_length = uint.max; + +class X{ + static template a(T...){ + template a(M...){ + void a(M m){ + t_length = T.length; + m_length = M.length; + } + } + } +} + +int main(){ + X.a!()(); + + if(t_length != 0){ + assert(0); + } + if(m_length != 0){ + assert(0); + } + + return 0; +}