digitalmars.D.bugs - [Issue 698] New: variadic arguments have a limit
- d-bugmail puremagic.com (59/59) Dec 19 2006 http://d.puremagic.com/issues/show_bug.cgi?id=698
- d-bugmail puremagic.com (9/9) Dec 19 2006 http://d.puremagic.com/issues/show_bug.cgi?id=698
- John Reimer (11/68) Dec 19 2006 Is there some early release version of 0.178 going around?
- d-bugmail puremagic.com (9/9) Dec 19 2006 http://d.puremagic.com/issues/show_bug.cgi?id=698
- Thomas Kuehne (14/61) Dec 26 2006 -----BEGIN PGP SIGNED MESSAGE-----
- d-bugmail puremagic.com (45/45) Dec 28 2006 http://d.puremagic.com/issues/show_bug.cgi?id=698
- d-bugmail puremagic.com (8/8) Feb 27 2007 http://d.puremagic.com/issues/show_bug.cgi?id=698
http://d.puremagic.com/issues/show_bug.cgi?id=698 Summary: variadic arguments have a limit Product: D Version: 0.178 Platform: PC OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: DMD AssignedTo: bugzilla digitalmars.com ReportedBy: funisher gmail.com ... A small limit at that: template LaLa(E...) { class LaLa { } } void main() { // works new LaLa!("lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala"); // doesn't work new LaLa!("lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala"); // doesn't work new LaLa!("lalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalala", "lalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalala"); } both of those crash the compiler... --
Dec 19 2006
http://d.puremagic.com/issues/show_bug.cgi?id=698 smjg iname.com changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |smjg iname.com Keywords| |ice-on-valid-code DMD 0.178 hasn't been released. Do you mean 0.177 by any chance? --
Dec 19 2006
Is there some early release version of 0.178 going around? Or was this supposed to refer to 0.177. On Tue, 19 Dec 2006 07:43:43 -0800, <d-bugmail puremagic.com> wrote:http://d.puremagic.com/issues/show_bug.cgi?id=3D698 Summary: variadic arguments have a limit Product: D Version: 0.178 Platform: PC OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: DMD AssignedTo: bugzilla digitalmars.com ReportedBy: funisher gmail.com ... A small limit at that: template LaLa(E...) { class LaLa { } } void main() { // works new LaLa!("lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala"); // doesn't work new LaLa!("lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala"); // doesn't work new LaLa!("lalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalal=alalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalal= alalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalal= alalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalal= alalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalal= alalalalalalalalalalalalalalalalalalalalalalalalalalalala","lalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalal=alalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalal= alalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalal= alalalalalalalalalalalalalalalalala");} both of those crash the compiler...
Dec 19 2006
http://d.puremagic.com/issues/show_bug.cgi?id=698 funisher gmail.com changed: What |Removed |Added ---------------------------------------------------------------------------- Version|0.178 |0.177 yep, lol, I wasn't paying attention -- I just figured it was the last one on the list --
Dec 19 2006
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 d-bugmail puremagic.com schrieb am 2006-12-19:http://d.puremagic.com/issues/show_bug.cgi?id=698... A small limit at that: template LaLa(E...) { class LaLa { } } void main() { // works new LaLa!("lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala"); // doesn't work new LaLa!("lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala", "lala"); // doesn't work new LaLa!("lalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalala", "lalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalalala"); } both of those crash the compiler...This is most likely the identifier's size restriction of DMD triggered also by the following test cases: http://dstress.kuehne.cn/run/l/large_id_01_A.d http://dstress.kuehne.cn/run/l/large_id_01_C.d As a work-around you can use the GDC compiler(http://dgcc.sourceforge.net/). Thomas -----BEGIN PGP SIGNATURE----- iD8DBQFFkRkhLK5blCcjpWoRAsICAJwPSu+pBUsiYAeHD1l3ZFgz6mQp9wCgqPMW N0d5aQXD64D1xxi9T9CZBLw= =cj8a -----END PGP SIGNATURE-----
Dec 26 2006
http://d.puremagic.com/issues/show_bug.cgi?id=698 I'm running linux... let me know if you need me to compile a debug version of dmd to get the backtrace Digital Mars D Compiler v0.178 [snipped] set--s i686 Intel(R) Core(TM)2 CPU T7200 2.00GHz GenuineIntel GNU/Linux [above code snipped] Segmentation fault --------------------- (gdb) run test.d Starting program: /usr/bin/dmd test.d (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) Program received signal SIGSEGV, Segmentation fault. 0x36313663 in ?? () (gdb) bt (gdb) --
Dec 28 2006
http://d.puremagic.com/issues/show_bug.cgi?id=698 thomas-dloop kuehne.cn changed: What |Removed |Added ---------------------------------------------------------------------------- Resolution|WORKSFORME |DUPLICATE *** This bug has been marked as a duplicate of 825 *** --
Feb 27 2007