Skip to content

Can not compile with Android NDK r27.2 #3516

@owent

Description

@owent

Describe your environment

OS: Linux
Target: Android
Toolchain: cmake with NDK r27.2

Steps to reproduce

'/usr/local/bin/cmake' '../../../../../third_party/packages/opentelemetry-cpp-v1.21.0' '-Wno-dev' '-G' 'Unix Makefiles' '-DCMAKE_MAKE_PROGRAM=/usr/local/lib/android/sdk/ndk/27.2.12479018/prebuilt/linux-x86_64/bin/make' '-DCMAKE_TOOLCHAIN_FILE=/usr/local/lib/android/sdk/ndk/27.2.12479018/build/cmake/android.toolchain.cmake'  '-DCMAKE_EXPORT_NO_PACKAGE_REGISTRY=ON' '-DCMAKE_EXPORT_PACKAGE_REGISTRY=OFF' '-DANDROID_TOOLCHAIN=clang' '-DANDROID_ABI=arm64-v8a' '-DANDROID_PIE=YES' '-DANDROID_PLATFORM=android-24' '-DANDROID_TOOLCHAIN=clang' '-DANDROID_USE_LEGACY_TOOLCHAIN_FILE=OFF' '-DANDROID_SANITIZE=' '-DCMAKE_ANDROID_NDK_TOOLCHAIN_VERSION=clang' '-DCMAKE_ANDROID_ARCH_ABI=arm64-v8a' '-DCMAKE_ANDROID_API=24' '-DCMAKE_C_FLAGS=-DANDROID -fdata-sections -ffunction-sections -funwind-tables -fstack-protector-strong -no-canonical-prefixes -D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security -fexceptions -pthread' '-DCMAKE_C_STANDARD_LIBRARIES=-llog -lc -ldl -lm' '-DCMAKE_CXX_FLAGS=-DANDROID -fdata-sections -ffunction-sections -funwind-tables -fstack-protector-strong -no-canonical-prefixes -D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security -fexceptions -frtti -stdlib=libc++ -pthread' '-DCMAKE_CXX_IMPLICIT_LINK_DIRECTORIES=/home/runner/work/cmake-toolset/cmake-toolset/test/third_party/install/android-arm64-v8a-clang-18/lib' '-DANDROID_STL=c++_shared' '-DCMAKE_ANDROID_STL_TYPE=c++_shared' '-DCMAKE_CXX_STANDARD_LIBRARIES=-llog -lc -ldl -lm' '-DCMAKE_BUILD_TYPE=RelWithDebInfo' '-DCMAKE_C_STANDARD=23' '-DCMAKE_C_STANDARD=23' '-DCMAKE_CXX_STANDARD=23' '-DCMAKE_POLICY_DEFAULT_CMP0075=NEW' '-DCMAKE_POSITION_INDEPENDENT_CODE=ON' '-DCMAKE_FIND_ROOT_PATH_MODE_INCLUDE=ONLY' '-DCMAKE_FIND_ROOT_PATH_MODE_LIBRARY=ONLY' '-DCMAKE_FIND_ROOT_PATH_MODE_PACKAGE=ONLY' '-DCMAKE_FIND_ROOT_PATH_MODE_PROGRAM=NEVER' '-DCMAKE_SYSTEM_LIBRARY_PATH=/usr/lib/X11' '-DCMAKE_SYSTEM_VERSION=24' '-DCMAKE_SYSTEM_PREFIX_PATH=/usr/lib/aarch64-linux-android/24;/usr/local;/usr;/;/usr/local;/usr/local;/usr/X11R6;/usr/pkg;/opt' '-DCMAKE_SYSTEM_PROGRAM_PATH=/usr/local/lib/android/sdk/ndk/27.2.12479018/toolchains/llvm/prebuilt/linux-x86_64/bin' '-DCMAKE_POSITION_INDEPENDENT_CODE=ON' '-DCMAKE_FIND_PACKAGE_PREFER_CONFIG=ON' '-Dprotobuf_MODULE_COMPATIBLE=ON' '-DBUILD_TESTING=OFF' '-DWITH_EXAMPLES=OFF' '-DWITH_EXAMPLES_HTTP=OFF' '-DWITH_FUNC_TESTS=OFF' '-DOPENTELEMETRY_INSTALL=ON' '-DWITH_ASYNC_EXPORT_PREVIEW=ON' '-DZLIB_ROOT=/usr/local/lib/android/sdk/ndk/27.2.12479018/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr' '-DWITH_STL=CXX20' '-DWITH_GSL=ON' '-DWITH_ABSEIL=ON' '-DWITH_METRICS_EXEMPLAR_PREVIEW=ON' '-DProtobuf_PROTOC_EXECUTABLE=/home/runner/work/cmake-toolset/cmake-toolset/test/third_party/install/linux-x86_64-clang-18/bin/protoc' '-DPROTOBUF_PROTOC_EXECUTABLE=/home/runner/work/cmake-toolset/cmake-toolset/test/third_party/install/linux-x86_64-clang-18/bin/protoc' '-DWITH_OTLP_GRPC=ON' '-DgRPC_CPP_PLUGIN_EXECUTABLE=/home/runner/work/cmake-toolset/cmake-toolset/test/third_party/install/linux-x86_64-clang-18/bin/grpc_cpp_plugin' '-D_gRPC_PROTOBUF_PROTOC_EXECUTABLE=/home/runner/work/cmake-toolset/cmake-toolset/test/third_party/install/linux-x86_64-clang-18/bin/protoc' '-DWITH_OTLP_GRPC_SSL_MTLS_PREVIEW=ON' '-DWITH_OTLP_HTTP=ON' '-DWITH_OTLP_HTTP_COMPRESSION=ON' '-DWITH_OTLP_FILE=ON' '-DWITH_ETW=OFF' '-DWITH_ELASTICSEARCH=ON' '-DWITH_ZIPKIN=ON' '-DWITH_ZPAGES=OFF' '-DWITH_PROMETHEUS=ON' '-DWITH_OTLP_HTTP_COMPRESSION=ON' '-DCMAKE_CXX_STANDARD_INCLUDE_DIRECTORIES=/home/runner/work/cmake-toolset/cmake-toolset/test/third_party/install/android-arm64-v8a-clang-18/include' '-DBUILD_SHARED_LIBS=OFF'

