Visual Studio 2013 Preview - isprint() incorrectly classifies ' ' as printable for 'C' locale.

It seems that `isprint() is broken.

The following program demonstrates the problem.

In VS20013 it prints “test failed” in all previous versions of visual studio it prints “test passed”.

From this reference: it seems that VS2013 is broken.

I’ve opened a Microsoft Connect issue for this.

#include <ctype.h>

#include <iostream>

int main()
   int c = 9;

   if (isprint(c))
     std::cout << "test failed" << std::endl;
     std::cout << "test passed" << std::endl;

   return 1;