summaryrefslogtreecommitdiffstats
path: root/libcxx/src/string.cpp
diff options
context:
space:
mode:
authorHoward Hinnant <hhinnant@apple.com>2013-08-01 18:17:34 +0000
committerHoward Hinnant <hhinnant@apple.com>2013-08-01 18:17:34 +0000
commit0be8f64c44d2fe87fdf8feda175dc39d38a83906 (patch)
treed690e336aa492ca6a7109bb6d4a8a6d26100f7ee /libcxx/src/string.cpp
parent695bad54a89ab84591b5bc3211c77af0d5e675a4 (diff)
downloadbcm5719-llvm-0be8f64c44d2fe87fdf8feda175dc39d38a83906.tar.gz
bcm5719-llvm-0be8f64c44d2fe87fdf8feda175dc39d38a83906.zip
Nico Rieck: Currently _MSC_VER and _WIN32 are used to guard code which is
MSVC-specific, MSVCRT-specific, or Windows-specific. Because Clang can also define _MSC_VER, and MSVCRT is not necessarily the only C runtime, these macros should not be used interchangeably. This patch divides all Windows-related bits into the aforementioned categories. Two new macros are introduced: - _LIBCPP_MSVC: Defined when compiling with MSVC. Detected using _MSC_VER, excluding Clang. - _LIBCPP_MSVCRT: Defined when using the Microsoft CRT. This is the default when _WIN32 is defined. This leaves _WIN32 for code using the Windows API. This also corrects the spelling of _LIBCP_HAS_IS_BASE_OF to _LIBCPP_HAS_IS_BASE_OF. Nico, please prepare a patch for CREDITS.TXT, thanks. llvm-svn: 187593
Diffstat (limited to 'libcxx/src/string.cpp')
-rw-r--r--libcxx/src/string.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/libcxx/src/string.cpp b/libcxx/src/string.cpp
index daed7d25973..5a86911654d 100644
--- a/libcxx/src/string.cpp
+++ b/libcxx/src/string.cpp
@@ -13,9 +13,9 @@
#include "cerrno"
#include "limits"
#include "stdexcept"
-#ifdef _WIN32
+#ifdef _LIBCPP_MSVCRT
#include "support/win32/support.h"
-#endif // _WIN32
+#endif // _LIBCPP_MSVCRT
#include <stdio.h>
_LIBCPP_BEGIN_NAMESPACE_STD
@@ -427,7 +427,7 @@ inline
wide_printf
get_swprintf()
{
-#ifndef _WIN32
+#ifndef _LIBCPP_MSVCRT
return swprintf;
#else
return static_cast<int (__cdecl*)(wchar_t* __restrict, size_t, const wchar_t*__restrict, ...)>(swprintf);
OpenPOWER on IntegriCloud