From 9d76b88b263d73474d4625c56429e97060e64f29 Mon Sep 17 00:00:00 2001 From: "kosak@google.com" Date: Fri, 17 Jul 2015 23:08:48 +0000 Subject: Determine the existence of hash_map/hash_set in gtest-port.h. git-svn-id: http://googletest.googlecode.com/svn/trunk@727 861a406c-534a-0410-8894-cb66d6ee9925 --- include/gtest/internal/gtest-port.h | 9 +++++++++ src/gtest-port.cc | 1 - test/gtest-printers_test.cc | 10 +++++----- 3 files changed, 14 insertions(+), 6 deletions(-) diff --git a/include/gtest/internal/gtest-port.h b/include/gtest/internal/gtest-port.h index 4e7e855..864a90c 100644 --- a/include/gtest/internal/gtest-port.h +++ b/include/gtest/internal/gtest-port.h @@ -606,6 +606,15 @@ struct _RTL_CRITICAL_SECTION; # include // NOLINT #endif +// Determines if hash_map/hash_set are available. +// Only used for testing against those containers. +#if !defined(GTEST_HAS_HASH_MAP_) +# if _MSC_VER +# define GTEST_HAS_HASH_MAP_ 1 // Indicates that hash_map is available. +# define GTEST_HAS_HASH_SET_ 1 // Indicates that hash_set is available. +# endif // _MSC_VER +#endif // !defined(GTEST_HAS_HASH_MAP_) + // Determines whether Google Test can use tr1/tuple. You can define // this macro to 0 to prevent Google Test from using tuple (any // feature depending on tuple with be disabled in this mode). diff --git a/src/gtest-port.cc b/src/gtest-port.cc index 19fa028..cd3ac9a 100644 --- a/src/gtest-port.cc +++ b/src/gtest-port.cc @@ -887,7 +887,6 @@ GTEST_API_ ::std::string FormatCompilerIndependentFileLocation( return file_name + ":" + StreamableToString(line); } - GTestLog::GTestLog(GTestLogSeverity severity, const char* file, int line) : severity_(severity) { const char* const marker = diff --git a/test/gtest-printers_test.cc b/test/gtest-printers_test.cc index a6636c5..3e97cc2 100644 --- a/test/gtest-printers_test.cc +++ b/test/gtest-printers_test.cc @@ -50,13 +50,13 @@ #include "gtest/gtest.h" -// hash_map and hash_set are available under Visual C++. -#if _MSC_VER -# define GTEST_HAS_HASH_MAP_ 1 // Indicates that hash_map is available. +// hash_map and hash_set are available under Visual C++, or on Linux. +#if GTEST_HAS_HASH_MAP_ # include // NOLINT -# define GTEST_HAS_HASH_SET_ 1 // Indicates that hash_set is available. +#endif // GTEST_HAS_HASH_MAP_ +#if GTEST_HAS_HASH_SET_ # include // NOLINT -#endif // GTEST_OS_WINDOWS +#endif // GTEST_HAS_HASH_SET_ #if GTEST_HAS_STD_FORWARD_LIST_ # include // NOLINT -- cgit v1.2.1