# HG changeset patch # User thomask # Date 1164461844 0 # Node ID 01942d3423b2562fde1238d29aa471b12d0a1d48 # Parent 7020fe16bf5eac4809e75a6762c0dba2e9f4c956 [Issue 532] New: Wrong name mangling for template alias params of local vars Don Clugston 2006-11-16 news:bug-532-3@http.d.puremagic.com/issues/ diff -r 7020fe16bf5e -r 01942d3423b2 compile/m/mangleof_19_A.d --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/compile/m/mangleof_19_A.d Sat Nov 25 13:37:24 2006 +0000 @@ -0,0 +1,31 @@ +// $HeadURL$ +// $Date$ +// $Author$ + +// @author@ Don Clugston +// @date@ 2006-11-16 +// @uri@ news:bug-532-3@http.d.puremagic.com/issues/ +// @desc@ [Issue 532] New: Wrong name mangling for template alias params of local vars + +module dstress.compile.m.mangleof_19_A; + +template Apple(alias F){ + class Basket { + } + + alias void function (Basket) H; + + const char [] mangledname = typeof(H).mangleof; +} + +template Peach(alias A){ + const char [] root = Apple!(A).mangledname; + static assert(Apple!(A).mangledname == root); +} + +int main(){ + int tree; + const char[] s = Peach!(tree).root; + + return 0; +} diff -r 7020fe16bf5e -r 01942d3423b2 compile/m/mangleof_19_B.d --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/compile/m/mangleof_19_B.d Sat Nov 25 13:37:24 2006 +0000 @@ -0,0 +1,31 @@ +// $HeadURL$ +// $Date$ +// $Author$ + +// @author@ Don Clugston +// @date@ 2006-11-16 +// @uri@ news:bug-532-3@http.d.puremagic.com/issues/ +// @desc@ [Issue 532] New: Wrong name mangling for template alias params of local vars + +module dstress.compile.m.mangleof_19_B; + +template Apple(alias F){ + struct Basket { + } + + alias void function (Basket) H; + + const char [] mangledname = typeof(H).mangleof; +} + +template Peach(alias A){ + const char [] root = Apple!(A).mangledname; + static assert(Apple!(A).mangledname == root); +} + +int main(){ + int tree; + const char[] s = Peach!(tree).root; + + return 0; +} diff -r 7020fe16bf5e -r 01942d3423b2 compile/m/mangleof_19_C.d --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/compile/m/mangleof_19_C.d Sat Nov 25 13:37:24 2006 +0000 @@ -0,0 +1,31 @@ +// $HeadURL$ +// $Date$ +// $Author$ + +// @author@ Don Clugston +// @date@ 2006-11-16 +// @uri@ news:bug-532-3@http.d.puremagic.com/issues/ +// @desc@ [Issue 532] New: Wrong name mangling for template alias params of local vars + +module dstress.compile.m.mangleof_19_C; + +template Apple(alias F){ + enum Basket { + } + + alias void function (Basket) H; + + const char [] mangledname = typeof(H).mangleof; +} + +template Peach(alias A){ + const char [] root = Apple!(A).mangledname; + static assert(Apple!(A).mangledname == root); +} + +int main(){ + int tree; + const char[] s = Peach!(tree).root; + + return 0; +} diff -r 7020fe16bf5e -r 01942d3423b2 compile/m/mangleof_19_D.d --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/compile/m/mangleof_19_D.d Sat Nov 25 13:37:24 2006 +0000 @@ -0,0 +1,31 @@ +// $HeadURL$ +// $Date$ +// $Author$ + +// @author@ Don Clugston +// @date@ 2006-11-16 +// @uri@ news:bug-532-3@http.d.puremagic.com/issues/ +// @desc@ [Issue 532] New: Wrong name mangling for template alias params of local vars + +module dstress.compile.m.mangleof_19_D; + +template Apple(alias F){ + union Basket { + } + + alias void function (Basket) H; + + const char [] mangledname = typeof(H).mangleof; +} + +template Peach(alias A){ + const char [] root = Apple!(A).mangledname; + static assert(Apple!(A).mangledname == root); +} + +int main(){ + int tree; + const char[] s = Peach!(tree).root; + + return 0; +} diff -r 7020fe16bf5e -r 01942d3423b2 compile/m/mangleof_19_E.d --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/compile/m/mangleof_19_E.d Sat Nov 25 13:37:24 2006 +0000 @@ -0,0 +1,30 @@ +// $HeadURL$ +// $Date$ +// $Author$ + +// @author@ Don Clugston +// @date@ 2006-11-16 +// @uri@ news:bug-532-3@http.d.puremagic.com/issues/ +// @desc@ [Issue 532] New: Wrong name mangling for template alias params of local vars + +module dstress.compile.m.mangleof_19_E; + +template Apple(alias F){ + typedef int Basket; + + alias void function (Basket) H; + + const char [] mangledname = typeof(H).mangleof; +} + +template Peach(alias A){ + const char [] root = Apple!(A).mangledname; + static assert(Apple!(A).mangledname == root); +} + +int main(){ + int tree; + const char[] s = Peach!(tree).root; + + return 0; +} diff -r 7020fe16bf5e -r 01942d3423b2 compile/m/mangleof_19_F.d --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/compile/m/mangleof_19_F.d Sat Nov 25 13:37:24 2006 +0000 @@ -0,0 +1,30 @@ +// $HeadURL$ +// $Date$ +// $Author$ + +// @author@ Don Clugston +// @date@ 2006-11-16 +// @uri@ news:bug-532-3@http.d.puremagic.com/issues/ +// @desc@ [Issue 532] New: Wrong name mangling for template alias params of local vars + +module dstress.compile.m.mangleof_19_F; + +template Apple(alias F){ + alias int Basket; + + alias void function (Basket) H; + + const char [] mangledname = typeof(H).mangleof; +} + +template Peach(alias A){ + const char [] root = Apple!(A).mangledname; + static assert(Apple!(A).mangledname == root); +} + +int main(){ + int tree; + const char[] s = Peach!(tree).root; + + return 0; +} diff -r 7020fe16bf5e -r 01942d3423b2 compile/m/mangleof_19_G.d --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/compile/m/mangleof_19_G.d Sat Nov 25 13:37:24 2006 +0000 @@ -0,0 +1,30 @@ +// $HeadURL$ +// $Date$ +// $Author$ + +// @author@ Don Clugston +// @date@ 2006-11-16 +// @uri@ news:bug-532-3@http.d.puremagic.com/issues/ +// @desc@ [Issue 532] New: Wrong name mangling for template alias params of local vars + +module dstress.compile.m.mangleof_19_G; + +template Apple(alias F){ + alias int[] Basket; + + alias void function (Basket) H; + + const char [] mangledname = typeof(H).mangleof; +} + +template Peach(alias A){ + const char [] root = Apple!(A).mangledname; + static assert(Apple!(A).mangledname == root); +} + +int main(){ + int tree; + const char[] s = Peach!(tree).root; + + return 0; +}