October 13, 2013 [Issue 11248] New: template value parameter cause too long mangling | ||||
---|---|---|---|---|
| ||||
http://d.puremagic.com/issues/show_bug.cgi?id=11248 Summary: template value parameter cause too long mangling Product: D Version: D2 Platform: All OS/Version: All Status: NEW Severity: normal Priority: P2 Component: DMD AssignedTo: nobody@puremagic.com ReportedBy: code@dawg.eu --- Comment #0 from Martin Nowak <code@dawg.eu> 2013-10-13 13:39:20 PDT --- // huge tables enum someData = [...]; enum someMoreData = [...]; template processData(alias data) { // small result static immutable result = doSomething(data); } alias data = processData!someData; alias moreData = processData!someMoreData; ---- The mangling becomes a problem because certain compile time data still ends up in the object file. When using the above pattern to process compile time data only the result should be part of the object file, but because the whole data is part of the template mangling we end up with a huge symbol name and a big object file. I think a feasible solution is to abbreviate too long data in mangling by a hash (MD5 or SHA1). -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- |
Copyright © 1999-2021 by the D Language Foundation