D-Programming-Language/dmd — pull request #2447 by rainers (2013-08-03 06:09:55+00:00)
Title: fix Issue 10746 - Win64: corrupt debug info with very long symbols

Function literals used as alias template arguments print their code into the "pretty" symbol name of the template instance, which can cause very long symbol names. Lacking any other compression this corrupts the CV8 debug info.

At the same time, printing the full code to the console does not produce good error messages as the actual error might even scroll out of the scroll buffer history.

This patch cuts the length of the body and the constraints to about 1000 characters, appending "..." if longer. This is disabled for header generation.