Fix build of Objective-C++ files with new clang versions.
diff --git a/include/gtest/internal/gtest-port.h b/include/gtest/internal/gtest-port.h
index d8f22c2..208dcfb 100644
--- a/include/gtest/internal/gtest-port.h
+++ b/include/gtest/internal/gtest-port.h
@@ -498,6 +498,11 @@
 #   define _HAS_EXCEPTIONS 1
 #  endif  // _HAS_EXCEPTIONS
 #  define GTEST_HAS_EXCEPTIONS _HAS_EXCEPTIONS
+# elif defined(__clang__)
+// __EXCEPTIONS determines if cleanups are enabled. In Obj-C++ files, there can
+// be cleanups for ObjC exceptions, but C++ exceptions might still be disabled.
+// So use a __has_feature check for C++ exceptions instead.
+#  define GTEST_HAS_EXCEPTIONS __has_feature(cxx_exceptions)
 # elif defined(__GNUC__) && __EXCEPTIONS
 // gcc defines __EXCEPTIONS to 1 iff exceptions are enabled.
 #  define GTEST_HAS_EXCEPTIONS 1