|
Archives
D Programming
DD.gnu digitalmars.D digitalmars.D.bugs digitalmars.D.dtl digitalmars.D.ide digitalmars.D.dwt digitalmars.D.announce digitalmars.D.learn digitalmars.D.debugger C/C++ Programming
c++c++.announce c++.atl c++.beta c++.chat c++.command-line c++.dos c++.dos.16-bits c++.dos.32-bits c++.idde c++.mfc c++.rtl c++.stl c++.stl.hp c++.stl.port c++.stl.sgi c++.stlsoft c++.windows c++.windows.16-bits c++.windows.32-bits c++.wxwindows digitalmars.empire digitalmars.DMDScript electronics |
digitalmars.D.bugs - [Issue 2010] New: Template tuples don't work in string mixins
http://d.puremagic.com/issues/show_bug.cgi?id=2010 Summary: Template tuples don't work in string mixins Product: D Version: 2.012 Platform: PC OS/Version: Windows Status: NEW Severity: normal Priority: P2 Component: DMD AssignedTo: bugzilla digitalmars.com ReportedBy: bartosz relisoft.com A variable-argument function works at runtime, but doesn't compile as a mixin: mixin (declareAllFeatures ("a", "b", "c")); string declareAllFeatures (T...)(T features) { string [] arr = []; foreach (f; features) { arr ~= f; } return declareAllFeaturesArr (arr); } string declareAllFeaturesArr (string [] allFeatures) { return "int x;"; } -- Apr 18 2008
http://d.puremagic.com/issues/show_bug.cgi?id=2010 ------- Comment #1 from bartosz relisoft.com 2008-04-18 18:08 ------- The order of declarations seems to matter, so here's the modified example and the error message: string declareAllFeaturesArr (string [] allFeatures) { return "int x;"; } string declareAllFeatures (T...)(T features) { string [] arr = []; foreach (f; features) { arr ~= f; } return declareAllFeaturesArr (arr); } mixin (declareAllFeatures ("a", "b", "c")); Error: cannot evaluate declareAllFeatures(&"a",&"b",&"c") at compile time -- Apr 18 2008
|