When I try to compile the code below: import std.algorithm, std.file; void main() { foo(copy); } with a version 2.60 beta of DMD that I built with MSVC, I get back gibberish: Error: undefined identifier foo À+?hŸà‘¿;¢ð: Error: no overload matches for copy(Range1,Range2) if (isInputRange!(Range1) && isOutputRange!(Range2,ElementType!(Range1))) It doesn't happen with the version of DMD that you build with DMC, though. I think it's a buffer overflow bug, unless my version just messed up...
Why is this marked critical? Although people have submitted patches to support MSVC compilation of DMD, and those patches have been incorporated, testing of this build is not done and is not officially supported. In general, if you want to work with an MSVC built version of DMD, you'll need to be willing to chase down any failures in it. I'll be happy to accept pull requests to fix them.
I marked it as critical since it indicated a likely (buffer overflow?) bug in DMD... didn't know it wasn't supported though. Thanks for the info.