Skip to content

MParT.jl fails with CxxWrap version 0.15 #402

@dannys4

Description

@dannys4

It's broken again.

$ cmake --build .
[2/7] Building CXX object bindings/j...tjl.dir/src/ConditionalMapBase.cpp.o
FAILED: bindings/julia/CMakeFiles/mpartjl.dir/src/ConditionalMapBase.cpp.o 
/Users/dannys4/miniconda3/envs/mpart/bin/arm64-apple-darwin20.0.0-clang++ -DJULIA_ENABLE_THREADING -DKOKKOS_DEPENDENCE -DMPART_HAS_NLOPT -DNLOPT_DLL -Dmpartjl_EXPORTS -I/Users/dannys4/git-repos/MParT/bindings/julia/./include -I/Users/dannys4/git-repos/MParT/bindings/julia/../common/include -I/Users/dannys4/git-repos/MParT -isystem /Users/dannys4/.julia/artifacts/a745c83cf93d0d15249200206246b2230669f8cf/include -isystem /Users/dannys4/.julia/juliaup/julia-1.10.2+0.aarch64.apple.darwin14/include/julia -isystem /Users/dannys4/installs/KOKKOS/include -isystem /Users/dannys4/miniconda3/envs/mpart/include/eigen3 -ftree-vectorize -fPIC -fstack-protector-strong -O2 -pipe -stdlib=libc++ -fvisibility-inlines-hidden -fmessage-length=0 -isystem /Users/dannys4/miniconda3/envs/mpart/include -g -arch arm64 -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk -fPIC -fopenmp=libomp -std=gnu++20 -MD -MT bindings/julia/CMakeFiles/mpartjl.dir/src/ConditionalMapBase.cpp.o -MF bindings/julia/CMakeFiles/mpartjl.dir/src/ConditionalMapBase.cpp.o.d -o bindings/julia/CMakeFiles/mpartjl.dir/src/ConditionalMapBase.cpp.o -c /Users/dannys4/git-repos/MParT/bindings/julia/src/ConditionalMapBase.cpp
In file included from /Users/dannys4/git-repos/MParT/bindings/julia/src/ConditionalMapBase.cpp:3:
In file included from /Users/dannys4/git-repos/MParT/bindings/julia/./include/CommonJuliaUtilities.h:4:
In file included from /Users/dannys4/.julia/artifacts/a745c83cf93d0d15249200206246b2230669f8cf/include/jlcxx/jlcxx.hpp:15:
/Users/dannys4/.julia/artifacts/a745c83cf93d0d15249200206246b2230669f8cf/include/jlcxx/module.hpp:48:12: error: no viable conversion from returned value of type 'decltype(ConvertToJulia<ConditionalMapBase<HostSpace> *>()(std::forward<mpart::ConditionalMapBase<Kokkos::HostSpace> *>(cpp_val)))' (aka 'jlcxx::WrappedCppPtr') to function return type 'return_type' (aka 'mpart::ConditionalMapBase<Kokkos::HostSpace> *')
    return convert_to_julia((*std_func)(convert_to_cpp<Args>(args)...));
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/dannys4/.julia/artifacts/a745c83cf93d0d15249200206246b2230669f8cf/include/jlcxx/module.hpp:73:14: note: in instantiation of member function 'jlcxx::detail::ReturnTypeAdapter<mpart::ConditionalMapBase<Kokkos::HostSpace> *const, std::queue<mpart::ConditionalMapBase<Kokkos::HostSpace> *> &>::operator()' requested here
      return ReturnTypeAdapter<R, Args...>()(functor, args...);
             ^
/Users/dannys4/.julia/artifacts/a745c83cf93d0d15249200206246b2230669f8cf/include/jlcxx/module.hpp:252:69: note: in instantiation of member function 'jlcxx::detail::CallFunctor<mpart::ConditionalMapBase<Kokkos::HostSpace> *const, std::queue<mpart::ConditionalMapBase<Kokkos::HostSpace> *> &>::apply' requested here
    return reinterpret_cast<void*>(detail::CallFunctor<R, Args...>::apply);
                                                                    ^
/Users/dannys4/.julia/artifacts/a745c83cf93d0d15249200206246b2230669f8cf/include/jlcxx/module.hpp:239:3: note: in instantiation of member function 'jlcxx::FunctionWrapper<mpart::ConditionalMapBase<Kokkos::HostSpace> *const, std::queue<mpart::ConditionalMapBase<Kokkos::HostSpace> *> &>::pointer' requested here
  FunctionWrapper(Module* mod, const functor_t &function) : FunctionWrapperBase(mod, julia_return_type<R>()), m_function(function)
  ^
/Users/dannys4/.julia/artifacts/a745c83cf93d0d15249200206246b2230669f8cf/include/jlcxx/module.hpp:779:29: note: in instantiation of member function 'jlcxx::FunctionWrapper<mpart::ConditionalMapBase<Kokkos::HostSpace> *const, std::queue<mpart::ConditionalMapBase<Kokkos::HostSpace> *> &>::FunctionWrapper' requested here
    auto* new_wrapper = new FunctionWrapper<R, Args...>(this, f);
                            ^
/Users/dannys4/.julia/artifacts/a745c83cf93d0d15249200206246b2230669f8cf/include/jlcxx/module.hpp:773:12: note: in instantiation of function template specialization 'jlcxx::Module::method_helper<mpart::ConditionalMapBase<Kokkos::HostSpace> *const, std::queue<mpart::ConditionalMapBase<Kokkos::HostSpace> *> &>' requested here
    return method_helper(name, std::function<R(ArgsT...)>(std::forward<LambdaT>(lambda)), std::move(extraData));
           ^
/Users/dannys4/.julia/artifacts/a745c83cf93d0d15249200206246b2230669f8cf/include/jlcxx/module.hpp:1113:14: note: (skipping 2 contexts in backtrace; use -ftemplate-backtrace-limit=0 to see all)
    m_module.lambda_helper(name, std::forward<LambdaT>(lambda), &LambdaT::operator(), std::move(extraData));
             ^
/Users/dannys4/.julia/artifacts/a745c83cf93d0d15249200206246b2230669f8cf/include/jlcxx/stl.hpp:225:23: note: in instantiation of function template specialization 'jlcxx::stl::WrapQueueImpl<mpart::ConditionalMapBase<Kokkos::HostSpace> *>::wrap<jlcxx::TypeWrapper<std::queue<mpart::ConditionalMapBase<Kokkos::HostSpace> *>> &>' requested here
    WrapQueueImpl<T>::wrap(wrapped);
                      ^
/Users/dannys4/.julia/artifacts/a745c83cf93d0d15249200206246b2230669f8cf/include/jlcxx/module.hpp:1199:5: note: in instantiation of function template specialization 'jlcxx::stl::WrapQueue::operator()<jlcxx::TypeWrapper<std::queue<mpart::ConditionalMapBase<Kokkos::HostSpace> *>>>' requested here
    apply_ftor(TypeWrapper<AppliedT>(m_module, app_dt, app_box_dt));
    ^
/Users/dannys4/.julia/artifacts/a745c83cf93d0d15249200206246b2230669f8cf/include/jlcxx/module.hpp:1148:34: note: in instantiation of function template specialization 'jlcxx::TypeWrapper<jlcxx::Parametric<jlcxx::TypeVar<1>>>::apply_internal<std::queue<mpart::ConditionalMapBase<Kokkos::HostSpace> *>, jlcxx::stl::WrapQueue>' requested here
    auto dummy = {this->template apply_internal<AppliedTypesT>(std::forward<FunctorT>(apply_ftor))...};
                                 ^
/Users/dannys4/.julia/artifacts/a745c83cf93d0d15249200206246b2230669f8cf/include/jlcxx/stl.hpp:235:52: note: in instantiation of function template specialization 'jlcxx::TypeWrapper<jlcxx::Parametric<jlcxx::TypeVar<1>>>::apply<std::queue<mpart::ConditionalMapBase<Kokkos::HostSpace> *>, jlcxx::stl::WrapQueue>' requested here
  TypeWrapper1(mod, StlWrappers::instance().queue).apply<std::queue<T>>(WrapQueue());
                                                   ^
/Users/dannys4/git-repos/MParT/bindings/julia/src/ConditionalMapBase.cpp:43:17: note: in instantiation of function template specialization 'jlcxx::stl::apply_stl<mpart::ConditionalMapBase<Kokkos::HostSpace> *>' requested here
    jlcxx::stl::apply_stl<ConditionalMapBase<Kokkos::HostSpace>*>(mod);
                ^
1 error generated.

Metadata

Metadata

Assignees

Labels

bindingsSpecific to MParT bindings (python, julia, matlab)bugSomething isn't working

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions