From 262d74ba81b1fc4d71f459555cde8ecb39786d68 Mon Sep 17 00:00:00 2001 From: Abseil Team Date: Tue, 20 Aug 2019 15:53:09 -0700 Subject: Export of internal Abseil changes -- 1639d4832e961761060e61196e45948e25dc2676 by Derek Mauro : Delete GCC 4.8 test script. GCC 4.8 is no longer supported. PiperOrigin-RevId: 264485899 -- 2a9b2182646b6c6675dce614dcce2c18174303d3 by Derek Mauro : Make btree_test work with exceptions both enabled and disabled PiperOrigin-RevId: 264473656 GitOrigin-RevId: 1639d4832e961761060e61196e45948e25dc2676 Change-Id: Ica58a2328fa261ecc4c4be410f68f97942074025 --- absl/container/BUILD.bazel | 1 + absl/container/CMakeLists.txt | 1 + absl/container/btree_test.cc | 12 ++++---- ci/linux_gcc-4.8_libstdcxx_cmake.sh | 61 ------------------------------------- 4 files changed, 8 insertions(+), 67 deletions(-) delete mode 100755 ci/linux_gcc-4.8_libstdcxx_cmake.sh diff --git a/absl/container/BUILD.bazel b/absl/container/BUILD.bazel index ec890190..19c538bc 100644 --- a/absl/container/BUILD.bazel +++ b/absl/container/BUILD.bazel @@ -887,6 +887,7 @@ cc_test( ":btree_test_common", ":counting_allocator", ":test_instance_tracker", + "//absl/base:core_headers", "//absl/base:raw_logging_internal", "//absl/flags:flag", "//absl/hash:hash_testing", diff --git a/absl/container/CMakeLists.txt b/absl/container/CMakeLists.txt index 638c2759..a6912220 100644 --- a/absl/container/CMakeLists.txt +++ b/absl/container/CMakeLists.txt @@ -75,6 +75,7 @@ absl_cc_test( absl::btree absl::btree_test_common absl::compare + absl::core_headers absl::counting_allocator absl::flags absl::hash_testing diff --git a/absl/container/btree_test.cc b/absl/container/btree_test.cc index 3ac97f89..d213ee61 100644 --- a/absl/container/btree_test.cc +++ b/absl/container/btree_test.cc @@ -25,6 +25,7 @@ #include "gmock/gmock.h" #include "gtest/gtest.h" #include "absl/base/internal/raw_logging.h" +#include "absl/base/macros.h" #include "absl/container/btree_map.h" #include "absl/container/btree_set.h" #include "absl/container/internal/counting_allocator.h" @@ -1537,12 +1538,11 @@ TEST(Btree, MapAt) { const absl::btree_map &const_map = map; EXPECT_EQ(const_map.at(1), 2); EXPECT_EQ(const_map.at(2), 8); - try { - map.at(3); - FAIL() << "Exception not thrown"; - } catch (const std::out_of_range& e) { - EXPECT_STREQ(e.what(), "absl::btree_map::at"); - } +#ifdef ABSL_HAVE_EXCEPTIONS + EXPECT_THROW(map.at(3), std::out_of_range); +#else + EXPECT_DEATH(map.at(3), "absl::btree_map::at"); +#endif } TEST(Btree, BtreeMultisetEmplace) { diff --git a/ci/linux_gcc-4.8_libstdcxx_cmake.sh b/ci/linux_gcc-4.8_libstdcxx_cmake.sh deleted file mode 100755 index 4f964e2b..00000000 --- a/ci/linux_gcc-4.8_libstdcxx_cmake.sh +++ /dev/null @@ -1,61 +0,0 @@ -#!/bin/bash -# -# Copyright 2019 The Abseil Authors. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# https://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# TODO(absl-team): This script isn't fully hermetic because -# -DABSL_USE_GOOGLETEST_HEAD=ON means that this script isn't pinned to a fixed -# version of GoogleTest. This means that an upstream change to GoogleTest could -# break this test. Fix this by allowing this script to pin to a known-good -# version of GoogleTest. - -set -euox pipefail - -if [ -z ${ABSEIL_ROOT:-} ]; then - ABSEIL_ROOT="$(realpath $(dirname ${0})/..)" -fi - -if [ -z ${ABSL_CMAKE_CXX_STANDARDS:-} ]; then - ABSL_CMAKE_CXX_STANDARDS="11 14" -fi - -if [ -z ${ABSL_CMAKE_BUILD_TYPES:-} ]; then - ABSL_CMAKE_BUILD_TYPES="Debug Release" -fi - -for std in ${ABSL_CMAKE_CXX_STANDARDS}; do - for compilation_mode in ${ABSL_CMAKE_BUILD_TYPES}; do - echo "--------------------------------------------------------------------" - echo "Testing with CMAKE_BUILD_TYPE=${compilation_mode} and -std=c++${std}" - - time docker run \ - --volume="${ABSEIL_ROOT}:/abseil-cpp:ro" \ - --workdir=/abseil-cpp \ - --tmpfs=/buildfs:exec \ - --cap-add=SYS_PTRACE \ - --rm \ - -e CFLAGS="-Werror" \ - -e CXXFLAGS="-Werror" \ - gcr.io/google.com/absl-177019/linux_gcc-4.8:20190316 \ - /bin/bash -c " - cd /buildfs && \ - cmake /abseil-cpp \ - -DABSL_USE_GOOGLETEST_HEAD=ON \ - -DABSL_RUN_TESTS=ON \ - -DCMAKE_BUILD_TYPE=${compilation_mode} \ - -DCMAKE_CXX_STANDARD=${std} && \ - make -j$(nproc) VERBOSE=1 && \ - ctest -j$(nproc) --output-on-failure" - done -done -- cgit v1.2.3