What is the expected behavior?
Build success

What is the actual behavior?

[ 18%] Building CXX object CMakeFiles/opentelemetry_proto_grpc.dir/generated/third_party/opentelemetry-proto/opentelemetry/proto/collector/metrics/v1/metrics_service.grpc.pb.cc.o
In file included from /home/runner/work/cmake-toolset/cmake-toolset/test/third_party/packages/opentelemetry-cpp-v1.21.0/exporters/otlp/src/otlp_file_client.cc:5:
In file included from /usr/local/lib/android/sdk/ndk/27.2.12479018/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/algorithm:1822:
In file included from /usr/local/lib/android/sdk/ndk/27.2.12479018/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/__algorithm/inplace_merge.h:28:
In file included from /usr/local/lib/android/sdk/ndk/27.2.12479018/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/__memory/unique_ptr.h:19:
In file included from /usr/local/lib/android/sdk/ndk/27.2.12479018/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/__memory/allocator_traits.h:18:
/usr/local/lib/android/sdk/ndk/27.2.12479018/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/__type_traits/is_empty.h:22:71: error: incomplete type '__sFILE' used in type trait expression
   22 | struct _LIBCPP_TEMPLATE_VIS is_empty : public integral_constant<bool, __is_empty(_Tp)> {};
      |                                                                       ^
/usr/local/lib/android/sdk/ndk/27.2.12479018/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/__memory/compressed_pair.h:43:55: note: in instantiation of template class 'std::is_empty<__sFILE>' requested here
   43 | template <class _Tp, int _Idx, bool _CanBeEmptyBase = is_empty<_Tp>::value && !__libcpp_is_final<_Tp>::value>
      |                                                       ^
