From 96f51426e4c776a71d0a446c1e4f4c7a5ea921df Mon Sep 17 00:00:00 2001
From: Derek Mauro <dmauro@google.com>
Date: Thu, 30 Jun 2022 09:53:12 -0700
Subject: Remove support for C++11

v1.12.x is the last branch to support C++11
Future releases will require at least C++14

PiperOrigin-RevId: 458250106
Change-Id: Ibee2248649ff3c13daaa179135887848bf730f3f
---
 README.md                | 9 ++++++---
 ci/linux-presubmit.sh    | 4 ++--
 ci/macos-presubmit.sh    | 5 +++--
 docs/quickstart-bazel.md | 2 +-
 docs/quickstart-cmake.md | 6 +++---
 5 files changed, 15 insertions(+), 11 deletions(-)

diff --git a/README.md b/README.md
index 4c0f0c4..745f5c2 100644
--- a/README.md
+++ b/README.md
@@ -15,11 +15,14 @@ Our documentation is now live on GitHub Pages at
 https://google.github.io/googletest/. We recommend browsing the documentation on
 GitHub Pages rather than directly in the repository.
 
-#### Release 1.12.0
+#### Release 1.12.1
 
-[Release 1.12.0](https://github.com/google/googletest/releases/tag/release-1.12.0)
+[Release 1.12.1](https://github.com/google/googletest/releases/tag/release-1.12.1)
 is now available.
 
+The 1.12.x branch will be the last to support C++11. Future releases will
+require at least C++14.
+
 #### Coming Soon
 
 *   We are planning to take a dependency on
@@ -56,7 +59,7 @@ More information about building GoogleTest can be found at
 
 ## Supported Platforms
 
-GoogleTest requires a codebase and compiler compliant with the C++11 standard or
+GoogleTest requires a codebase and compiler compliant with the C++14 standard or
 newer.
 
 The GoogleTest code is officially supported on the following platforms.
diff --git a/ci/linux-presubmit.sh b/ci/linux-presubmit.sh
index 0ee5670..09abdc8 100644
--- a/ci/linux-presubmit.sh
+++ b/ci/linux-presubmit.sh
@@ -39,7 +39,7 @@ if [[ -z ${GTEST_ROOT:-} ]]; then
 fi
 
 if [[ -z ${STD:-} ]]; then
-  STD="c++11 c++14 c++17 c++20"
+  STD="c++14 c++17 c++20"
 fi
 
 # Test the CMake build
@@ -55,7 +55,7 @@ for cc in /usr/local/bin/gcc /opt/llvm/clang/bin/clang; do
       ${LINUX_LATEST_CONTAINER} \
       /bin/bash -c "
         cmake /src \
-          -DCMAKE_CXX_STANDARD=11 \
+          -DCMAKE_CXX_STANDARD=14 \
           -Dgtest_build_samples=ON \
           -Dgtest_build_tests=ON \
           -Dgmock_build_tests=ON \
diff --git a/ci/macos-presubmit.sh b/ci/macos-presubmit.sh
index d6423fa..3b711da 100644
--- a/ci/macos-presubmit.sh
+++ b/ci/macos-presubmit.sh
@@ -40,7 +40,7 @@ for cmake_off_on in OFF ON; do
   BUILD_DIR=$(mktemp -d build_dir.XXXXXXXX)
   cd ${BUILD_DIR}
   time cmake ${GTEST_ROOT} \
-    -DCMAKE_CXX_STANDARD=11 \
+    -DCMAKE_CXX_STANDARD=14 \
     -Dgtest_build_samples=ON \
     -Dgtest_build_tests=ON \
     -Dgmock_build_tests=ON \
@@ -53,7 +53,7 @@ done
 # Test the Bazel build
 
 # If we are running on Kokoro, check for a versioned Bazel binary.
-KOKORO_GFILE_BAZEL_BIN="bazel-3.7.0-darwin-x86_64"
+KOKORO_GFILE_BAZEL_BIN="bazel-5.1.1-darwin-x86_64"
 if [[ ${KOKORO_GFILE_DIR:-} ]] && [[ -f ${KOKORO_GFILE_DIR}/${KOKORO_GFILE_BAZEL_BIN} ]]; then
   BAZEL_BIN="${KOKORO_GFILE_DIR}/${KOKORO_GFILE_BAZEL_BIN}"
   chmod +x ${BAZEL_BIN}
@@ -66,6 +66,7 @@ for absl in 0 1; do
   ${BAZEL_BIN} test ... \
     --copt="-Wall" \
     --copt="-Werror" \
+    --cxxopt="-std=c++14" \
     --define="absl=${absl}" \
     --keep_going \
     --show_timestamps \
diff --git a/docs/quickstart-bazel.md b/docs/quickstart-bazel.md
index 5d6e9c6..c187e72 100644
--- a/docs/quickstart-bazel.md
+++ b/docs/quickstart-bazel.md
@@ -9,7 +9,7 @@ we recommend this tutorial as a starting point.
 To complete this tutorial, you'll need:
 
 *   A compatible operating system (e.g. Linux, macOS, Windows).
-*   A compatible C++ compiler that supports at least C++11.
+*   A compatible C++ compiler that supports at least C++14.
 *   [Bazel](https://bazel.build/), the preferred build system used by the
     GoogleTest team.
 
diff --git a/docs/quickstart-cmake.md b/docs/quickstart-cmake.md
index 420f1d3..fb72f38 100644
--- a/docs/quickstart-cmake.md
+++ b/docs/quickstart-cmake.md
@@ -10,7 +10,7 @@ this tutorial as a starting point. If your project uses Bazel, see the
 To complete this tutorial, you'll need:
 
 *   A compatible operating system (e.g. Linux, macOS, Windows).
-*   A compatible C++ compiler that supports at least C++11.
+*   A compatible C++ compiler that supports at least C++14.
 *   [CMake](https://cmake.org/) and a compatible build tool for building the
     project.
     *   Compatible build tools include
@@ -52,8 +52,8 @@ To do this, in your project directory (`my_project`), create a file named
 cmake_minimum_required(VERSION 3.14)
 project(my_project)
 
-# GoogleTest requires at least C++11
-set(CMAKE_CXX_STANDARD 11)
+# GoogleTest requires at least C++14
+set(CMAKE_CXX_STANDARD 14)
 
 include(FetchContent)
 FetchContent_Declare(
-- 
cgit v0.12