# Fix a GCC‐incompatible use of a private trait.
#
# Per Folly’s own documentation:
#
# /// Under gcc, the builtin is available but does not mangle. Therefore, this
# /// trait must not be used anywhere it might be subject to mangling, such as in
# /// a return-type expression.
# In file included from /build/source/folly/lang/test/BitsTest.cpp:17:
# In member function 'constexpr bool folly::get_bit_at_fn::operator()(const Uint*, std::size_t) const [with Uint = short unsigned int]',
# inlined from 'void folly::BitsAllUintsTest_GetBitAtLE_Test<gtest_TypeParam_>::TestBody() [with gtest_TypeParam_ = short unsigned int]' at /build/source/folly/lang/test/BitsTest.cpp:640:5:
# /build/source/folly/lang/Bits.h:494:10: warning: 'in' is used uninitialized [-Wuninitialized]
# Facebook Thrift requires C++20 now but Watchman hasn’t been
# updated yet… (Aren’t these things meant to be integrated together
# in a monorepo?)
substituteInPlace CMakeLists.txt \
--replace-fail 'set(CMAKE_CXX_STANDARD 17)' 'set(CMAKE_CXX_STANDARD 20)'
|