Created
September 23, 2023 07:32
-
-
Save therealkenc/7073c4a2e9cac380e079708c4ed1721c to your computer and use it in GitHub Desktop.
jni-bind build with typedef long jint
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
In file included from src/main/c/com_coralblocks_javatocppandback_jni_bind_HelloWorld.cpp:1: | |
src/main/c/jni_bind_release.h:7749:15: warning: implicit capture of 'this' with a capture default of '=' is deprecated [-Wdeprecated-this-capture] | |
7749 | (*this)("loadClass", IdClassT::kNameUsingDots); | |
| ^ | |
src/main/c/jni_bind_release.h:7745:56: note: add an explicit capture of 'this' to capture '*this' by reference | |
7745 | 0>>::PrimeJClassFromClassLoader([=]() { | |
| ^ | |
| , this | |
src/main/c/jni_bind_release.h:507:19: error: static assertion failed due to requirement 'AllUnique_v<void, unsigned char, bool, signed char, short, long, float, long, long long, char, unsigned short, double, std::string, _jstring *, char *, const char *, std::string_view, jni::RefBaseTag<_jstring *>, _jobject *, jni::RefBaseTag<_jobject *>, jni::LoaderTag, jni::Object, jni::Self, _jarray *, jni::RefBaseTag<_jarray *>, jni::ArrayTag<_jarray *>, _jobjectArray *, jni::RefBaseTag<_jobjectArray *>, jni::ArrayTag<_jobjectArray *>, _jintArray *, jni::RefBaseTag<_jintArray *>, jni::ArrayTag<_jintArray *>, _jbooleanArray *, jni::RefBaseTag<_jbooleanArray *>, jni::ArrayTag<_jbooleanArray *>, _jbyteArray *, jni::RefBaseTag<_jbyteArray *>, jni::ArrayTag<_jbyteArray *>, _jcharArray *, jni::RefBaseTag<_jcharArray *>, jni::ArrayTag<_jcharArray *>, _jshortArray *, jni::RefBaseTag<_jshortArray *>, jni::ArrayTag<_jshortArray *>, _jdoubleArray *, jni::RefBaseTag<_jdoubleArray *>, jni::ArrayTag<_jdoubleArray *>, _jfloatArray *, jni::RefBaseTag<_jfloatArray *>, jni::ArrayTag<_jfloatArray *>, _jlongArray *, jni::RefBaseTag<_jlongArray *>, jni::ArrayTag<_jlongArray *>>': FindIdxOfVal only operates on unique sets. | |
507 | static_assert(AllUnique_v<Ts...>, | |
| ^~~~~~~~~~~~~~~~~~ | |
src/main/c/jni_bind_release.h:513:40: note: in instantiation of template class 'jni::metaprogramming::FindIdxOfVal<jni::IsConvertibleKey<void>>::StaticAssertWrapper<void, unsigned char, bool, signed char, short, long, float, long, long long, char, unsigned short, double, std::string, _jstring *, char *, const char *, std::string_view, jni::RefBaseTag<_jstring *>, _jobject *, jni::RefBaseTag<_jobject *>, jni::LoaderTag, jni::Object, jni::Self, _jarray *, jni::RefBaseTag<_jarray *>, jni::ArrayTag<_jarray *>, _jobjectArray *, jni::RefBaseTag<_jobjectArray *>, jni::ArrayTag<_jobjectArray *>, _jintArray *, jni::RefBaseTag<_jintArray *>, jni::ArrayTag<_jintArray *>, _jbooleanArray *, jni::RefBaseTag<_jbooleanArray *>, jni::ArrayTag<_jbooleanArray *>, _jbyteArray *, jni::RefBaseTag<_jbyteArray *>, jni::ArrayTag<_jbyteArray *>, _jcharArray *, jni::RefBaseTag<_jcharArray *>, jni::ArrayTag<_jcharArray *>, _jshortArray *, jni::RefBaseTag<_jshortArray *>, jni::ArrayTag<_jshortArray *>, _jdoubleArray *, jni::RefBaseTag<_jdoubleArray *>, jni::ArrayTag<_jdoubleArray *>, _jfloatArray *, jni::RefBaseTag<_jfloatArray *>, jni::ArrayTag<_jfloatArray *>, _jlongArray *, jni::RefBaseTag<_jlongArray *>, jni::ArrayTag<_jlongArray *>>' requested here | |
513 | static constexpr std::size_t value = StaticAssertWrapper<Ts...>::value; | |
| ^ | |
src/main/c/jni_bind_release.h:518:40: note: in instantiation of static data member 'jni::metaprogramming::FindIdxOfVal<jni::IsConvertibleKey<void>>::value<void, unsigned char, bool, signed char, short, long, float, long, long long, char, unsigned short, double, std::string, _jstring *, char *, const char *, std::string_view, jni::RefBaseTag<_jstring *>, _jobject *, jni::RefBaseTag<_jobject *>, jni::LoaderTag, jni::Object, jni::Self, _jarray *, jni::RefBaseTag<_jarray *>, jni::ArrayTag<_jarray *>, _jobjectArray *, jni::RefBaseTag<_jobjectArray *>, jni::ArrayTag<_jobjectArray *>, _jintArray *, jni::RefBaseTag<_jintArray *>, jni::ArrayTag<_jintArray *>, _jbooleanArray *, jni::RefBaseTag<_jbooleanArray *>, jni::ArrayTag<_jbooleanArray *>, _jbyteArray *, jni::RefBaseTag<_jbyteArray *>, jni::ArrayTag<_jbyteArray *>, _jcharArray *, jni::RefBaseTag<_jcharArray *>, jni::ArrayTag<_jcharArray *>, _jshortArray *, jni::RefBaseTag<_jshortArray *>, jni::ArrayTag<_jshortArray *>, _jdoubleArray *, jni::RefBaseTag<_jdoubleArray *>, jni::ArrayTag<_jdoubleArray *>, _jfloatArray *, jni::RefBaseTag<_jfloatArray *>, jni::ArrayTag<_jfloatArray *>, _jlongArray *, jni::RefBaseTag<_jlongArray *>, jni::ArrayTag<_jlongArray *>>' requested here | |
518 | FindIdxOfVal<Comparator>::template value<Ts...>; | |
| ^ | |
src/main/c/jni_bind_release.h:760:26: note: in instantiation of variable template specialization 'jni::metaprogramming::FindIdxOfValWithComparator_idx<jni::IsConvertibleKey<void>, void, unsigned char, bool, signed char, short, long, float, long, long long, char, unsigned short, double, std::string, _jstring *, char *, const char *, std::string_view, jni::RefBaseTag<_jstring *>, _jobject *, jni::RefBaseTag<_jobject *>, jni::LoaderTag, jni::Object, jni::Self, _jarray *, jni::RefBaseTag<_jarray *>, jni::ArrayTag<_jarray *>, _jobjectArray *, jni::RefBaseTag<_jobjectArray *>, jni::ArrayTag<_jobjectArray *>, _jintArray *, jni::RefBaseTag<_jintArray *>, jni::ArrayTag<_jintArray *>, _jbooleanArray *, jni::RefBaseTag<_jbooleanArray *>, jni::ArrayTag<_jbooleanArray *>, _jbyteArray *, jni::RefBaseTag<_jbyteArray *>, jni::ArrayTag<_jbyteArray *>, _jcharArray *, jni::RefBaseTag<_jcharArray *>, jni::ArrayTag<_jcharArray *>, _jshortArray *, jni::RefBaseTag<_jshortArray *>, jni::ArrayTag<_jshortArray *>, _jdoubleArray *, jni::RefBaseTag<_jdoubleArray *>, jni::ArrayTag<_jdoubleArray *>, _jfloatArray *, jni::RefBaseTag<_jfloatArray *>, jni::ArrayTag<_jfloatArray *>, _jlongArray *, jni::RefBaseTag<_jlongArray *>, jni::ArrayTag<_jlongArray *>>' requested here | |
760 | TypeOfNthElement_t<FindIdxOfValWithComparator_idx<Comparator, Keys_...>, | |
| ^ | |
src/main/c/jni_bind_release.h:781:1: note: in instantiation of template type alias 'type' requested here | |
781 | using TypeToTypeMapQueryWithComparator_t = | |
| ^ | |
src/main/c/jni_bind_release.h:4005:24: note: in instantiation of template type alias 'TypeToTypeMapQueryWithComparator_t' requested here | |
4005 | metaprogramming::TypeToTypeMapQueryWithComparator_t<KeyToIndex, | |
| ^ | |
src/main/c/jni_bind_release.h:2706:1: note: in instantiation of template class 'jni::ProxyHelper<void>' requested here | |
2706 | using CDecl_t = typename ProxyHelper<T>::CDecl; | |
| ^ | |
src/main/c/jni_bind_release.h:4380:17: note: in instantiation of template type alias 'CDecl_t' requested here | |
4380 | using CDecl = CDecl_t<VoidIfVoid_t<MaterializeT>>; | |
| ^ | |
src/main/c/jni_bind_release.h:6224:25: note: in instantiation of template class 'jni::Id<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>, jni::IdType::OVERLOAD_SET, 0>' requested here | |
6224 | using JniT = typename IdT::JniT; | |
| ^ | |
src/main/c/jni_bind_release.h:6251:45: note: in instantiation of template class 'jni::MethodSelection<jni::Id<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>, jni::IdType::OVERLOAD_SET, 0>, jni::IdType::OVERLOAD, jni::IdType::OVERLOAD_PARAM>' requested here | |
6251 | using OverloadSelectionForArgs = typename MethodSelection< | |
| ^ | |
src/main/c/jni_bind_release.h:6621:19: note: in instantiation of template class 'jni::OverloadSelector<jni::Id<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>, jni::IdType::OVERLOAD_SET, 0>, jni::IdType::OVERLOAD, jni::IdType::OVERLOAD_PARAM, long &, _jstring *&>' requested here | |
6621 | static_assert(MethodSelectionForArgs::kIsValidArgSet, | |
| ^ | |
src/main/c/jni_bind_release.h:4647:19: note: in instantiation of function template specialization 'jni::ObjectRef<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>>::InvocableMapCall<0ULL, long &, _jstring *&>' requested here | |
4647 | .template InvocableMapCall<I, Args...>(key, | |
| ^ | |
src/main/c/com_coralblocks_javatocppandback_jni_bind_HelloWorld.cpp:44:15: note: in instantiation of function template specialization 'jni::metaprogramming::InvocableMapEntry<jni::ObjectRef<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>>, jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>::stripped_class_v, jni::Class<std::tuple<jni::Constructor<>>, std::tuple<jni::Static<std::tuple<>, std::tuple<>>>, std::tuple<jni::Method<std::tuple<jni::Return<void>>, std::tuple<jni::Params<long, _jstring *>>>>, std::tuple<>>, &jni::Class<std::tuple<jni::Constructor<>>, std::tuple<jni::Static<std::tuple<>, std::tuple<>>>, std::tuple<jni::Method<std::tuple<jni::Return<void>>, std::tuple<jni::Params<long, _jstring *>>>>, std::tuple<>>::methods_, 0>::operator()<long &, _jstring *&>' requested here | |
44 | helloWorld("sayHello", x, msg); | |
| ^ | |
In file included from src/main/c/com_coralblocks_javatocppandback_jni_bind_HelloWorld.cpp:1: | |
src/main/c/jni_bind_release.h:507:19: error: static assertion failed due to requirement 'AllUnique_v<void, unsigned char, bool, signed char, short, long, float, long, long long, char, unsigned short, double, std::string, _jstring *, char *, const char *, std::string_view, jni::RefBaseTag<_jstring *>, _jobject *, jni::RefBaseTag<_jobject *>, jni::LoaderTag, jni::Object, jni::Self, _jarray *, jni::RefBaseTag<_jarray *>, jni::ArrayTag<_jarray *>, _jobjectArray *, jni::RefBaseTag<_jobjectArray *>, jni::ArrayTag<_jobjectArray *>, _jintArray *, jni::RefBaseTag<_jintArray *>, jni::ArrayTag<_jintArray *>, _jbooleanArray *, jni::RefBaseTag<_jbooleanArray *>, jni::ArrayTag<_jbooleanArray *>, _jbyteArray *, jni::RefBaseTag<_jbyteArray *>, jni::ArrayTag<_jbyteArray *>, _jcharArray *, jni::RefBaseTag<_jcharArray *>, jni::ArrayTag<_jcharArray *>, _jshortArray *, jni::RefBaseTag<_jshortArray *>, jni::ArrayTag<_jshortArray *>, _jdoubleArray *, jni::RefBaseTag<_jdoubleArray *>, jni::ArrayTag<_jdoubleArray *>, _jfloatArray *, jni::RefBaseTag<_jfloatArray *>, jni::ArrayTag<_jfloatArray *>, _jlongArray *, jni::RefBaseTag<_jlongArray *>, jni::ArrayTag<_jlongArray *>>': FindIdxOfVal only operates on unique sets. | |
507 | static_assert(AllUnique_v<Ts...>, | |
| ^~~~~~~~~~~~~~~~~~ | |
src/main/c/jni_bind_release.h:513:40: note: in instantiation of template class 'jni::metaprogramming::FindIdxOfVal<jni::IsConvertibleKey<_jstring *>>::StaticAssertWrapper<void, unsigned char, bool, signed char, short, long, float, long, long long, char, unsigned short, double, std::string, _jstring *, char *, const char *, std::string_view, jni::RefBaseTag<_jstring *>, _jobject *, jni::RefBaseTag<_jobject *>, jni::LoaderTag, jni::Object, jni::Self, _jarray *, jni::RefBaseTag<_jarray *>, jni::ArrayTag<_jarray *>, _jobjectArray *, jni::RefBaseTag<_jobjectArray *>, jni::ArrayTag<_jobjectArray *>, _jintArray *, jni::RefBaseTag<_jintArray *>, jni::ArrayTag<_jintArray *>, _jbooleanArray *, jni::RefBaseTag<_jbooleanArray *>, jni::ArrayTag<_jbooleanArray *>, _jbyteArray *, jni::RefBaseTag<_jbyteArray *>, jni::ArrayTag<_jbyteArray *>, _jcharArray *, jni::RefBaseTag<_jcharArray *>, jni::ArrayTag<_jcharArray *>, _jshortArray *, jni::RefBaseTag<_jshortArray *>, jni::ArrayTag<_jshortArray *>, _jdoubleArray *, jni::RefBaseTag<_jdoubleArray *>, jni::ArrayTag<_jdoubleArray *>, _jfloatArray *, jni::RefBaseTag<_jfloatArray *>, jni::ArrayTag<_jfloatArray *>, _jlongArray *, jni::RefBaseTag<_jlongArray *>, jni::ArrayTag<_jlongArray *>>' requested here | |
513 | static constexpr std::size_t value = StaticAssertWrapper<Ts...>::value; | |
| ^ | |
src/main/c/jni_bind_release.h:518:40: note: in instantiation of static data member 'jni::metaprogramming::FindIdxOfVal<jni::IsConvertibleKey<_jstring *>>::value<void, unsigned char, bool, signed char, short, long, float, long, long long, char, unsigned short, double, std::string, _jstring *, char *, const char *, std::string_view, jni::RefBaseTag<_jstring *>, _jobject *, jni::RefBaseTag<_jobject *>, jni::LoaderTag, jni::Object, jni::Self, _jarray *, jni::RefBaseTag<_jarray *>, jni::ArrayTag<_jarray *>, _jobjectArray *, jni::RefBaseTag<_jobjectArray *>, jni::ArrayTag<_jobjectArray *>, _jintArray *, jni::RefBaseTag<_jintArray *>, jni::ArrayTag<_jintArray *>, _jbooleanArray *, jni::RefBaseTag<_jbooleanArray *>, jni::ArrayTag<_jbooleanArray *>, _jbyteArray *, jni::RefBaseTag<_jbyteArray *>, jni::ArrayTag<_jbyteArray *>, _jcharArray *, jni::RefBaseTag<_jcharArray *>, jni::ArrayTag<_jcharArray *>, _jshortArray *, jni::RefBaseTag<_jshortArray *>, jni::ArrayTag<_jshortArray *>, _jdoubleArray *, jni::RefBaseTag<_jdoubleArray *>, jni::ArrayTag<_jdoubleArray *>, _jfloatArray *, jni::RefBaseTag<_jfloatArray *>, jni::ArrayTag<_jfloatArray *>, _jlongArray *, jni::RefBaseTag<_jlongArray *>, jni::ArrayTag<_jlongArray *>>' requested here | |
518 | FindIdxOfVal<Comparator>::template value<Ts...>; | |
| ^ | |
src/main/c/jni_bind_release.h:760:26: note: in instantiation of variable template specialization 'jni::metaprogramming::FindIdxOfValWithComparator_idx<jni::IsConvertibleKey<_jstring *>, void, unsigned char, bool, signed char, short, long, float, long, long long, char, unsigned short, double, std::string, _jstring *, char *, const char *, std::string_view, jni::RefBaseTag<_jstring *>, _jobject *, jni::RefBaseTag<_jobject *>, jni::LoaderTag, jni::Object, jni::Self, _jarray *, jni::RefBaseTag<_jarray *>, jni::ArrayTag<_jarray *>, _jobjectArray *, jni::RefBaseTag<_jobjectArray *>, jni::ArrayTag<_jobjectArray *>, _jintArray *, jni::RefBaseTag<_jintArray *>, jni::ArrayTag<_jintArray *>, _jbooleanArray *, jni::RefBaseTag<_jbooleanArray *>, jni::ArrayTag<_jbooleanArray *>, _jbyteArray *, jni::RefBaseTag<_jbyteArray *>, jni::ArrayTag<_jbyteArray *>, _jcharArray *, jni::RefBaseTag<_jcharArray *>, jni::ArrayTag<_jcharArray *>, _jshortArray *, jni::RefBaseTag<_jshortArray *>, jni::ArrayTag<_jshortArray *>, _jdoubleArray *, jni::RefBaseTag<_jdoubleArray *>, jni::ArrayTag<_jdoubleArray *>, _jfloatArray *, jni::RefBaseTag<_jfloatArray *>, jni::ArrayTag<_jfloatArray *>, _jlongArray *, jni::RefBaseTag<_jlongArray *>, jni::ArrayTag<_jlongArray *>>' requested here | |
760 | TypeOfNthElement_t<FindIdxOfValWithComparator_idx<Comparator, Keys_...>, | |
| ^ | |
src/main/c/jni_bind_release.h:781:1: note: in instantiation of template type alias 'type' requested here | |
781 | using TypeToTypeMapQueryWithComparator_t = | |
| ^ | |
src/main/c/jni_bind_release.h:4005:24: note: in instantiation of template type alias 'TypeToTypeMapQueryWithComparator_t' requested here | |
4005 | metaprogramming::TypeToTypeMapQueryWithComparator_t<KeyToIndex, | |
| ^ | |
src/main/c/jni_bind_release.h:2706:1: note: in instantiation of template class 'jni::ProxyHelper<_jstring *>' requested here | |
2706 | using CDecl_t = typename ProxyHelper<T>::CDecl; | |
| ^ | |
src/main/c/jni_bind_release.h:4380:17: note: in instantiation of template type alias 'CDecl_t' requested here | |
4380 | using CDecl = CDecl_t<VoidIfVoid_t<MaterializeT>>; | |
| ^ | |
src/main/c/jni_bind_release.h:6182:24: note: in instantiation of template class 'jni::Id<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>, jni::IdType::OVERLOAD_PARAM, 0, 0, 1>' requested here | |
6182 | Proxy_t<typename IdTParamType::UnstrippedRawVal>::template kViable< | |
| ^ | |
src/main/c/jni_bind_release.h:5765:67: note: in instantiation of static data member 'jni::Viable<1, jni::Id<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>, jni::IdType::OVERLOAD, 0, 0>, jni::metaprogramming::Val<jni::IdType::OVERLOAD_PARAM>, long &, _jstring *&>::val' requested here | |
5765 | ? (Container<Indices, Ts...>::val && ...) | |
| ^ | |
src/main/c/jni_bind_release.h:5775:64: note: in instantiation of static data member 'jni::metaprogramming::Unfurl<jni::Viable, 2>::Helper<std::tuple<jni::Id<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>, jni::IdType::OVERLOAD, 0, 0>, jni::metaprogramming::Val<jni::IdType::OVERLOAD_PARAM>, long &, _jstring *&>, std::integer_sequence<unsigned long long, 0, 1>>::val' requested here | |
5775 | Helper<std::tuple<Ts...>, std::make_index_sequence<Is>>::val; | |
| ^ | |
src/main/c/jni_bind_release.h:5785:43: note: in instantiation of static data member 'jni::metaprogramming::Unfurl<jni::Viable, 2>::val<jni::Id<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>, jni::IdType::OVERLOAD, 0, 0>, jni::metaprogramming::Val<jni::IdType::OVERLOAD_PARAM>, long &, _jstring *&>' requested here | |
5785 | Unfurl<Container, Is, true>::template val<Ts...>; | |
| ^ | |
src/main/c/jni_bind_release.h:6193:31: note: in instantiation of variable template specialization 'jni::metaprogramming::UnfurlConjunction_v<2, jni::Viable, jni::Id<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>, jni::IdType::OVERLOAD, 0, 0>, jni::metaprogramming::Val<jni::IdType::OVERLOAD_PARAM>, long &, _jstring *&>' requested here | |
6193 | return metaprogramming::UnfurlConjunction_v< | |
| ^ | |
src/main/c/jni_bind_release.h:6202:34: note: in instantiation of function template specialization 'jni::ArgumentValidate<jni::Id<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>, jni::IdType::OVERLOAD, 0, 0>, jni::IdType::OVERLOAD_PARAM>::ViableHelper<long &, _jstring *&>' requested here | |
6202 | static constexpr bool kValid = ViableHelper<Ts...>(); | |
| ^ | |
src/main/c/jni_bind_release.h:6211:59: note: in instantiation of static data member 'jni::ArgumentValidate<jni::Id<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>, jni::IdType::OVERLOAD, 0, 0>, jni::IdType::OVERLOAD_PARAM>::kValid<long &, _jstring *&>' requested here | |
6211 | return ArgumentValidate<IdT, kReturnIDType>::template kValid<Ts...>; | |
| ^ | |
src/main/c/jni_bind_release.h:6216:12: note: in instantiation of function template specialization 'jni::OverloadSelection<jni::Id<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>, jni::IdType::OVERLOAD, 0, 0>, jni::IdType::OVERLOAD_PARAM>::OverloadViable<long &, _jstring *&>' requested here | |
6216 | return OverloadViable<Ts...>() ? IdT::kSecondaryIdx : kNoIdx; | |
| ^ | |
src/main/c/jni_bind_release.h:6230:34: note: in instantiation of function template specialization 'jni::OverloadSelection<jni::Id<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>, jni::IdType::OVERLOAD, 0, 0>, jni::IdType::OVERLOAD_PARAM>::OverloadIdxIfViable<long &, _jstring *&>' requested here | |
6230 | kReturnIDType>::template OverloadIdxIfViable<Ts...>()>; | |
| ^ | |
src/main/c/jni_bind_release.h:5900:38: note: in instantiation of template class 'jni::MethodSelection<jni::Id<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>, jni::IdType::OVERLOAD_SET, 0>, jni::IdType::OVERLOAD, jni::IdType::OVERLOAD_PARAM>::Helper<0, long &, _jstring *&>' requested here | |
5900 | using type = std::tuple<typename Ts::type...>; | |
| ^ | |
src/main/c/jni_bind_release.h:5904:3: note: in instantiation of template class 'jni::metaprogramming::Call::Helper<std::tuple<jni::MethodSelection<jni::Id<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>, jni::IdType::OVERLOAD_SET, 0>, jni::IdType::OVERLOAD, jni::IdType::OVERLOAD_PARAM>::Helper<0, long &, _jstring *&>>>' requested here | |
5904 | using type = typename Helper<T>::type; | |
| ^ | |
src/main/c/jni_bind_release.h:5908:1: note: in instantiation of template type alias 'type' requested here | |
5908 | using Call_t = typename Call::type<T>; | |
| ^ | |
src/main/c/jni_bind_release.h:6235:46: note: in instantiation of template type alias 'Call_t' requested here | |
6235 | metaprogramming::Min, metaprogramming::Call_t<metaprogramming::Unfurl_t< | |
| ^ | |
src/main/c/jni_bind_release.h:6240:54: note: in instantiation of static data member 'jni::MethodSelection<jni::Id<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>, jni::IdType::OVERLOAD_SET, 0>, jni::IdType::OVERLOAD, jni::IdType::OVERLOAD_PARAM>::kIdxForTs<long &, _jstring *&>' requested here | |
6240 | OverloadSelection<Id<JniT, kIDType, IdT::kIdx, kIdxForTs<Ts...>>, | |
| ^ | |
src/main/c/jni_bind_release.h:6252:46: note: in instantiation of template type alias 'FindOverloadSelection' requested here | |
6252 | IdT, kIDType, kReturnIDType>::template FindOverloadSelection<Args...>; | |
| ^ | |
src/main/c/jni_bind_release.h:6621:19: note: in instantiation of template class 'jni::OverloadSelector<jni::Id<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>, jni::IdType::OVERLOAD_SET, 0>, jni::IdType::OVERLOAD, jni::IdType::OVERLOAD_PARAM, long &, _jstring *&>' requested here | |
6621 | static_assert(MethodSelectionForArgs::kIsValidArgSet, | |
| ^ | |
src/main/c/jni_bind_release.h:4647:19: note: in instantiation of function template specialization 'jni::ObjectRef<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>>::InvocableMapCall<0ULL, long &, _jstring *&>' requested here | |
4647 | .template InvocableMapCall<I, Args...>(key, | |
| ^ | |
src/main/c/com_coralblocks_javatocppandback_jni_bind_HelloWorld.cpp:44:15: note: in instantiation of function template specialization 'jni::metaprogramming::InvocableMapEntry<jni::ObjectRef<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>>, jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>::stripped_class_v, jni::Class<std::tuple<jni::Constructor<>>, std::tuple<jni::Static<std::tuple<>, std::tuple<>>>, std::tuple<jni::Method<std::tuple<jni::Return<void>>, std::tuple<jni::Params<long, _jstring *>>>>, std::tuple<>>, &jni::Class<std::tuple<jni::Constructor<>>, std::tuple<jni::Static<std::tuple<>, std::tuple<>>>, std::tuple<jni::Method<std::tuple<jni::Return<void>>, std::tuple<jni::Params<long, _jstring *>>>>, std::tuple<>>::methods_, 0>::operator()<long &, _jstring *&>' requested here | |
44 | helloWorld("sayHello", x, msg); | |
| ^ | |
In file included from src/main/c/com_coralblocks_javatocppandback_jni_bind_HelloWorld.cpp:1: | |
src/main/c/jni_bind_release.h:507:19: error: static assertion failed due to requirement 'AllUnique_v<void, unsigned char, bool, signed char, short, long, float, long, long long, char, unsigned short, double, std::string, _jstring *, char *, const char *, std::string_view, jni::RefBaseTag<_jstring *>, _jobject *, jni::RefBaseTag<_jobject *>, jni::LoaderTag, jni::Object, jni::Self, _jarray *, jni::RefBaseTag<_jarray *>, jni::ArrayTag<_jarray *>, _jobjectArray *, jni::RefBaseTag<_jobjectArray *>, jni::ArrayTag<_jobjectArray *>, _jintArray *, jni::RefBaseTag<_jintArray *>, jni::ArrayTag<_jintArray *>, _jbooleanArray *, jni::RefBaseTag<_jbooleanArray *>, jni::ArrayTag<_jbooleanArray *>, _jbyteArray *, jni::RefBaseTag<_jbyteArray *>, jni::ArrayTag<_jbyteArray *>, _jcharArray *, jni::RefBaseTag<_jcharArray *>, jni::ArrayTag<_jcharArray *>, _jshortArray *, jni::RefBaseTag<_jshortArray *>, jni::ArrayTag<_jshortArray *>, _jdoubleArray *, jni::RefBaseTag<_jdoubleArray *>, jni::ArrayTag<_jdoubleArray *>, _jfloatArray *, jni::RefBaseTag<_jfloatArray *>, jni::ArrayTag<_jfloatArray *>, _jlongArray *, jni::RefBaseTag<_jlongArray *>, jni::ArrayTag<_jlongArray *>>': FindIdxOfVal only operates on unique sets. | |
507 | static_assert(AllUnique_v<Ts...>, | |
| ^~~~~~~~~~~~~~~~~~ | |
src/main/c/jni_bind_release.h:513:40: note: in instantiation of template class 'jni::metaprogramming::FindIdxOfVal<jni::IsConvertibleKey<long>>::StaticAssertWrapper<void, unsigned char, bool, signed char, short, long, float, long, long long, char, unsigned short, double, std::string, _jstring *, char *, const char *, std::string_view, jni::RefBaseTag<_jstring *>, _jobject *, jni::RefBaseTag<_jobject *>, jni::LoaderTag, jni::Object, jni::Self, _jarray *, jni::RefBaseTag<_jarray *>, jni::ArrayTag<_jarray *>, _jobjectArray *, jni::RefBaseTag<_jobjectArray *>, jni::ArrayTag<_jobjectArray *>, _jintArray *, jni::RefBaseTag<_jintArray *>, jni::ArrayTag<_jintArray *>, _jbooleanArray *, jni::RefBaseTag<_jbooleanArray *>, jni::ArrayTag<_jbooleanArray *>, _jbyteArray *, jni::RefBaseTag<_jbyteArray *>, jni::ArrayTag<_jbyteArray *>, _jcharArray *, jni::RefBaseTag<_jcharArray *>, jni::ArrayTag<_jcharArray *>, _jshortArray *, jni::RefBaseTag<_jshortArray *>, jni::ArrayTag<_jshortArray *>, _jdoubleArray *, jni::RefBaseTag<_jdoubleArray *>, jni::ArrayTag<_jdoubleArray *>, _jfloatArray *, jni::RefBaseTag<_jfloatArray *>, jni::ArrayTag<_jfloatArray *>, _jlongArray *, jni::RefBaseTag<_jlongArray *>, jni::ArrayTag<_jlongArray *>>' requested here | |
513 | static constexpr std::size_t value = StaticAssertWrapper<Ts...>::value; | |
| ^ | |
src/main/c/jni_bind_release.h:518:40: note: in instantiation of static data member 'jni::metaprogramming::FindIdxOfVal<jni::IsConvertibleKey<long>>::value<void, unsigned char, bool, signed char, short, long, float, long, long long, char, unsigned short, double, std::string, _jstring *, char *, const char *, std::string_view, jni::RefBaseTag<_jstring *>, _jobject *, jni::RefBaseTag<_jobject *>, jni::LoaderTag, jni::Object, jni::Self, _jarray *, jni::RefBaseTag<_jarray *>, jni::ArrayTag<_jarray *>, _jobjectArray *, jni::RefBaseTag<_jobjectArray *>, jni::ArrayTag<_jobjectArray *>, _jintArray *, jni::RefBaseTag<_jintArray *>, jni::ArrayTag<_jintArray *>, _jbooleanArray *, jni::RefBaseTag<_jbooleanArray *>, jni::ArrayTag<_jbooleanArray *>, _jbyteArray *, jni::RefBaseTag<_jbyteArray *>, jni::ArrayTag<_jbyteArray *>, _jcharArray *, jni::RefBaseTag<_jcharArray *>, jni::ArrayTag<_jcharArray *>, _jshortArray *, jni::RefBaseTag<_jshortArray *>, jni::ArrayTag<_jshortArray *>, _jdoubleArray *, jni::RefBaseTag<_jdoubleArray *>, jni::ArrayTag<_jdoubleArray *>, _jfloatArray *, jni::RefBaseTag<_jfloatArray *>, jni::ArrayTag<_jfloatArray *>, _jlongArray *, jni::RefBaseTag<_jlongArray *>, jni::ArrayTag<_jlongArray *>>' requested here | |
518 | FindIdxOfVal<Comparator>::template value<Ts...>; | |
| ^ | |
src/main/c/jni_bind_release.h:760:26: note: in instantiation of variable template specialization 'jni::metaprogramming::FindIdxOfValWithComparator_idx<jni::IsConvertibleKey<long>, void, unsigned char, bool, signed char, short, long, float, long, long long, char, unsigned short, double, std::string, _jstring *, char *, const char *, std::string_view, jni::RefBaseTag<_jstring *>, _jobject *, jni::RefBaseTag<_jobject *>, jni::LoaderTag, jni::Object, jni::Self, _jarray *, jni::RefBaseTag<_jarray *>, jni::ArrayTag<_jarray *>, _jobjectArray *, jni::RefBaseTag<_jobjectArray *>, jni::ArrayTag<_jobjectArray *>, _jintArray *, jni::RefBaseTag<_jintArray *>, jni::ArrayTag<_jintArray *>, _jbooleanArray *, jni::RefBaseTag<_jbooleanArray *>, jni::ArrayTag<_jbooleanArray *>, _jbyteArray *, jni::RefBaseTag<_jbyteArray *>, jni::ArrayTag<_jbyteArray *>, _jcharArray *, jni::RefBaseTag<_jcharArray *>, jni::ArrayTag<_jcharArray *>, _jshortArray *, jni::RefBaseTag<_jshortArray *>, jni::ArrayTag<_jshortArray *>, _jdoubleArray *, jni::RefBaseTag<_jdoubleArray *>, jni::ArrayTag<_jdoubleArray *>, _jfloatArray *, jni::RefBaseTag<_jfloatArray *>, jni::ArrayTag<_jfloatArray *>, _jlongArray *, jni::RefBaseTag<_jlongArray *>, jni::ArrayTag<_jlongArray *>>' requested here | |
760 | TypeOfNthElement_t<FindIdxOfValWithComparator_idx<Comparator, Keys_...>, | |
| ^ | |
src/main/c/jni_bind_release.h:781:1: note: in instantiation of template type alias 'type' requested here | |
781 | using TypeToTypeMapQueryWithComparator_t = | |
| ^ | |
src/main/c/jni_bind_release.h:4005:24: note: in instantiation of template type alias 'TypeToTypeMapQueryWithComparator_t' requested here | |
4005 | metaprogramming::TypeToTypeMapQueryWithComparator_t<KeyToIndex, | |
| ^ | |
src/main/c/jni_bind_release.h:2706:1: note: in instantiation of template class 'jni::ProxyHelper<long>' requested here | |
2706 | using CDecl_t = typename ProxyHelper<T>::CDecl; | |
| ^ | |
src/main/c/jni_bind_release.h:4380:17: note: in instantiation of template type alias 'CDecl_t' requested here | |
4380 | using CDecl = CDecl_t<VoidIfVoid_t<MaterializeT>>; | |
| ^ | |
src/main/c/jni_bind_release.h:6182:24: note: in instantiation of template class 'jni::Id<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>, jni::IdType::OVERLOAD_PARAM, 0, 0, 0>' requested here | |
6182 | Proxy_t<typename IdTParamType::UnstrippedRawVal>::template kViable< | |
| ^ | |
src/main/c/jni_bind_release.h:5765:67: note: in instantiation of static data member 'jni::Viable<0, jni::Id<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>, jni::IdType::OVERLOAD, 0, 0>, jni::metaprogramming::Val<jni::IdType::OVERLOAD_PARAM>, long &, _jstring *&>::val' requested here | |
5765 | ? (Container<Indices, Ts...>::val && ...) | |
| ^ | |
src/main/c/jni_bind_release.h:5775:64: note: in instantiation of static data member 'jni::metaprogramming::Unfurl<jni::Viable, 2>::Helper<std::tuple<jni::Id<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>, jni::IdType::OVERLOAD, 0, 0>, jni::metaprogramming::Val<jni::IdType::OVERLOAD_PARAM>, long &, _jstring *&>, std::integer_sequence<unsigned long long, 0, 1>>::val' requested here | |
5775 | Helper<std::tuple<Ts...>, std::make_index_sequence<Is>>::val; | |
| ^ | |
src/main/c/jni_bind_release.h:5785:43: note: in instantiation of static data member 'jni::metaprogramming::Unfurl<jni::Viable, 2>::val<jni::Id<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>, jni::IdType::OVERLOAD, 0, 0>, jni::metaprogramming::Val<jni::IdType::OVERLOAD_PARAM>, long &, _jstring *&>' requested here | |
5785 | Unfurl<Container, Is, true>::template val<Ts...>; | |
| ^ | |
src/main/c/jni_bind_release.h:6193:31: note: in instantiation of variable template specialization 'jni::metaprogramming::UnfurlConjunction_v<2, jni::Viable, jni::Id<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>, jni::IdType::OVERLOAD, 0, 0>, jni::metaprogramming::Val<jni::IdType::OVERLOAD_PARAM>, long &, _jstring *&>' requested here | |
6193 | return metaprogramming::UnfurlConjunction_v< | |
| ^ | |
src/main/c/jni_bind_release.h:6202:34: note: in instantiation of function template specialization 'jni::ArgumentValidate<jni::Id<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>, jni::IdType::OVERLOAD, 0, 0>, jni::IdType::OVERLOAD_PARAM>::ViableHelper<long &, _jstring *&>' requested here | |
6202 | static constexpr bool kValid = ViableHelper<Ts...>(); | |
| ^ | |
src/main/c/jni_bind_release.h:6211:59: note: in instantiation of static data member 'jni::ArgumentValidate<jni::Id<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>, jni::IdType::OVERLOAD, 0, 0>, jni::IdType::OVERLOAD_PARAM>::kValid<long &, _jstring *&>' requested here | |
6211 | return ArgumentValidate<IdT, kReturnIDType>::template kValid<Ts...>; | |
| ^ | |
src/main/c/jni_bind_release.h:6216:12: note: in instantiation of function template specialization 'jni::OverloadSelection<jni::Id<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>, jni::IdType::OVERLOAD, 0, 0>, jni::IdType::OVERLOAD_PARAM>::OverloadViable<long &, _jstring *&>' requested here | |
6216 | return OverloadViable<Ts...>() ? IdT::kSecondaryIdx : kNoIdx; | |
| ^ | |
src/main/c/jni_bind_release.h:6230:34: note: in instantiation of function template specialization 'jni::OverloadSelection<jni::Id<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>, jni::IdType::OVERLOAD, 0, 0>, jni::IdType::OVERLOAD_PARAM>::OverloadIdxIfViable<long &, _jstring *&>' requested here | |
6230 | kReturnIDType>::template OverloadIdxIfViable<Ts...>()>; | |
| ^ | |
src/main/c/jni_bind_release.h:5900:38: note: in instantiation of template class 'jni::MethodSelection<jni::Id<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>, jni::IdType::OVERLOAD_SET, 0>, jni::IdType::OVERLOAD, jni::IdType::OVERLOAD_PARAM>::Helper<0, long &, _jstring *&>' requested here | |
5900 | using type = std::tuple<typename Ts::type...>; | |
| ^ | |
src/main/c/jni_bind_release.h:5904:3: note: in instantiation of template class 'jni::metaprogramming::Call::Helper<std::tuple<jni::MethodSelection<jni::Id<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>, jni::IdType::OVERLOAD_SET, 0>, jni::IdType::OVERLOAD, jni::IdType::OVERLOAD_PARAM>::Helper<0, long &, _jstring *&>>>' requested here | |
5904 | using type = typename Helper<T>::type; | |
| ^ | |
src/main/c/jni_bind_release.h:5908:1: note: in instantiation of template type alias 'type' requested here | |
5908 | using Call_t = typename Call::type<T>; | |
| ^ | |
src/main/c/jni_bind_release.h:6235:46: note: in instantiation of template type alias 'Call_t' requested here | |
6235 | metaprogramming::Min, metaprogramming::Call_t<metaprogramming::Unfurl_t< | |
| ^ | |
src/main/c/jni_bind_release.h:6240:54: note: in instantiation of static data member 'jni::MethodSelection<jni::Id<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>, jni::IdType::OVERLOAD_SET, 0>, jni::IdType::OVERLOAD, jni::IdType::OVERLOAD_PARAM>::kIdxForTs<long &, _jstring *&>' requested here | |
6240 | OverloadSelection<Id<JniT, kIDType, IdT::kIdx, kIdxForTs<Ts...>>, | |
| ^ | |
src/main/c/jni_bind_release.h:6252:46: note: in instantiation of template type alias 'FindOverloadSelection' requested here | |
6252 | IdT, kIDType, kReturnIDType>::template FindOverloadSelection<Args...>; | |
| ^ | |
src/main/c/jni_bind_release.h:6621:19: note: in instantiation of template class 'jni::OverloadSelector<jni::Id<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>, jni::IdType::OVERLOAD_SET, 0>, jni::IdType::OVERLOAD, jni::IdType::OVERLOAD_PARAM, long &, _jstring *&>' requested here | |
6621 | static_assert(MethodSelectionForArgs::kIsValidArgSet, | |
| ^ | |
src/main/c/jni_bind_release.h:4647:19: note: in instantiation of function template specialization 'jni::ObjectRef<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>>::InvocableMapCall<0ULL, long &, _jstring *&>' requested here | |
4647 | .template InvocableMapCall<I, Args...>(key, | |
| ^ | |
src/main/c/com_coralblocks_javatocppandback_jni_bind_HelloWorld.cpp:44:15: note: in instantiation of function template specialization 'jni::metaprogramming::InvocableMapEntry<jni::ObjectRef<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>>, jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>::stripped_class_v, jni::Class<std::tuple<jni::Constructor<>>, std::tuple<jni::Static<std::tuple<>, std::tuple<>>>, std::tuple<jni::Method<std::tuple<jni::Return<void>>, std::tuple<jni::Params<long, _jstring *>>>>, std::tuple<>>, &jni::Class<std::tuple<jni::Constructor<>>, std::tuple<jni::Static<std::tuple<>, std::tuple<>>>, std::tuple<jni::Method<std::tuple<jni::Return<void>>, std::tuple<jni::Params<long, _jstring *>>>>, std::tuple<>>::methods_, 0>::operator()<long &, _jstring *&>' requested here | |
44 | helloWorld("sayHello", x, msg); | |
| ^ | |
In file included from src/main/c/com_coralblocks_javatocppandback_jni_bind_HelloWorld.cpp:1: | |
src/main/c/jni_bind_release.h:6202:25: error: constexpr variable 'kValid<long &, _jstring *&>' must be initialized by a constant expression | |
6202 | static constexpr bool kValid = ViableHelper<Ts...>(); | |
| ^ ~~~~~~~~~~~~~~~~~~~~~ | |
src/main/c/jni_bind_release.h:6211:59: note: in instantiation of static data member 'jni::ArgumentValidate<jni::Id<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>, jni::IdType::OVERLOAD, 0, 0>, jni::IdType::OVERLOAD_PARAM>::kValid<long &, _jstring *&>' requested here | |
6211 | return ArgumentValidate<IdT, kReturnIDType>::template kValid<Ts...>; | |
| ^ | |
src/main/c/jni_bind_release.h:6216:12: note: in instantiation of function template specialization 'jni::OverloadSelection<jni::Id<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>, jni::IdType::OVERLOAD, 0, 0>, jni::IdType::OVERLOAD_PARAM>::OverloadViable<long &, _jstring *&>' requested here | |
6216 | return OverloadViable<Ts...>() ? IdT::kSecondaryIdx : kNoIdx; | |
| ^ | |
src/main/c/jni_bind_release.h:6230:34: note: in instantiation of function template specialization 'jni::OverloadSelection<jni::Id<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>, jni::IdType::OVERLOAD, 0, 0>, jni::IdType::OVERLOAD_PARAM>::OverloadIdxIfViable<long &, _jstring *&>' requested here | |
6230 | kReturnIDType>::template OverloadIdxIfViable<Ts...>()>; | |
| ^ | |
src/main/c/jni_bind_release.h:5900:38: note: in instantiation of template class 'jni::MethodSelection<jni::Id<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>, jni::IdType::OVERLOAD_SET, 0>, jni::IdType::OVERLOAD, jni::IdType::OVERLOAD_PARAM>::Helper<0, long &, _jstring *&>' requested here | |
5900 | using type = std::tuple<typename Ts::type...>; | |
| ^ | |
src/main/c/jni_bind_release.h:5904:3: note: in instantiation of template class 'jni::metaprogramming::Call::Helper<std::tuple<jni::MethodSelection<jni::Id<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>, jni::IdType::OVERLOAD_SET, 0>, jni::IdType::OVERLOAD, jni::IdType::OVERLOAD_PARAM>::Helper<0, long &, _jstring *&>>>' requested here | |
5904 | using type = typename Helper<T>::type; | |
| ^ | |
src/main/c/jni_bind_release.h:5908:1: note: in instantiation of template type alias 'type' requested here | |
5908 | using Call_t = typename Call::type<T>; | |
| ^ | |
src/main/c/jni_bind_release.h:6235:46: note: in instantiation of template type alias 'Call_t' requested here | |
6235 | metaprogramming::Min, metaprogramming::Call_t<metaprogramming::Unfurl_t< | |
| ^ | |
src/main/c/jni_bind_release.h:6240:54: note: in instantiation of static data member 'jni::MethodSelection<jni::Id<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>, jni::IdType::OVERLOAD_SET, 0>, jni::IdType::OVERLOAD, jni::IdType::OVERLOAD_PARAM>::kIdxForTs<long &, _jstring *&>' requested here | |
6240 | OverloadSelection<Id<JniT, kIDType, IdT::kIdx, kIdxForTs<Ts...>>, | |
| ^ | |
src/main/c/jni_bind_release.h:6252:46: note: in instantiation of template type alias 'FindOverloadSelection' requested here | |
6252 | IdT, kIDType, kReturnIDType>::template FindOverloadSelection<Args...>; | |
| ^ | |
src/main/c/jni_bind_release.h:6621:19: note: in instantiation of template class 'jni::OverloadSelector<jni::Id<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>, jni::IdType::OVERLOAD_SET, 0>, jni::IdType::OVERLOAD, jni::IdType::OVERLOAD_PARAM, long &, _jstring *&>' requested here | |
6621 | static_assert(MethodSelectionForArgs::kIsValidArgSet, | |
| ^ | |
src/main/c/jni_bind_release.h:4647:19: note: in instantiation of function template specialization 'jni::ObjectRef<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>>::InvocableMapCall<0ULL, long &, _jstring *&>' requested here | |
4647 | .template InvocableMapCall<I, Args...>(key, | |
| ^ | |
src/main/c/com_coralblocks_javatocppandback_jni_bind_HelloWorld.cpp:44:15: note: in instantiation of function template specialization 'jni::metaprogramming::InvocableMapEntry<jni::ObjectRef<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>>, jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>::stripped_class_v, jni::Class<std::tuple<jni::Constructor<>>, std::tuple<jni::Static<std::tuple<>, std::tuple<>>>, std::tuple<jni::Method<std::tuple<jni::Return<void>>, std::tuple<jni::Params<long, _jstring *>>>>, std::tuple<>>, &jni::Class<std::tuple<jni::Constructor<>>, std::tuple<jni::Static<std::tuple<>, std::tuple<>>>, std::tuple<jni::Method<std::tuple<jni::Return<void>>, std::tuple<jni::Params<long, _jstring *>>>>, std::tuple<>>::methods_, 0>::operator()<long &, _jstring *&>' requested here | |
44 | helloWorld("sayHello", x, msg); | |
| ^ | |
In file included from src/main/c/com_coralblocks_javatocppandback_jni_bind_HelloWorld.cpp:1: | |
src/main/c/jni_bind_release.h:6228:41: error: non-type template argument is not a constant expression | |
6228 | using type = metaprogramming::Val_t<OverloadSelection< | |
| ^~~~~~~~~~~~~~~~~~ | |
6229 | Id<JniT, kIDType, IdT::kIdx, I>, | |
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
6230 | kReturnIDType>::template OverloadIdxIfViable<Ts...>()>; | |
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
src/main/c/jni_bind_release.h:5900:38: note: in instantiation of template class 'jni::MethodSelection<jni::Id<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>, jni::IdType::OVERLOAD_SET, 0>, jni::IdType::OVERLOAD, jni::IdType::OVERLOAD_PARAM>::Helper<0, long &, _jstring *&>' requested here | |
5900 | using type = std::tuple<typename Ts::type...>; | |
| ^ | |
src/main/c/jni_bind_release.h:5904:3: note: in instantiation of template class 'jni::metaprogramming::Call::Helper<std::tuple<jni::MethodSelection<jni::Id<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>, jni::IdType::OVERLOAD_SET, 0>, jni::IdType::OVERLOAD, jni::IdType::OVERLOAD_PARAM>::Helper<0, long &, _jstring *&>>>' requested here | |
5904 | using type = typename Helper<T>::type; | |
| ^ | |
src/main/c/jni_bind_release.h:5908:1: note: in instantiation of template type alias 'type' requested here | |
5908 | using Call_t = typename Call::type<T>; | |
| ^ | |
src/main/c/jni_bind_release.h:6235:46: note: in instantiation of template type alias 'Call_t' requested here | |
6235 | metaprogramming::Min, metaprogramming::Call_t<metaprogramming::Unfurl_t< | |
| ^ | |
src/main/c/jni_bind_release.h:6240:54: note: in instantiation of static data member 'jni::MethodSelection<jni::Id<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>, jni::IdType::OVERLOAD_SET, 0>, jni::IdType::OVERLOAD, jni::IdType::OVERLOAD_PARAM>::kIdxForTs<long &, _jstring *&>' requested here | |
6240 | OverloadSelection<Id<JniT, kIDType, IdT::kIdx, kIdxForTs<Ts...>>, | |
| ^ | |
src/main/c/jni_bind_release.h:6252:46: note: in instantiation of template type alias 'FindOverloadSelection' requested here | |
6252 | IdT, kIDType, kReturnIDType>::template FindOverloadSelection<Args...>; | |
| ^ | |
src/main/c/jni_bind_release.h:6621:19: note: in instantiation of template class 'jni::OverloadSelector<jni::Id<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>, jni::IdType::OVERLOAD_SET, 0>, jni::IdType::OVERLOAD, jni::IdType::OVERLOAD_PARAM, long &, _jstring *&>' requested here | |
6621 | static_assert(MethodSelectionForArgs::kIsValidArgSet, | |
| ^ | |
src/main/c/jni_bind_release.h:4647:19: note: in instantiation of function template specialization 'jni::ObjectRef<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>>::InvocableMapCall<0ULL, long &, _jstring *&>' requested here | |
4647 | .template InvocableMapCall<I, Args...>(key, | |
| ^ | |
src/main/c/com_coralblocks_javatocppandback_jni_bind_HelloWorld.cpp:44:15: note: in instantiation of function template specialization 'jni::metaprogramming::InvocableMapEntry<jni::ObjectRef<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>>, jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>::stripped_class_v, jni::Class<std::tuple<jni::Constructor<>>, std::tuple<jni::Static<std::tuple<>, std::tuple<>>>, std::tuple<jni::Method<std::tuple<jni::Return<void>>, std::tuple<jni::Params<long, _jstring *>>>>, std::tuple<>>, &jni::Class<std::tuple<jni::Constructor<>>, std::tuple<jni::Static<std::tuple<>, std::tuple<>>>, std::tuple<jni::Method<std::tuple<jni::Return<void>>, std::tuple<jni::Params<long, _jstring *>>>>, std::tuple<>>::methods_, 0>::operator()<long &, _jstring *&>' requested here | |
44 | helloWorld("sayHello", x, msg); | |
| ^ | |
src/main/c/jni_bind_release.h:6211:12: note: initializer of 'kValid<long &, _jstring *&>' is not a constant expression | |
6211 | return ArgumentValidate<IdT, kReturnIDType>::template kValid<Ts...>; | |
| ^ | |
src/main/c/jni_bind_release.h:6216:12: note: in call to 'OverloadViable()' | |
6216 | return OverloadViable<Ts...>() ? IdT::kSecondaryIdx : kNoIdx; | |
| ^ | |
src/main/c/jni_bind_release.h:6228:41: note: in call to 'OverloadIdxIfViable()' | |
6228 | using type = metaprogramming::Val_t<OverloadSelection< | |
| ^ | |
src/main/c/jni_bind_release.h:6202:25: note: declared here | |
6202 | static constexpr bool kValid = ViableHelper<Ts...>(); | |
| ^ | |
src/main/c/jni_bind_release.h:6259:25: error: constexpr variable 'kIsValidArgSet' must be initialized by a constant expression | |
6260 | static constexpr bool kIsValidArgSet = | |
| ^ | |
6261 | MethodSelection<IdT, kIDType, | |
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
6262 | kReturnIDType>::template ArgSetViable<Args...>(); | |
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
src/main/c/jni_bind_release.h:6621:43: note: in instantiation of static data member 'jni::OverloadSelector<jni::Id<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>, jni::IdType::OVERLOAD_SET, 0>, jni::IdType::OVERLOAD, jni::IdType::OVERLOAD_PARAM, long &, _jstring *&>::kIsValidArgSet' requested here | |
6621 | static_assert(MethodSelectionForArgs::kIsValidArgSet, | |
| ^ | |
src/main/c/jni_bind_release.h:4647:19: note: in instantiation of function template specialization 'jni::ObjectRef<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>>::InvocableMapCall<0ULL, long &, _jstring *&>' requested here | |
4647 | .template InvocableMapCall<I, Args...>(key, | |
| ^ | |
src/main/c/com_coralblocks_javatocppandback_jni_bind_HelloWorld.cpp:44:15: note: in instantiation of function template specialization 'jni::metaprogramming::InvocableMapEntry<jni::ObjectRef<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>>, jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>::stripped_class_v, jni::Class<std::tuple<jni::Constructor<>>, std::tuple<jni::Static<std::tuple<>, std::tuple<>>>, std::tuple<jni::Method<std::tuple<jni::Return<void>>, std::tuple<jni::Params<long, _jstring *>>>>, std::tuple<>>, &jni::Class<std::tuple<jni::Constructor<>>, std::tuple<jni::Static<std::tuple<>, std::tuple<>>>, std::tuple<jni::Method<std::tuple<jni::Return<void>>, std::tuple<jni::Params<long, _jstring *>>>>, std::tuple<>>::methods_, 0>::operator()<long &, _jstring *&>' requested here | |
44 | helloWorld("sayHello", x, msg); | |
| ^ | |
In file included from src/main/c/com_coralblocks_javatocppandback_jni_bind_HelloWorld.cpp:1: | |
src/main/c/jni_bind_release.h:6621:19: error: static assertion expression is not an integral constant expression | |
6621 | static_assert(MethodSelectionForArgs::kIsValidArgSet, | |
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
src/main/c/jni_bind_release.h:4647:19: note: in instantiation of function template specialization 'jni::ObjectRef<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>>::InvocableMapCall<0ULL, long &, _jstring *&>' requested here | |
4647 | .template InvocableMapCall<I, Args...>(key, | |
| ^ | |
src/main/c/com_coralblocks_javatocppandback_jni_bind_HelloWorld.cpp:44:15: note: in instantiation of function template specialization 'jni::metaprogramming::InvocableMapEntry<jni::ObjectRef<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>>, jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>::stripped_class_v, jni::Class<std::tuple<jni::Constructor<>>, std::tuple<jni::Static<std::tuple<>, std::tuple<>>>, std::tuple<jni::Method<std::tuple<jni::Return<void>>, std::tuple<jni::Params<long, _jstring *>>>>, std::tuple<>>, &jni::Class<std::tuple<jni::Constructor<>>, std::tuple<jni::Static<std::tuple<>, std::tuple<>>>, std::tuple<jni::Method<std::tuple<jni::Return<void>>, std::tuple<jni::Params<long, _jstring *>>>>, std::tuple<>>::methods_, 0>::operator()<long &, _jstring *&>' requested here | |
44 | helloWorld("sayHello", x, msg); | |
| ^ | |
src/main/c/jni_bind_release.h:6621:19: note: initializer of 'kIsValidArgSet' is not a constant expression | |
6621 | static_assert(MethodSelectionForArgs::kIsValidArgSet, | |
| ^ | |
src/main/c/jni_bind_release.h:6259:25: note: declared here | |
6259 | static constexpr bool kIsValidArgSet = | |
| ^ | |
src/main/c/jni_bind_release.h:507:19: error: static assertion failed due to requirement 'AllUnique_v<void, unsigned char, bool, signed char, short, long, float, long, long long, char, unsigned short, double, std::string, _jstring *, char *, const char *, std::string_view, jni::RefBaseTag<_jstring *>, _jobject *, jni::RefBaseTag<_jobject *>, jni::LoaderTag, jni::Object, jni::Self, _jarray *, jni::RefBaseTag<_jarray *>, jni::ArrayTag<_jarray *>, _jobjectArray *, jni::RefBaseTag<_jobjectArray *>, jni::ArrayTag<_jobjectArray *>, _jintArray *, jni::RefBaseTag<_jintArray *>, jni::ArrayTag<_jintArray *>, _jbooleanArray *, jni::RefBaseTag<_jbooleanArray *>, jni::ArrayTag<_jbooleanArray *>, _jbyteArray *, jni::RefBaseTag<_jbyteArray *>, jni::ArrayTag<_jbyteArray *>, _jcharArray *, jni::RefBaseTag<_jcharArray *>, jni::ArrayTag<_jcharArray *>, _jshortArray *, jni::RefBaseTag<_jshortArray *>, jni::ArrayTag<_jshortArray *>, _jdoubleArray *, jni::RefBaseTag<_jdoubleArray *>, jni::ArrayTag<_jdoubleArray *>, _jfloatArray *, jni::RefBaseTag<_jfloatArray *>, jni::ArrayTag<_jfloatArray *>, _jlongArray *, jni::RefBaseTag<_jlongArray *>, jni::ArrayTag<_jlongArray *>>': FindIdxOfVal only operates on unique sets. | |
507 | static_assert(AllUnique_v<Ts...>, | |
| ^~~~~~~~~~~~~~~~~~ | |
src/main/c/jni_bind_release.h:513:40: note: in instantiation of template class 'jni::metaprogramming::FindIdxOfVal<jni::IsConvertibleKey<jni::Class<std::tuple<jni::Constructor<>>, std::tuple<jni::Static<std::tuple<>, std::tuple<>>>, std::tuple<jni::Method<std::tuple<jni::Return<void>>, std::tuple<jni::Params<long, _jstring *>>>>, std::tuple<>>>>::StaticAssertWrapper<void, unsigned char, bool, signed char, short, long, float, long, long long, char, unsigned short, double, std::string, _jstring *, char *, const char *, std::string_view, jni::RefBaseTag<_jstring *>, _jobject *, jni::RefBaseTag<_jobject *>, jni::LoaderTag, jni::Object, jni::Self, _jarray *, jni::RefBaseTag<_jarray *>, jni::ArrayTag<_jarray *>, _jobjectArray *, jni::RefBaseTag<_jobjectArray *>, jni::ArrayTag<_jobjectArray *>, _jintArray *, jni::RefBaseTag<_jintArray *>, jni::ArrayTag<_jintArray *>, _jbooleanArray *, jni::RefBaseTag<_jbooleanArray *>, jni::ArrayTag<_jbooleanArray *>, _jbyteArray *, jni::RefBaseTag<_jbyteArray *>, jni::ArrayTag<_jbyteArray *>, _jcharArray *, jni::RefBaseTag<_jcharArray *>, jni::ArrayTag<_jcharArray *>, _jshortArray *, jni::RefBaseTag<_jshortArray *>, jni::ArrayTag<_jshortArray *>, _jdoubleArray *, jni::RefBaseTag<_jdoubleArray *>, jni::ArrayTag<_jdoubleArray *>, _jfloatArray *, jni::RefBaseTag<_jfloatArray *>, jni::ArrayTag<_jfloatArray *>, _jlongArray *, jni::RefBaseTag<_jlongArray *>, jni::ArrayTag<_jlongArray *>>' requested here | |
513 | static constexpr std::size_t value = StaticAssertWrapper<Ts...>::value; | |
| ^ | |
src/main/c/jni_bind_release.h:518:40: note: in instantiation of static data member 'jni::metaprogramming::FindIdxOfVal<jni::IsConvertibleKey<jni::Class<std::tuple<jni::Constructor<>>, std::tuple<jni::Static<std::tuple<>, std::tuple<>>>, std::tuple<jni::Method<std::tuple<jni::Return<void>>, std::tuple<jni::Params<long, _jstring *>>>>, std::tuple<>>>>::value<void, unsigned char, bool, signed char, short, long, float, long, long long, char, unsigned short, double, std::string, _jstring *, char *, const char *, std::string_view, jni::RefBaseTag<_jstring *>, _jobject *, jni::RefBaseTag<_jobject *>, jni::LoaderTag, jni::Object, jni::Self, _jarray *, jni::RefBaseTag<_jarray *>, jni::ArrayTag<_jarray *>, _jobjectArray *, jni::RefBaseTag<_jobjectArray *>, jni::ArrayTag<_jobjectArray *>, _jintArray *, jni::RefBaseTag<_jintArray *>, jni::ArrayTag<_jintArray *>, _jbooleanArray *, jni::RefBaseTag<_jbooleanArray *>, jni::ArrayTag<_jbooleanArray *>, _jbyteArray *, jni::RefBaseTag<_jbyteArray *>, jni::ArrayTag<_jbyteArray *>, _jcharArray *, jni::RefBaseTag<_jcharArray *>, jni::ArrayTag<_jcharArray *>, _jshortArray *, jni::RefBaseTag<_jshortArray *>, jni::ArrayTag<_jshortArray *>, _jdoubleArray *, jni::RefBaseTag<_jdoubleArray *>, jni::ArrayTag<_jdoubleArray *>, _jfloatArray *, jni::RefBaseTag<_jfloatArray *>, jni::ArrayTag<_jfloatArray *>, _jlongArray *, jni::RefBaseTag<_jlongArray *>, jni::ArrayTag<_jlongArray *>>' requested here | |
518 | FindIdxOfVal<Comparator>::template value<Ts...>; | |
| ^ | |
src/main/c/jni_bind_release.h:760:26: note: in instantiation of variable template specialization 'jni::metaprogramming::FindIdxOfValWithComparator_idx<jni::IsConvertibleKey<jni::Class<std::tuple<jni::Constructor<>>, std::tuple<jni::Static<std::tuple<>, std::tuple<>>>, std::tuple<jni::Method<std::tuple<jni::Return<void>>, std::tuple<jni::Params<long, _jstring *>>>>, std::tuple<>>>, void, unsigned char, bool, signed char, short, long, float, long, long long, char, unsigned short, double, std::string, _jstring *, char *, const char *, std::string_view, jni::RefBaseTag<_jstring *>, _jobject *, jni::RefBaseTag<_jobject *>, jni::LoaderTag, jni::Object, jni::Self, _jarray *, jni::RefBaseTag<_jarray *>, jni::ArrayTag<_jarray *>, _jobjectArray *, jni::RefBaseTag<_jobjectArray *>, jni::ArrayTag<_jobjectArray *>, _jintArray *, jni::RefBaseTag<_jintArray *>, jni::ArrayTag<_jintArray *>, _jbooleanArray *, jni::RefBaseTag<_jbooleanArray *>, jni::ArrayTag<_jbooleanArray *>, _jbyteArray *, jni::RefBaseTag<_jbyteArray *>, jni::ArrayTag<_jbyteArray *>, _jcharArray *, jni::RefBaseTag<_jcharArray *>, jni::ArrayTag<_jcharArray *>, _jshortArray *, jni::RefBaseTag<_jshortArray *>, jni::ArrayTag<_jshortArray *>, _jdoubleArray *, jni::RefBaseTag<_jdoubleArray *>, jni::ArrayTag<_jdoubleArray *>, _jfloatArray *, jni::RefBaseTag<_jfloatArray *>, jni::ArrayTag<_jfloatArray *>, _jlongArray *, jni::RefBaseTag<_jlongArray *>, jni::ArrayTag<_jlongArray *>>' requested here | |
760 | TypeOfNthElement_t<FindIdxOfValWithComparator_idx<Comparator, Keys_...>, | |
| ^ | |
src/main/c/jni_bind_release.h:781:1: note: in instantiation of template type alias 'type' requested here | |
781 | using TypeToTypeMapQueryWithComparator_t = | |
| ^ | |
src/main/c/jni_bind_release.h:4005:24: note: in instantiation of template type alias 'TypeToTypeMapQueryWithComparator_t' requested here | |
4005 | metaprogramming::TypeToTypeMapQueryWithComparator_t<KeyToIndex, | |
| ^ | |
src/main/c/jni_bind_release.h:2706:1: note: in instantiation of template class 'jni::ProxyHelper<jni::Class<std::tuple<jni::Constructor<>>, std::tuple<jni::Static<std::tuple<>, std::tuple<>>>, std::tuple<jni::Method<std::tuple<jni::Return<void>>, std::tuple<jni::Params<long, _jstring *>>>>, std::tuple<>>>' requested here | |
2706 | using CDecl_t = typename ProxyHelper<T>::CDecl; | |
| ^ | |
src/main/c/jni_bind_release.h:4380:17: note: in instantiation of template type alias 'CDecl_t' requested here | |
4380 | using CDecl = CDecl_t<VoidIfVoid_t<MaterializeT>>; | |
| ^ | |
src/main/c/jni_bind_release.h:6192:36: note: in instantiation of template class 'jni::Id<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>, jni::IdType::OVERLOAD, 18446744073709551615, 0>' requested here | |
6192 | if constexpr (sizeof...(Ts) == OverloadId::kNumParams) { | |
| ^ | |
src/main/c/jni_bind_release.h:6202:34: note: in instantiation of function template specialization 'jni::ArgumentValidate<jni::Id<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>, jni::IdType::OVERLOAD, 18446744073709551615, 0>, jni::IdType::OVERLOAD_PARAM>::ViableHelper<>' requested here | |
6202 | static constexpr bool kValid = ViableHelper<Ts...>(); | |
| ^ | |
src/main/c/jni_bind_release.h:6211:59: note: in instantiation of static data member 'jni::ArgumentValidate<jni::Id<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>, jni::IdType::OVERLOAD, 18446744073709551615, 0>, jni::IdType::OVERLOAD_PARAM>::kValid<>' requested here | |
6211 | return ArgumentValidate<IdT, kReturnIDType>::template kValid<Ts...>; | |
| ^ | |
src/main/c/jni_bind_release.h:6216:12: note: in instantiation of function template specialization 'jni::OverloadSelection<jni::Id<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>, jni::IdType::OVERLOAD, 18446744073709551615, 0>, jni::IdType::OVERLOAD_PARAM>::OverloadViable<>' requested here | |
6216 | return OverloadViable<Ts...>() ? IdT::kSecondaryIdx : kNoIdx; | |
| ^ | |
src/main/c/jni_bind_release.h:6230:34: note: in instantiation of function template specialization 'jni::OverloadSelection<jni::Id<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>, jni::IdType::OVERLOAD, 18446744073709551615, 0>, jni::IdType::OVERLOAD_PARAM>::OverloadIdxIfViable<>' requested here | |
6230 | kReturnIDType>::template OverloadIdxIfViable<Ts...>()>; | |
| ^ | |
src/main/c/jni_bind_release.h:5900:38: note: in instantiation of template class 'jni::MethodSelection<jni::Id<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>, jni::IdType::OVERLOAD_SET>, jni::IdType::OVERLOAD, jni::IdType::OVERLOAD_PARAM>::Helper<0>' requested here | |
5900 | using type = std::tuple<typename Ts::type...>; | |
| ^ | |
src/main/c/jni_bind_release.h:5904:3: note: in instantiation of template class 'jni::metaprogramming::Call::Helper<std::tuple<jni::MethodSelection<jni::Id<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>, jni::IdType::OVERLOAD_SET>, jni::IdType::OVERLOAD, jni::IdType::OVERLOAD_PARAM>::Helper<0>>>' requested here | |
5904 | using type = typename Helper<T>::type; | |
| ^ | |
src/main/c/jni_bind_release.h:5908:1: note: in instantiation of template type alias 'type' requested here | |
5908 | using Call_t = typename Call::type<T>; | |
| ^ | |
src/main/c/jni_bind_release.h:6235:46: note: in instantiation of template type alias 'Call_t' requested here | |
6235 | metaprogramming::Min, metaprogramming::Call_t<metaprogramming::Unfurl_t< | |
| ^ | |
src/main/c/jni_bind_release.h:6240:54: note: in instantiation of static data member 'jni::MethodSelection<jni::Id<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>, jni::IdType::OVERLOAD_SET>, jni::IdType::OVERLOAD, jni::IdType::OVERLOAD_PARAM>::kIdxForTs<>' requested here | |
6240 | OverloadSelection<Id<JniT, kIDType, IdT::kIdx, kIdxForTs<Ts...>>, | |
| ^ | |
src/main/c/jni_bind_release.h:6252:46: note: in instantiation of template type alias 'FindOverloadSelection' requested here | |
6252 | IdT, kIDType, kReturnIDType>::template FindOverloadSelection<Args...>; | |
| ^ | |
src/main/c/jni_bind_release.h:6680:14: note: in instantiation of template class 'jni::OverloadSelector<jni::Id<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>, jni::IdType::OVERLOAD_SET>, jni::IdType::OVERLOAD, jni::IdType::OVERLOAD_PARAM>' requested here | |
6680 | : Base(Permutation_t<>::OverloadRef::Invoke(Base::GetJClass(), | |
| ^ | |
src/main/c/jni_bind_release.h:6687:8: note: in instantiation of member function 'jni::ConstructorValidator<jni::JniT<_jobject *, kClass, jni::kDefaultClassLoader, jni::kDefaultJvm>>::ConstructorValidator' requested here | |
6687 | struct ValidatorProxy : public ConstructorValidator<JniT> { | |
| ^ | |
1 warning and 8 errors generated. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment