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

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions