diff --git a/.github/workflows/clang-tidy.yml b/.github/workflows/clang-tidy.yml index 124b30723..5a8340de3 100644 --- a/.github/workflows/clang-tidy.yml +++ b/.github/workflows/clang-tidy.yml @@ -18,7 +18,7 @@ on: schedule: - cron: '0 16 * * *' env: - CACHE_EPOCH: 127-4 + CACHE_EPOCH: 128-1 GOPROXY: direct jobs: win-clang-tidy: diff --git a/.github/workflows/compiler.yml b/.github/workflows/compiler.yml index 9acfdbd6e..843427787 100644 --- a/.github/workflows/compiler.yml +++ b/.github/workflows/compiler.yml @@ -33,7 +33,7 @@ concurrency: group: ${{ github.workflow }} / ${{ startsWith(github.event_name, 'pull') && github.ref_name || github.sha }} cancel-in-progress: ${{ startsWith(github.event_name, 'pull') }} env: - CACHE_EPOCH: 127-4 + CACHE_EPOCH: 128-1 GOPROXY: direct jobs: win-compiler-compatible-2022: diff --git a/.github/workflows/releases-android-binary.yml b/.github/workflows/releases-android-binary.yml index 54eb61b4b..5b7a04e62 100644 --- a/.github/workflows/releases-android-binary.yml +++ b/.github/workflows/releases-android-binary.yml @@ -35,7 +35,7 @@ concurrency: group: ${{ github.workflow }} / ${{ startsWith(github.event_name, 'pull') && github.ref_name || github.sha }} cancel-in-progress: ${{ startsWith(github.event_name, 'pull') }} env: - CACHE_EPOCH: 127-4 + CACHE_EPOCH: 128-1 GOPROXY: direct jobs: android-binary-release: diff --git a/.github/workflows/releases-deb.yml b/.github/workflows/releases-deb.yml index fef421c49..cdb2228e3 100644 --- a/.github/workflows/releases-deb.yml +++ b/.github/workflows/releases-deb.yml @@ -35,7 +35,7 @@ concurrency: group: ${{ github.workflow }} / ${{ startsWith(github.event_name, 'pull') && github.ref_name || github.sha }} cancel-in-progress: ${{ startsWith(github.event_name, 'pull') }} env: - CACHE_EPOCH: 127-4 + CACHE_EPOCH: 128-1 GOPROXY: direct DH_QUIET: 1 jobs: diff --git a/.github/workflows/releases-freebsd-binary.yml b/.github/workflows/releases-freebsd-binary.yml index c832792e8..db61fece3 100644 --- a/.github/workflows/releases-freebsd-binary.yml +++ b/.github/workflows/releases-freebsd-binary.yml @@ -35,7 +35,7 @@ concurrency: group: ${{ github.workflow }} / ${{ startsWith(github.event_name, 'pull') && github.ref_name || github.sha }} cancel-in-progress: ${{ startsWith(github.event_name, 'pull') }} env: - CACHE_EPOCH: 127-4 + CACHE_EPOCH: 128-1 GOPROXY: direct jobs: freebsd-binary-release: diff --git a/.github/workflows/releases-ios.yml b/.github/workflows/releases-ios.yml index 7498f9657..bb99af6cd 100644 --- a/.github/workflows/releases-ios.yml +++ b/.github/workflows/releases-ios.yml @@ -21,7 +21,7 @@ concurrency: group: ${{ github.workflow }} / ${{ startsWith(github.event_name, 'pull') && github.ref_name || github.sha }} cancel-in-progress: ${{ startsWith(github.event_name, 'pull') }} env: - CACHE_EPOCH: 127-4 + CACHE_EPOCH: 128-1 GOPROXY: direct jobs: ios-simulator-release: diff --git a/.github/workflows/releases-linux-binary.yml b/.github/workflows/releases-linux-binary.yml index 8e4bab9d5..dfec9752b 100644 --- a/.github/workflows/releases-linux-binary.yml +++ b/.github/workflows/releases-linux-binary.yml @@ -35,7 +35,7 @@ concurrency: group: ${{ github.workflow }} / ${{ startsWith(github.event_name, 'pull') && github.ref_name || github.sha }} cancel-in-progress: ${{ startsWith(github.event_name, 'pull') }} env: - CACHE_EPOCH: 127-4 + CACHE_EPOCH: 128-1 GOPROXY: direct jobs: linux-binary-release: diff --git a/.github/workflows/releases-macos.yml b/.github/workflows/releases-macos.yml index 9740b2c13..393796633 100644 --- a/.github/workflows/releases-macos.yml +++ b/.github/workflows/releases-macos.yml @@ -35,7 +35,7 @@ concurrency: group: ${{ github.workflow }} / ${{ startsWith(github.event_name, 'pull') && github.ref_name || github.sha }} cancel-in-progress: ${{ startsWith(github.event_name, 'pull') }} env: - CACHE_EPOCH: 127-4 + CACHE_EPOCH: 128-1 GOPROXY: direct jobs: mac-release: diff --git a/.github/workflows/releases-mingw-new.yml b/.github/workflows/releases-mingw-new.yml index f69ab9cce..30214ed4a 100644 --- a/.github/workflows/releases-mingw-new.yml +++ b/.github/workflows/releases-mingw-new.yml @@ -35,7 +35,7 @@ concurrency: group: ${{ github.workflow }} / ${{ startsWith(github.event_name, 'pull') && github.ref_name || github.sha }} cancel-in-progress: ${{ startsWith(github.event_name, 'pull') }} env: - CACHE_EPOCH: 127-4 + CACHE_EPOCH: 128-1 GOPROXY: direct jobs: mingw64-release: diff --git a/.github/workflows/releases-mingw.yml b/.github/workflows/releases-mingw.yml index c06b19ef7..415a89764 100644 --- a/.github/workflows/releases-mingw.yml +++ b/.github/workflows/releases-mingw.yml @@ -18,7 +18,7 @@ on: schedule: - cron: '0 16 * * *' env: - CACHE_EPOCH: 127-4 + CACHE_EPOCH: 128-1 GOPROXY: direct jobs: mingw64-release: diff --git a/.github/workflows/releases-openwrt-binary.yml b/.github/workflows/releases-openwrt-binary.yml index b1dbb0290..d471f726a 100644 --- a/.github/workflows/releases-openwrt-binary.yml +++ b/.github/workflows/releases-openwrt-binary.yml @@ -35,7 +35,7 @@ concurrency: group: ${{ github.workflow }} / ${{ startsWith(github.event_name, 'pull') && github.ref_name || github.sha }} cancel-in-progress: ${{ startsWith(github.event_name, 'pull') }} env: - CACHE_EPOCH: 127-4 + CACHE_EPOCH: 128-1 GOPROXY: direct jobs: openwrt-binary-release: diff --git a/.github/workflows/releases-rpm.yml b/.github/workflows/releases-rpm.yml index 43faf17d2..e2e1222ad 100644 --- a/.github/workflows/releases-rpm.yml +++ b/.github/workflows/releases-rpm.yml @@ -35,7 +35,7 @@ concurrency: group: ${{ github.workflow }} / ${{ startsWith(github.event_name, 'pull') && github.ref_name || github.sha }} cancel-in-progress: ${{ startsWith(github.event_name, 'pull') }} env: - CACHE_EPOCH: 127-4 + CACHE_EPOCH: 128-1 GOPROXY: direct jobs: docker_publish: diff --git a/.github/workflows/releases-src.yml b/.github/workflows/releases-src.yml index d738d3728..8fbaf5772 100644 --- a/.github/workflows/releases-src.yml +++ b/.github/workflows/releases-src.yml @@ -44,11 +44,6 @@ jobs: # unshallow must come first otherwise submodule may be get unshallowed git fetch --tags --unshallow git submodule update --init --depth 1 - - name: Patch libcxx for gcc 14 support - run: | - cd third_party/libc++/trunk - patch -p1 < ../gcc14.patch - git clean -xfd - name: Patch libcxxabi for both of armel and armhf run: | cd third_party/libc++abi diff --git a/.github/workflows/releases-windows.yml b/.github/workflows/releases-windows.yml index edd62d45f..d8f8250a4 100644 --- a/.github/workflows/releases-windows.yml +++ b/.github/workflows/releases-windows.yml @@ -24,7 +24,7 @@ defaults: run: shell: cmd env: - CACHE_EPOCH: 127-4 + CACHE_EPOCH: 128-1 GOPROXY: direct jobs: windows-release: diff --git a/.github/workflows/sanitizers.yml b/.github/workflows/sanitizers.yml index e0f4993f2..9f376f091 100644 --- a/.github/workflows/sanitizers.yml +++ b/.github/workflows/sanitizers.yml @@ -18,7 +18,7 @@ on: schedule: - cron: '0 16 * * *' env: - CACHE_EPOCH: 127-4 + CACHE_EPOCH: 128-1 GOPROXY: direct jobs: sanitizer-linux: diff --git a/CLANG_REVISION b/CLANG_REVISION index 16d8aae09..5a3f08ccf 100644 --- a/CLANG_REVISION +++ b/CLANG_REVISION @@ -1 +1 @@ -llvmorg-19-init-10646-g084e2b53-57 \ No newline at end of file +llvmorg-19-init-14561-gecea8371-2 \ No newline at end of file diff --git a/CMakeLists.txt b/CMakeLists.txt index 5f6e84a13..1c56b38df 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -837,6 +837,9 @@ if(ASAN) add_link_options(-fsanitize=address -fsanitize-address-use-after-scope -fno-omit-frame-pointer) endif() add_definitions(-DADDRESS_SANITIZER) + if (NOT APPLE AND USE_LIBCXX) + add_definitions(-D_LIBCPP_INSTRUMENTED_WITH_ASAN) + endif() list(APPEND YASS_APP_FEATURES "asan") endif() diff --git a/scripts/download-clang-prebuilt-binaries.py b/scripts/download-clang-prebuilt-binaries.py index 8f1290b82..c8b81e707 100755 --- a/scripts/download-clang-prebuilt-binaries.py +++ b/scripts/download-clang-prebuilt-binaries.py @@ -9,10 +9,10 @@ # mkdir -p third_party/llvm-build/Release+Asserts # CLANG_REVISION=$(< CLANG_REVISION) -# curl https://commondatastorage.googleapis.com/chromium-browser-clang/$CLANG_ARCH/clang-$CLANG_REVISION.tgz | tar xzf - -C third_party/llvm-build/Release+Asserts -# curl https://commondatastorage.googleapis.com/chromium-browser-clang/$CLANG_ARCH/clang-tidy-$CLANG_REVISION.tgz | tar xzf - -C third_party/llvm-build/Release+Asserts -# curl https://commondatastorage.googleapis.com/chromium-browser-clang/$CLANG_ARCH/libclang-$CLANG_REVISION.tgz | tar xzf - -C third_party/llvm-build/Release+Asserts -# curl https://commondatastorage.googleapis.com/chromium-browser-clang/$CLANG_ARCH/clangd-$CLANG_REVISION.tgz | tar xzf - -C third_party/llvm-build/Release+Asserts +# curl https://commondatastorage.googleapis.com/chromium-browser-clang/$CLANG_ARCH/clang-$CLANG_REVISION.tar.xz | tar xzf - -C third_party/llvm-build/Release+Asserts +# curl https://commondatastorage.googleapis.com/chromium-browser-clang/$CLANG_ARCH/clang-tidy-$CLANG_REVISION.tar.xz | tar xzf - -C third_party/llvm-build/Release+Asserts +# curl https://commondatastorage.googleapis.com/chromium-browser-clang/$CLANG_ARCH/libclang-$CLANG_REVISION.tar.xz | tar xzf - -C third_party/llvm-build/Release+Asserts +# curl https://commondatastorage.googleapis.com/chromium-browser-clang/$CLANG_ARCH/clangd-$CLANG_REVISION.tar.xz | tar xzf - -C third_party/llvm-build/Release+Asserts try: # For Python 3.0 and later @@ -98,12 +98,12 @@ def main(): mkdir_p('third_party/llvm-build/Release+Asserts') os.chdir('third_party/llvm-build/Release+Asserts') - download_url(f'https://commondatastorage.googleapis.com/chromium-browser-clang/{clang_arch}/clang-{clang_revision}.tgz', - f'clang-{clang_revision}-{clang_arch}.tgz') - download_url(f'https://commondatastorage.googleapis.com/chromium-browser-clang/{clang_arch}/clang-tidy-{clang_revision}.tgz', - f'clang-tidy-{clang_revision}-{clang_arch}.tgz') - extract_tarfile(f'clang-{clang_revision}-{clang_arch}.tgz') - extract_tarfile(f'clang-tidy-{clang_revision}-{clang_arch}.tgz') + download_url(f'https://commondatastorage.googleapis.com/chromium-browser-clang/{clang_arch}/clang-{clang_revision}.tar.xz', + f'clang-{clang_revision}-{clang_arch}.tar.xz') + download_url(f'https://commondatastorage.googleapis.com/chromium-browser-clang/{clang_arch}/clang-tidy-{clang_revision}.tar.xz', + f'clang-tidy-{clang_revision}-{clang_arch}.tar.xz') + extract_tarfile(f'clang-{clang_revision}-{clang_arch}.tar.xz') + extract_tarfile(f'clang-tidy-{clang_revision}-{clang_arch}.tar.xz') # create a shim to lld-link os.chdir('bin') diff --git a/src/cli/cli_connection.cpp b/src/cli/cli_connection.cpp index a8050e61f..bae618928 100644 --- a/src/cli/cli_connection.cpp +++ b/src/cli/cli_connection.cpp @@ -19,7 +19,7 @@ #include #ifdef HAVE_QUICHE -#include +#include #endif static_assert(TLSEXT_MAXLEN_host_name == uint8_t(~0)); diff --git a/third_party/abseil-cpp b/third_party/abseil-cpp index e7f3e3628..48b8d1be2 160000 --- a/third_party/abseil-cpp +++ b/third_party/abseil-cpp @@ -1 +1 @@ -Subproject commit e7f3e3628998c5f7b7c7d2a935eba50f9683c1dd +Subproject commit 48b8d1be2d0f02617038259858e5b11bd0fe6cf2 diff --git a/third_party/boringssl/src b/third_party/boringssl/src index 18c9dbe7a..eb7d5870f 160000 --- a/third_party/boringssl/src +++ b/third_party/boringssl/src @@ -1 +1 @@ -Subproject commit 18c9dbe7a7206a8fce6eb68a0d0a0e40a02ed75f +Subproject commit eb7d5870f56f1840c2d8766ba9f641322ed1ba0b diff --git a/third_party/googletest b/third_party/googletest index a7f443b80..7321f950d 160000 --- a/third_party/googletest +++ b/third_party/googletest @@ -1 +1 @@ -Subproject commit a7f443b80b105f940225332ed3c31f2790092f47 +Subproject commit 7321f950dfe0d481b56b1c475e38b681ff34263f diff --git a/third_party/libc++/CMakeLists.txt b/third_party/libc++/CMakeLists.txt index 33fca9d98..08f2894af 100644 --- a/third_party/libc++/CMakeLists.txt +++ b/third_party/libc++/CMakeLists.txt @@ -59,7 +59,7 @@ foreach(CompilerFlag ${CompilerFlags}) string(REPLACE "-stdlib=libc++" "" ${CompilerFlag} "${${CompilerFlag}}") endforeach() -set(libcxx_CR "852bc6746f45add53fec19f3a29280e69e358d44") +set(libcxx_CR "81d177a0a844f75749af92dd2c78a675ef179f54") # Fixed libc++ configuration macros are in # buildtools/third_party/libc++/__config_site. This config only has defines # that vary depending on gn args, and non-define flags. diff --git a/third_party/libc++/__config_site b/third_party/libc++/__config_site index 1ae42c3a0..179307575 100644 --- a/third_party/libc++/__config_site +++ b/third_party/libc++/__config_site @@ -1,6 +1,11 @@ #ifndef _LIBCPP_CONFIG_SITE #define _LIBCPP_CONFIG_SITE +// Dynamic libc++ configuration macros are in +// build/config/libc++:runtime_library. This file only has defines +// that are constant across platforms, or easily set via preprocessor checks. +// Things that are set depending on GN args are not here. + // We set a custom _LIBCPP_ABI_NAMESPACE for the following reasons: // // 1. When libcxx_is_shared is true, symbols from libc++.so are exported for all @@ -12,6 +17,7 @@ // limit for PDBs (https://crbug.com/1327710#c5). To fix this, we set // _LIBCPP_ABI_NAMESPACE to a shorter value. #define _LIBCPP_ABI_NAMESPACE __Cr + #define _LIBCPP_ABI_VERSION 2 /* #undef _LIBCPP_ABI_FORCE_ITANIUM */ @@ -39,14 +45,12 @@ // TODO(thakis): Is this right? /* #undef _LIBCPP_HAS_NO_TIME_ZONE_DATABASE */ -#define _LIBCPP_INSTRUMENTED_WITH_ASAN - // PSTL backends -/* #undef _LIBCPP_PSTL_CPU_BACKEND_SERIAL */ +/* #undef _LIBCPP_PSTL_BACKEND_SERIAL */ #if defined(__APPLE__) -#define _LIBCPP_PSTL_CPU_BACKEND_LIBDISPATCH +#define _LIBCPP_PSTL_BACKEND_LIBDISPATCH #else -#define _LIBCPP_PSTL_CPU_BACKEND_THREAD +#define _LIBCPP_PSTL_BACKEND_STD_THREAD #endif // Settings below aren't part of __config_site upstream. @@ -71,7 +75,7 @@ // termination function on Apple platforms. #define _LIBCPP_VERBOSE_ABORT(...) ::std::__libcpp_verbose_abort(__VA_ARGS__) -// TODO(crbug.com/1455923) Link against compiler-rt's builtins library to +// TODO(crbug.com/40272953) Link against compiler-rt's builtins library to // enable 128-arithmetic. #if defined(_WIN32) #define _LIBCPP_HAS_NO_INT128 diff --git a/third_party/libc++/gcc14.patch b/third_party/libc++/gcc14.patch deleted file mode 100644 index c9e2f0a5c..000000000 --- a/third_party/libc++/gcc14.patch +++ /dev/null @@ -1,167 +0,0 @@ -From 93dc957bd07760c5d810785707bf6bea2b18676e Mon Sep 17 00:00:00 2001 -From: Nikolas Klauser -Date: Sat, 1 Jun 2024 12:20:41 +0200 -Subject: [PATCH] [libc++] Fix failures with GCC 14 (#92663) - -Fixes #91831 - -NOKEYCHECK=True -GitOrigin-RevId: cb7a03b41fff563c0cbb5145eed09f9b17edf9e2 ---- - include/__string/constexpr_c_functions.h | 2 +- - include/__type_traits/remove_pointer.h | 5 +++++ - include/bitset | 3 +++ - .../time.zone/time.zone.leap/nonmembers/comparison.pass.cpp | 4 ++-- - .../expected/expected.expected/monadic/transform.pass.cpp | 2 +- - .../expected.expected/monadic/transform_error.pass.cpp | 2 +- - .../expected/expected.void/monadic/transform_error.pass.cpp | 2 +- - .../format.formatter.spec/formatter.char_array.pass.cpp | 2 +- - .../utilities/tuple/tuple.tuple/tuple.cnstr/PR31384.pass.cpp | 3 +++ - .../variant/variant.visit.member/visit_return_type.pass.cpp | 3 +++ - 10 files changed, 21 insertions(+), 7 deletions(-) - -diff --git a/include/__string/constexpr_c_functions.h b/include/__string/constexpr_c_functions.h -index 4da8542e3..a978f816f 100644 ---- a/include/__string/constexpr_c_functions.h -+++ b/include/__string/constexpr_c_functions.h -@@ -123,7 +123,7 @@ __constexpr_memcmp_equal(const _Tp* __lhs, const _Up* __rhs, __element_count __n - } - return true; - } else { -- return __builtin_memcmp(__lhs, __rhs, __count * sizeof(_Tp)) == 0; -+ return ::__builtin_memcmp(__lhs, __rhs, __count * sizeof(_Tp)) == 0; - } - } - -diff --git a/include/__type_traits/remove_pointer.h b/include/__type_traits/remove_pointer.h -index 54390a193..1048f6705 100644 ---- a/include/__type_traits/remove_pointer.h -+++ b/include/__type_traits/remove_pointer.h -@@ -23,8 +23,13 @@ struct remove_pointer { - using type _LIBCPP_NODEBUG = __remove_pointer(_Tp); - }; - -+# ifdef _LIBCPP_COMPILER_GCC -+template -+using __remove_pointer_t = typename remove_pointer<_Tp>::type; -+# else - template - using __remove_pointer_t = __remove_pointer(_Tp); -+# endif - #else - // clang-format off - template struct _LIBCPP_TEMPLATE_VIS remove_pointer {typedef _LIBCPP_NODEBUG _Tp type;}; -diff --git a/include/bitset b/include/bitset -index 8818ab656..6bd7bfe58 100644 ---- a/include/bitset -+++ b/include/bitset -@@ -375,8 +375,11 @@ template - _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX23 unsigned long long - __bitset<_N_words, _Size>::to_ullong(true_type, true_type) const { - unsigned long long __r = __first_[0]; -+ _LIBCPP_DIAGNOSTIC_PUSH -+ _LIBCPP_GCC_DIAGNOSTIC_IGNORED("-Wshift-count-overflow") - for (size_t __i = 1; __i < sizeof(unsigned long long) / sizeof(__storage_type); ++__i) - __r |= static_cast(__first_[__i]) << (sizeof(__storage_type) * CHAR_BIT); -+ _LIBCPP_DIAGNOSTIC_POP - return __r; - } - -diff --git a/test/std/time/time.zone/time.zone.leap/nonmembers/comparison.pass.cpp b/test/std/time/time.zone/time.zone.leap/nonmembers/comparison.pass.cpp -index 448cd88d1..ccff0248e 100644 ---- a/test/std/time/time.zone/time.zone.leap/nonmembers/comparison.pass.cpp -+++ b/test/std/time/time.zone/time.zone.leap/nonmembers/comparison.pass.cpp -@@ -9,8 +9,8 @@ - // UNSUPPORTED: c++03, c++11, c++14, c++17 - // UNSUPPORTED: no-filesystem, no-localization, no-tzdb - --// TODO TZDB test whether this can be enabled with gcc 14. --// UNSUPPORTED: gcc-13 -+// TODO TZDB investigate why this fails with GCC -+// UNSUPPORTED: gcc-13, gcc-14 - - // XFAIL: libcpp-has-no-experimental-tzdb - // XFAIL: availability-tzdb-missing -diff --git a/test/std/utilities/expected/expected.expected/monadic/transform.pass.cpp b/test/std/utilities/expected/expected.expected/monadic/transform.pass.cpp -index d38a46f04..aa7106fb9 100644 ---- a/test/std/utilities/expected/expected.expected/monadic/transform.pass.cpp -+++ b/test/std/utilities/expected/expected.expected/monadic/transform.pass.cpp -@@ -10,7 +10,7 @@ - - // GCC has a issue for `Guaranteed copy elision for potentially-overlapping non-static data members`, - // please refer to: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=108333 --// XFAIL: gcc-13 -+// XFAIL: gcc-13, gcc-14 - - // - -diff --git a/test/std/utilities/expected/expected.expected/monadic/transform_error.pass.cpp b/test/std/utilities/expected/expected.expected/monadic/transform_error.pass.cpp -index ec55f637f..ae9feccb5 100644 ---- a/test/std/utilities/expected/expected.expected/monadic/transform_error.pass.cpp -+++ b/test/std/utilities/expected/expected.expected/monadic/transform_error.pass.cpp -@@ -10,7 +10,7 @@ - - // GCC has a issue for `Guaranteed copy elision for potentially-overlapping non-static data members`, - // please refer to: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=108333. --// XFAIL: gcc-13 -+// XFAIL: gcc-13, gcc-14 - - // - -diff --git a/test/std/utilities/expected/expected.void/monadic/transform_error.pass.cpp b/test/std/utilities/expected/expected.void/monadic/transform_error.pass.cpp -index cd6e5a503..f70bddbed 100644 ---- a/test/std/utilities/expected/expected.void/monadic/transform_error.pass.cpp -+++ b/test/std/utilities/expected/expected.void/monadic/transform_error.pass.cpp -@@ -10,7 +10,7 @@ - - // GCC has a issue for `Guaranteed copy elision for potentially-overlapping non-static data members`, - // please refer to: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=108333 --// XFAIL: gcc-13 -+// XFAIL: gcc-13, gcc-14 - - // - -diff --git a/test/std/utilities/format/format.formatter/format.formatter.spec/formatter.char_array.pass.cpp b/test/std/utilities/format/format.formatter/format.formatter.spec/formatter.char_array.pass.cpp -index b0ee399a1..cad13c1ef 100644 ---- a/test/std/utilities/format/format.formatter/format.formatter.spec/formatter.char_array.pass.cpp -+++ b/test/std/utilities/format/format.formatter/format.formatter.spec/formatter.char_array.pass.cpp -@@ -7,7 +7,7 @@ - - // UNSUPPORTED: c++03, c++11, c++14, c++17 - // TODO FMT __builtin_memcpy isn't constexpr in GCC --// UNSUPPORTED: gcc-13 -+// UNSUPPORTED: gcc-13, gcc-14 - - // - -diff --git a/test/std/utilities/tuple/tuple.tuple/tuple.cnstr/PR31384.pass.cpp b/test/std/utilities/tuple/tuple.tuple/tuple.cnstr/PR31384.pass.cpp -index c9e7bb6a5..0b40ac9ff 100644 ---- a/test/std/utilities/tuple/tuple.tuple/tuple.cnstr/PR31384.pass.cpp -+++ b/test/std/utilities/tuple/tuple.tuple/tuple.cnstr/PR31384.pass.cpp -@@ -8,6 +8,9 @@ - - // UNSUPPORTED: c++03 - -+// FIXME: Why does this start to fail with GCC 14? -+// XFAIL: gcc-14 -+ - // See https://llvm.org/PR31384. - - #include -diff --git a/test/std/utilities/variant/variant.visit.member/visit_return_type.pass.cpp b/test/std/utilities/variant/variant.visit.member/visit_return_type.pass.cpp -index 2c1cbb06e..7429cdf80 100644 ---- a/test/std/utilities/variant/variant.visit.member/visit_return_type.pass.cpp -+++ b/test/std/utilities/variant/variant.visit.member/visit_return_type.pass.cpp -@@ -34,6 +34,9 @@ struct overloaded : Ts... { - using Ts::operator()...; - }; - -+template -+overloaded(Ts...) -> overloaded; -+ - void test_overload_ambiguity() { - using V = std::variant; - using namespace std::string_literals; --- -2.45.2 - diff --git a/third_party/libc++/trunk b/third_party/libc++/trunk index 852bc6746..81d177a0a 160000 --- a/third_party/libc++/trunk +++ b/third_party/libc++/trunk @@ -1 +1 @@ -Subproject commit 852bc6746f45add53fec19f3a29280e69e358d44 +Subproject commit 81d177a0a844f75749af92dd2c78a675ef179f54 diff --git a/third_party/libc++abi/trunk b/third_party/libc++abi/trunk index 43dd5b4bf..a3c7d3e2f 160000 --- a/third_party/libc++abi/trunk +++ b/third_party/libc++abi/trunk @@ -1 +1 @@ -Subproject commit 43dd5b4bf62e8593461dce9a95e3d43fdcd0b9f2 +Subproject commit a3c7d3e2f3e1e724b4651891b1a71257cbd88acc diff --git a/third_party/libunwind/trunk b/third_party/libunwind/trunk index c8f1d8199..d09db732f 160000 --- a/third_party/libunwind/trunk +++ b/third_party/libunwind/trunk @@ -1 +1 @@ -Subproject commit c8f1d81998280ae2ea0e76ddb60aae6e1b4b860e +Subproject commit d09db732ff68f40fd3581306c650b17ea1955b4e diff --git a/third_party/quiche/CMakeLists.txt b/third_party/quiche/CMakeLists.txt index 26dc61008..a2a9ee156 100644 --- a/third_party/quiche/CMakeLists.txt +++ b/third_party/quiche/CMakeLists.txt @@ -69,6 +69,7 @@ set(quiche_SRCS src/quiche/common/quiche_data_writer.h src/quiche/common/quiche_endian.h src/quiche/common/quiche_feature_flags_list.h + src/quiche/common/quiche_intrusive_list.h src/quiche/common/quiche_ip_address.cc src/quiche/common/quiche_ip_address.h src/quiche/common/quiche_ip_address_family.cc @@ -112,8 +113,31 @@ set(quiche_SRCS src/quiche/http2/adapter/oghttp2_util.h src/quiche/http2/adapter/window_manager.cc src/quiche/http2/adapter/window_manager.h + src/quiche/http2/core/array_output_buffer.cc + src/quiche/http2/core/array_output_buffer.h + src/quiche/http2/core/header_byte_listener_interface.h + src/quiche/http2/core/http2_frame_decoder_adapter.cc + src/quiche/http2/core/http2_frame_decoder_adapter.h + src/quiche/http2/core/http2_header_block_hpack_listener.h src/quiche/http2/core/http2_trace_logging.cc src/quiche/http2/core/http2_trace_logging.h + src/quiche/http2/core/no_op_headers_handler.h + src/quiche/http2/core/priority_write_scheduler.h + src/quiche/http2/core/recording_headers_handler.cc + src/quiche/http2/core/recording_headers_handler.h + src/quiche/http2/core/spdy_alt_svc_wire_format.cc + src/quiche/http2/core/spdy_alt_svc_wire_format.h + src/quiche/http2/core/spdy_bitmasks.h + src/quiche/http2/core/spdy_frame_builder.cc + src/quiche/http2/core/spdy_frame_builder.h + src/quiche/http2/core/spdy_framer.cc + src/quiche/http2/core/spdy_framer.h + src/quiche/http2/core/spdy_headers_handler_interface.h + src/quiche/http2/core/spdy_no_op_visitor.cc + src/quiche/http2/core/spdy_no_op_visitor.h + src/quiche/http2/core/spdy_protocol.cc + src/quiche/http2/core/spdy_protocol.h + src/quiche/http2/core/zero_copy_output_buffer.h src/quiche/http2/decoder/decode_buffer.cc src/quiche/http2/decoder/decode_buffer.h src/quiche/http2/decoder/decode_http2_structures.cc @@ -182,6 +206,18 @@ set(quiche_SRCS src/quiche/http2/hpack/decoder/hpack_whole_entry_buffer.h src/quiche/http2/hpack/decoder/hpack_whole_entry_listener.cc src/quiche/http2/hpack/decoder/hpack_whole_entry_listener.h + src/quiche/http2/hpack/hpack_constants.cc + src/quiche/http2/hpack/hpack_constants.h + src/quiche/http2/hpack/hpack_encoder.cc + src/quiche/http2/hpack/hpack_encoder.h + src/quiche/http2/hpack/hpack_entry.cc + src/quiche/http2/hpack/hpack_entry.h + src/quiche/http2/hpack/hpack_header_table.cc + src/quiche/http2/hpack/hpack_header_table.h + src/quiche/http2/hpack/hpack_output_stream.cc + src/quiche/http2/hpack/hpack_output_stream.h + src/quiche/http2/hpack/hpack_static_table.cc + src/quiche/http2/hpack/hpack_static_table.h src/quiche/http2/hpack/hpack_static_table_entries.inc src/quiche/http2/hpack/http2_hpack_constants.cc src/quiche/http2/hpack/http2_hpack_constants.h @@ -209,39 +245,17 @@ set(quiche_SRCS src/quiche/oblivious_http/oblivious_http_client.h src/quiche/oblivious_http/oblivious_http_gateway.cc src/quiche/oblivious_http/oblivious_http_gateway.h - src/quiche/spdy/core/array_output_buffer.cc - src/quiche/spdy/core/array_output_buffer.h - src/quiche/spdy/core/hpack/hpack_constants.cc - src/quiche/spdy/core/hpack/hpack_constants.h src/quiche/spdy/core/hpack/hpack_decoder_adapter.cc src/quiche/spdy/core/hpack/hpack_decoder_adapter.h - src/quiche/spdy/core/hpack/hpack_encoder.cc src/quiche/spdy/core/hpack/hpack_encoder.h - src/quiche/spdy/core/hpack/hpack_entry.cc - src/quiche/spdy/core/hpack/hpack_entry.h - src/quiche/spdy/core/hpack/hpack_header_table.cc - src/quiche/spdy/core/hpack/hpack_header_table.h - src/quiche/spdy/core/hpack/hpack_output_stream.cc - src/quiche/spdy/core/hpack/hpack_output_stream.h - src/quiche/spdy/core/hpack/hpack_static_table.cc - src/quiche/spdy/core/hpack/hpack_static_table.h - src/quiche/spdy/core/http2_frame_decoder_adapter.cc src/quiche/spdy/core/http2_frame_decoder_adapter.h - src/quiche/spdy/core/recording_headers_handler.cc - src/quiche/spdy/core/recording_headers_handler.h - src/quiche/spdy/core/spdy_alt_svc_wire_format.cc + src/quiche/spdy/core/http2_header_block.h src/quiche/spdy/core/spdy_alt_svc_wire_format.h src/quiche/spdy/core/spdy_bitmasks.h - src/quiche/spdy/core/spdy_frame_builder.cc src/quiche/spdy/core/spdy_frame_builder.h - src/quiche/spdy/core/spdy_framer.cc src/quiche/spdy/core/spdy_framer.h src/quiche/spdy/core/spdy_headers_handler_interface.h - src/quiche/spdy/core/spdy_no_op_visitor.cc - src/quiche/spdy/core/spdy_no_op_visitor.h - src/quiche/spdy/core/spdy_protocol.cc src/quiche/spdy/core/spdy_protocol.h - src/quiche/spdy/core/zero_copy_output_buffer.h src/quiche/web_transport/complete_buffer_visitor.cc src/quiche/web_transport/complete_buffer_visitor.h src/quiche/web_transport/encapsulated/encapsulated_web_transport.cc @@ -585,7 +599,6 @@ set(quiche_quic_SOURCES src/quiche/quic/core/quic_datagram_queue.h src/quiche/quic/core/quic_error_codes.cc src/quiche/quic/core/quic_error_codes.h - src/quiche/quic/core/quic_flags_list.h src/quiche/quic/core/quic_flow_controller.cc src/quiche/quic/core/quic_flow_controller.h src/quiche/quic/core/quic_framer.cc diff --git a/third_party/quiche/src b/third_party/quiche/src index 12f91fb3c..f5548d863 160000 --- a/third_party/quiche/src +++ b/third_party/quiche/src @@ -1 +1 @@ -Subproject commit 12f91fb3c7ec2125ebc51f7999e5a159ba3b44de +Subproject commit f5548d86307c1bc11d9bab7257326898bffd61de diff --git a/third_party/re2 b/third_party/re2 index e29afa184..6dcd83d60 160000 --- a/third_party/re2 +++ b/third_party/re2 @@ -1 +1 @@ -Subproject commit e29afa1844861971a4cbf5fe559069b42161e97a +Subproject commit 6dcd83d60f7944926bfd308cc13979fc53dd69ca