#if U_HAVE_STD_STRING
+#if defined(_MSC_VER) && _HAS_EXCEPTIONS == 0
+#else
namespace std { class type_info; } // WORKAROUND: http://llvm.org/bugs/show_bug.cgi?id=13364
+#endif
#include <string>
#endif // U_HAVE_STD_STRING
#if defined(_MSC_VER) && _HAS_EXCEPTIONS == 0
#include <exception>
using std::exception;
+#else
+namespace std { class type_info; } // WORKAROUND: http://llvm.org/bugs/show_bug.cgi?id=13364
#endif
-namespace std { class type_info; } // WORKAROUND: http://llvm.org/bugs/show_bug.cgi?id=13364
#include <typeinfo> // for 'typeid' to work
#endif
* C++ I/O stream API.
*/
-namespace std { class type_info; } // WORKAROUND: http://llvm.org/bugs/show_bug.cgi?id=13364
+#if defined(_MSC_VER) && _HAS_EXCEPTIONS == 0
+#else
+namespace std { class type_info; } // WORKAROUND: http://llvm.org/bugs/show_bug.cgi?id=13364
+#endif
#if U_IOSTREAM_SOURCE >= 199711
#if (__GNUC__ == 2)
#include <string.h>
#include <stdio.h>
+#if defined(_MSC_VER) && _HAS_EXCEPTIONS == 0
+#else
namespace std { class type_info; } // WORKAROUND: http://llvm.org/bugs/show_bug.cgi?id=13364
+#endif
#include <string>
#include <iostream>