commit | b6880f79b56f38c05be91191f9630e9aa66ecc2d | [log] [tgz] |
---|---|---|
author | rch <rch@google.com> | Wed Mar 06 12:06:07 2019 -0800 |
committer | Copybara-Service <copybara-worker@google.com> | Wed Mar 06 12:06:29 2019 -0800 |
tree | 0644278615c93bb4446c30310017f4a41e3603c1 | |
parent | c5db41e3e5d07c019e556964e5bbeb891e5b70fd [diff] |
hpack_whole_entry_buffer_test: Include http2_test_helpers.h This fixes the GCC build, which was failing with ../../third_party/googletest/src/googlemock/include/gmock/gmock-matchers.h: In instantiation of ?bool testing::internal::HasSubstrMatcher<StringType>::MatchAndExplain(const MatcheeStringType&, testing::MatchResultListener*) const [with MatcheeStringType = base::BasicStringPiece<std::__cxx11::basic_string<char> >; StringType = std::__cxx11::basic_string<char>]?: ../../third_party/googletest/src/googletest/include/gtest/gtest-matchers.h:548:47: required from ?bool testing::PolymorphicMatcher<Impl>::MonomorphicImpl<T>::MatchAndExplain(T, testing::MatchResultListener*) const [with T = const base::BasicStringPiece<std::__cxx11::basic_string<char> >&; Impl = testing::internal::HasSubstrMatcher<std::__cxx11::basic_string<char> >]? ../../third_party/googletest/src/googletest/include/gtest/gtest-matchers.h:547:18: required from here ../../third_party/googletest/src/googlemock/include/gmock/gmock-matchers.h:756:23: error: invalid initialization of reference of type ?const std::__cxx11::basic_string<char>&? from expression of type ?const base::BasicStringPiece<std::__cxx11::basic_string<char> >? const StringType& s2(s); ^~ This is caused by the fact that base::StringPiece::operator std::string() is explicit and thus StringPieces cannot be converted directly to an std::string (GCC and MSVC fail to build a reduced version of this code, while ICC and clang allow it; in this case it looks like GCC is in the right here). Fix it by including http2_test_helpers.h, which contains a HasSubstr() specialization precisely for this reason -- hpack_whole_entry_buffer_test.cc had this HasSubstr() specialization before https://chromium-review.googlesource.com/c/1351102 ("Platformize http2_bug_tracker.h, failure.h, std::deque and ABSL_DIE_IF_NULL") moved it to a separate header that was not included by this file. Cloned from https://quiche-review.googlesource.com/c/quiche/+/1500 gfe-relnote: n/a - Test only PiperOrigin-RevId: 237093700 Change-Id: Ife4efda0272011811506e0d2fd01be8221c66f9e
QUICHE (QUIC, Http/2, Etc) is Google‘s implementation of QUIC and related protocols. It powers Chromium as well as Google’s QUIC servers and some other projects.
The code is currently in process of being moved from https://cs.chromium.org/chromium/src/net/third_party/ into this repository. Please excuse our appearance while we're under construction.