/usr/local/lib/android/sdk/ndk/27.2.12479018/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/__memory/compressed_pair.h:97:75: note: in instantiation of default argument for '__compressed_pair_elem<__sFILE, 1>' required here
   97 | class __compressed_pair : private __compressed_pair_elem<_T1, 0>, private __compressed_pair_elem<_T2, 1> {
      |                                                                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/lib/android/sdk/ndk/27.2.12479018/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/__memory/shared_ptr.h:303:10: note: in instantiation of template class 'std::__compressed_pair<std::allocator<__sFILE>, __sFILE>' requested here
  303 |   struct _ALIGNAS_TYPE(_CompressedPair) _Storage {
      |          ^
/usr/local/lib/android/sdk/ndk/27.2.12479018/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/__config:558:30: note: expanded from macro '_ALIGNAS_TYPE'
  558 | #    define _ALIGNAS_TYPE(x) alignas(x)
      |                              ^
/usr/local/lib/android/sdk/ndk/27.2.12479018/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/__memory/shared_ptr.h:322:17: note: in instantiation of member class 'std::__shared_ptr_emplace<__sFILE, std::allocator<__sFILE>>::_Storage' requested here
  322 |   static_assert(_LIBCPP_ALIGNOF(_Storage) == _LIBCPP_ALIGNOF(_CompressedPair), "");
      |                 ^
/usr/local/lib/android/sdk/ndk/27.2.12479018/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/__config:557:34: note: expanded from macro '_LIBCPP_ALIGNOF'
  557 | #    define _LIBCPP_ALIGNOF(_Tp) alignof(_Tp)
      |                                  ^
/usr/local/lib/android/sdk/ndk/27.2.12479018/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/__memory/shared_ptr.h:818:51: note: in instantiation of template class 'std::__shared_ptr_emplace<__sFILE, std::allocator<__sFILE>>' requested here
  818 |   ::new ((void*)std::addressof(*__guard.__get())) _ControlBlock(__a, std::forward<_Args>(__args)...);
      |                                                   ^
/usr/local/lib/android/sdk/ndk/27.2.12479018/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/__memory/shared_ptr.h:826:15: note: in instantiation of function template specialization 'std::allocate_shared<__sFILE, std::allocator<__sFILE>, void>' requested here
  826 |   return std::allocate_shared<_Tp>(allocator<_Tp>(), std::forward<_Args>(__args)...);
      |               ^
/home/runner/work/cmake-toolset/cmake-toolset/test/third_party/packages/opentelemetry-cpp-v1.21.0/exporters/otlp/src/otlp_file_client.cc:1237:37: note: in instantiation of function template specialization 'std::make_shared<__sFILE, void>' requested here
 1237 |     std::shared_ptr<FILE> of = std::make_shared<FILE>();
      |                                     ^
/usr/local/lib/android/sdk/ndk/27.2.12479018/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/stdio.h:58:8: note: forward declaration of '__sFILE'
   58 | struct __sFILE;
      |        ^
In file included from /home/runner/work/cmake-toolset/cmake-toolset/test/third_party/packages/opentelemetry-cpp-v1.21.0/exporters/otlp/src/otlp_file_client.cc:5:
In file included from /usr/local/lib/android/sdk/ndk/27.2.12479018/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/algorithm:1822:
In file included from /usr/local/lib/android/sdk/ndk/27.2.12479018/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/__algorithm/inplace_merge.h:28:
In file included from /usr/local/lib/android/sdk/ndk/27.2.12479018/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/__memory/unique_ptr.h:19:
/usr/local/lib/android/sdk/ndk/27.2.12479018/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/__memory/allocator_traits.h:305:5: error: no matching function for call to '__construct_at'
  305 |     std::__construct_at(__p, std::forward<_Args>(__args)...);
      |     ^~~~~~~~~~~~~~~~~~~
/usr/local/lib/android/sdk/ndk/27.2.12479018/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/__memory/shared_ptr.h:262:33: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<__sFILE>>::construct<__sFILE, void, void>' requested here
  262 |     allocator_traits<_TpAlloc>::construct(__tmp, __get_elem(), std::forward<_Args>(__args)...);
      |                                 ^
/usr/local/lib/android/sdk/ndk/27.2.12479018/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/__memory/shared_ptr.h:818:51: note: in instantiation of function template specialization 'std::__shared_ptr_emplace<__sFILE, std::allocator<__sFILE>>::__shared_ptr_emplace<std::allocator<__sFILE>, 0>' requested here
  818 |   ::new ((void*)std::addressof(*__guard.__get())) _ControlBlock(__a, std::forward<_Args>(__args)...);
      |                                                   ^
/usr/local/lib/android/sdk/ndk/27.2.12479018/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/__memory/shared_ptr.h:826:15: note: in instantiation of function template specialization 'std::allocate_shared<__sFILE, std::allocator<__sFILE>, void>' requested here
  826 |   return std::allocate_shared<_Tp>(allocator<_Tp>(), std::forward<_Args>(__args)...);
      |               ^
/home/runner/work/cmake-toolset/cmake-toolset/test/third_party/packages/opentelemetry-cpp-v1.21.0/exporters/otlp/src/otlp_file_client.cc:1237:37: note: in instantiation of function template specialization 'std::make_shared<__sFILE, void>' requested here
 1237 |     std::shared_ptr<FILE> of = std::make_shared<FILE>();
      |                                     ^
/usr/local/lib/android/sdk/ndk/27.2.12479018/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/__memory/construct_at.h:47:46: note: candidate template ignored: substitution failure [with _Tp = __sFILE, _Args = <>]: allocation of incomplete type '__sFILE'
   46 | template <class _Tp, class... _Args, class = decltype(::new(std::declval<void*>()) _Tp(std::declval<_Args>()...))>
      |                                                                                    ~~~
   47 | _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR _Tp* __construct_at(_Tp* __location, _Args&&... __args) {
      |                                              ^
In file included from /home/runner/work/cmake-toolset/cmake-toolset/test/third_party/packages/opentelemetry-cpp-v1.21.0/exporters/otlp/src/otlp_file_client.cc:5:
In file included from /usr/local/lib/android/sdk/ndk/27.2.12479018/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/algorithm:1822:
In file included from /usr/local/lib/android/sdk/ndk/27.2.12479018/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/__algorithm/inplace_merge.h:28:
In file included from /usr/local/lib/android/sdk/ndk/27.2.12479018/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/__memory/unique_ptr.h:21:
/usr/local/lib/android/sdk/ndk/27.2.12479018/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/__memory/compressed_pair.h:146:12: error: static_cast from '__compressed_pair<allocator<__sFILE>, __sFILE> *' to '_Base1 *' (aka '__compressed_pair_elem<std::allocator<__sFILE>, 0> *'), which are not related by inheritance, is not allowed
  146 |     return static_cast<_Base1*>(__pair);
      |            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/lib/android/sdk/ndk/27.2.12479018/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/__memory/shared_ptr.h:310:68: note: in instantiation of member function 'std::__compressed_pair<std::allocator<__sFILE>, __sFILE>::__get_first_base' requested here
  310 |       typename _CompressedPair::_Base1* __first = _CompressedPair::__get_first_base(__as_pair);
      |                                                                    ^
/usr/local/lib/android/sdk/ndk/27.2.12479018/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/__memory/shared_ptr.h:306:75: note: in instantiation of member function 'std::__shared_ptr_emplace<__sFILE, std::allocator<__sFILE>>::_Storage::__get_alloc' requested here
  306 |     _LIBCPP_HIDE_FROM_ABI explicit _Storage(_Alloc&& __a) { ::new ((void*)__get_alloc()) _Alloc(std::move(__a)); }
      |                                                                           ^
/usr/local/lib/android/sdk/ndk/27.2.12479018/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/__memory/shared_ptr.h:259:88: note: in instantiation of member function 'std::__shared_ptr_emplace<__sFILE, std::allocator<__sFILE>>::_Storage::_Storage' requested here
  259 |   _LIBCPP_HIDE_FROM_ABI explicit __shared_ptr_emplace(_Alloc __a, _Args&&... __args) : __storage_(std::move(__a)) {
      |                                                                                        ^
/usr/local/lib/android/sdk/ndk/27.2.12479018/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/__memory/shared_ptr.h:818:51: note: in instantiation of function template specialization 'std::__shared_ptr_emplace<__sFILE, std::allocator<__sFILE>>::__shared_ptr_emplace<std::allocator<__sFILE>, 0>' requested here
  818 |   ::new ((void*)std::addressof(*__guard.__get())) _ControlBlock(__a, std::forward<_Args>(__args)...);
      |                                                   ^
/usr/local/lib/android/sdk/ndk/27.2.12479018/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/__memory/shared_ptr.h:826:15: note: in instantiation of function template specialization 'std::allocate_shared<__sFILE, std::allocator<__sFILE>, void>' requested here
  826 |   return std::allocate_shared<_Tp>(allocator<_Tp>(), std::forward<_Args>(__args)...);
      |               ^
/home/runner/work/cmake-toolset/cmake-toolset/test/third_party/packages/opentelemetry-cpp-v1.21.0/exporters/otlp/src/otlp_file_client.cc:1237:37: note: in instantiation of function template specialization 'std::make_shared<__sFILE, void>' requested here
 1237 |     std::shared_ptr<FILE> of = std::make_shared<FILE>();
      |                                     ^
In file included from /home/runner/work/cmake-toolset/cmake-toolset/test/third_party/packages/opentelemetry-cpp-v1.21.0/exporters/otlp/src/otlp_file_client.cc:5:
In file included from /usr/local/lib/android/sdk/ndk/27.2.12479018/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/algorithm:1794:
In file included from /usr/local/lib/android/sdk/ndk/27.2.12479018/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/__algorithm/copy.h:12:
In file included from /usr/local/lib/android/sdk/ndk/27.2.12479018/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/__algorithm/copy_move_common.h:18:
In file included from /usr/local/lib/android/sdk/ndk/27.2.12479018/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/__string/constexpr_c_functions.h:14:
/usr/local/lib/android/sdk/ndk/27.2.12479018/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/__memory/construct_at.h:67:8: error: member access into incomplete type '__sFILE'
   67 |   __loc->~_Tp();
      |        ^
/usr/local/lib/android/sdk/ndk/27.2.12479018/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/__memory/allocator_traits.h:316:10: note: in instantiation of function template specialization 'std::__destroy_at<__sFILE, 0>' requested here
  316 |     std::__destroy_at(__p);
      |          ^
/usr/local/lib/android/sdk/ndk/27.2.12479018/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/__memory/shared_ptr.h:281:33: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<__sFILE>>::destroy<__sFILE, void, void>' requested here
  281 |     allocator_traits<_TpAlloc>::destroy(__tmp, __get_elem());
      |                                 ^
/usr/local/lib/android/sdk/ndk/27.2.12479018/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/__memory/shared_ptr.h:284:78: note: in instantiation of function template specialization 'std::__shared_ptr_emplace<__sFILE, std::allocator<__sFILE>>::__on_zero_shared_impl<std::allocator<__sFILE>, 0>' requested here
  284 |   _LIBCPP_HIDE_FROM_ABI_VIRTUAL void __on_zero_shared() _NOEXCEPT override { __on_zero_shared_impl(); }
      |                                                                              ^
/usr/local/lib/android/sdk/ndk/27.2.12479018/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/__memory/shared_ptr.h:259:34: note: in instantiation of member function 'std::__shared_ptr_emplace<__sFILE, std::allocator<__sFILE>>::__on_zero_shared' requested here
  259 |   _LIBCPP_HIDE_FROM_ABI explicit __shared_ptr_emplace(_Alloc __a, _Args&&... __args) : __storage_(std::move(__a)) {
      |                                  ^
/usr/local/lib/android/sdk/ndk/27.2.12479018/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/__memory/shared_ptr.h:818:51: note: in instantiation of function template specialization 'std::__shared_ptr_emplace<__sFILE, std::allocator<__sFILE>>::__shared_ptr_emplace<std::allocator<__sFILE>, 0>' requested here
  818 |   ::new ((void*)std::addressof(*__guard.__get())) _ControlBlock(__a, std::forward<_Args>(__args)...);
      |                                                   ^
/usr/local/lib/android/sdk/ndk/27.2.12479018/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/__memory/shared_ptr.h:826:15: note: in instantiation of function template specialization 'std::allocate_shared<__sFILE, std::allocator<__sFILE>, void>' requested here
  826 |   return std::allocate_shared<_Tp>(allocator<_Tp>(), std::forward<_Args>(__args)...);
      |               ^
/home/runner/work/cmake-toolset/cmake-toolset/test/third_party/packages/opentelemetry-cpp-v1.21.0/exporters/otlp/src/otlp_file_client.cc:1237:37: note: in instantiation of function template specialization 'std::make_shared<__sFILE, void>' requested here
 1237 |     std::shared_ptr<FILE> of = std::make_shared<FILE>();
      |                                     ^
/usr/local/lib/android/sdk/ndk/27.2.12479018/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/stdio.h:58:8: note: forward declaration of '__sFILE'
   58 | struct __sFILE;
      |        ^
In file included from /home/runner/work/cmake-toolset/cmake-toolset/test/third_party/packages/opentelemetry-cpp-v1.21.0/exporters/otlp/src/otlp_file_client.cc:5:
In file included from /usr/local/lib/android/sdk/ndk/27.2.12479018/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/algorithm:1822:
In file included from /usr/local/lib/android/sdk/ndk/27.2.12479018/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/__algorithm/inplace_merge.h:28:
In file included from /usr/local/lib/android/sdk/ndk/27.2.12479018/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/__memory/unique_ptr.h:21:
/usr/local/lib/android/sdk/ndk/27.2.12479018/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/__memory/compressed_pair.h:149:12: error: static_cast from '__compressed_pair<allocator<__sFILE>, __sFILE> *' to '_Base2 *' (aka 'int *') is not allowed
  149 |     return static_cast<_Base2*>(__pair);
      |            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/lib/android/sdk/ndk/27.2.12479018/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/__memory/shared_ptr.h:316:69: note: in instantiation of member function 'std::__compressed_pair<std::allocator<__sFILE>, __sFILE>::__get_second_base' requested here
  316 |       typename _CompressedPair::_Base2* __second = _CompressedPair::__get_second_base(__as_pair);
      |                                                                     ^
/usr/local/lib/android/sdk/ndk/27.2.12479018/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/__memory/shared_ptr.h:267:73: note: in instantiation of member function 'std::__shared_ptr_emplace<__sFILE, std::allocator<__sFILE>>::_Storage::__get_elem' requested here
  267 |   _LIBCPP_HIDE_FROM_ABI _Tp* __get_elem() _NOEXCEPT { return __storage_.__get_elem(); }
      |                                                                         ^
/usr/local/lib/android/sdk/ndk/27.2.12479018/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/__memory/shared_ptr.h:821:26: note: in instantiation of member function 'std::__shared_ptr_emplace<__sFILE, std::allocator<__sFILE>>::__get_elem' requested here
  821 |       (*__control_block).__get_elem(), std::addressof(*__control_block));
      |                          ^
/usr/local/lib/android/sdk/ndk/27.2.12479018/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include/c++/v1/__memory/shared_ptr.h:826:15: note: in instantiation of function template specialization 'std::allocate_shared<__sFILE, std::allocator<__sFILE>, void>' requested here
  826 |   return std::allocate_shared<_Tp>(allocator<_Tp>(), std::forward<_Args>(__args)...);
      |               ^
/home/runner/work/cmake-toolset/cmake-toolset/test/third_party/packages/opentelemetry-cpp-v1.21.0/exporters/otlp/src/otlp_file_client.cc:1237:37: note: in instantiation of function template specialization 'std::make_shared<__sFILE, void>' requested here
 1237 |     std::shared_ptr<FILE> of = std::make_shared<FILE>();
      |                                     ^
5 errors generated.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions