Cleans up the use of GTEST_OS_WINDOWS and _MSC_VER.

This commit is contained in:
zhanyong.wan 2009-03-31 16:27:55 +00:00
parent 3e54f5a371
commit 6a26383e31
5 changed files with 13 additions and 24 deletions

View File

@ -51,15 +51,8 @@
#ifndef GTEST_INCLUDE_GTEST_GTEST_H_
#define GTEST_INCLUDE_GTEST_GTEST_H_
// The following platform macros are used throughout Google Test:
// The following platform macro is used throughout Google Test:
// _WIN32_WCE Windows CE (set in project files)
//
// Note that even though _MSC_VER and _WIN32_WCE really indicate a compiler
// and a Win32 implementation, respectively, we use them to indicate the
// combination of compiler - Win 32 API - C library, since the code currently
// only supports:
// Windows proper with Visual C++ and MS C library (_MSC_VER && !_WIN32_WCE) and
// Windows Mobile with Visual C++ and no C library (_WIN32_WCE).
#include <limits>
#include <gtest/internal/gtest-internal.h>

View File

@ -172,11 +172,7 @@
#define GTEST_OS_CYGWIN 1
#elif __SYMBIAN32__
#define GTEST_OS_SYMBIAN 1
#elif defined _MSC_VER
// TODO(kenton@google.com): GTEST_OS_WINDOWS is currently used to mean
// both "The OS is Windows" and "The compiler is MSVC". These
// meanings really should be separated in order to better support
// Windows compilers other than MSVC.
#elif defined _WIN32
#define GTEST_OS_WINDOWS 1
#elif defined __APPLE__
#define GTEST_OS_MAC 1
@ -186,7 +182,7 @@
#define GTEST_OS_ZOS 1
#elif defined(__sun) && defined(__SVR4)
#define GTEST_OS_SOLARIS 1
#endif // _MSC_VER
#endif // __CYGWIN__
#if GTEST_OS_CYGWIN || GTEST_OS_LINUX || GTEST_OS_MAC

View File

@ -62,12 +62,12 @@
namespace testing {
namespace internal {
#if GTEST_OS_WINDOWS
// Microsoft does not provide a definition of STDERR_FILENO.
#ifdef _MSC_VER
// MSVC does not provide a definition of STDERR_FILENO.
const int kStdErrFileno = 2;
#else
const int kStdErrFileno = STDERR_FILENO;
#endif // GTEST_OS_WINDOWS
#endif // _MSC_VER
#if GTEST_USES_POSIX_RE

View File

@ -1710,16 +1710,16 @@ String String::Format(const char * format, ...) {
char buffer[4096];
// MSVC 8 deprecates vsnprintf(), so we want to suppress warning
// 4996 (deprecated function) there.
#if GTEST_OS_WINDOWS // We are on Windows.
#ifdef _MSC_VER // We are using MSVC.
#pragma warning(push) // Saves the current warning state.
#pragma warning(disable:4996) // Temporarily disables warning 4996.
const int size =
vsnprintf(buffer, sizeof(buffer)/sizeof(buffer[0]) - 1, format, args);
#pragma warning(pop) // Restores the warning state.
#else // We are on Linux or Mac OS.
#else // We are not using MSVC.
const int size =
vsnprintf(buffer, sizeof(buffer)/sizeof(buffer[0]) - 1, format, args);
#endif // GTEST_OS_WINDOWS
#endif // _MSC_VER
va_end(args);
return String(size >= 0 ? buffer : "<buffer exceeded>");

View File

@ -3148,9 +3148,9 @@ TEST(AssertionTest, ExpectWorksWithUncopyableObject) {
// The version of gcc used in XCode 2.2 has a bug and doesn't allow
// anonymous enums in assertions. Therefore the following test is
// done only on Linux and Windows.
#if GTEST_OS_LINUX || GTEST_OS_WINDOWS
// anonymous enums in assertions. Therefore the following test is not
// done on Mac.
#if !GTEST_OS_MAC
// Tests using assertions with anonymous enums.
enum {
@ -3195,7 +3195,7 @@ TEST(AssertionTest, AnonymousEnum) {
"Value of: CASE_B");
}
#endif // GTEST_OS_LINUX || GTEST_OS_WINDOWS
#endif // !GTEST_OS_MAC
#if GTEST_OS_WINDOWS