| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
|
Running here: https://jenkins.flatironinstitute.org/blue/organizations/jenkins/Stan%2FStanc3/detail/PR-1527/9/pipeline |
Sorry, something went wrong.
|
Closer but still errors @SteveBronder ../../test/integration/good/function-signatures/math/matrix/bessel_second_kind.hpp:1751:9: error: call to 'bessel_second_kind' is ambiguous
stan::math::bessel_second_kind(d_int_array, transformed_param_real),
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../test/integration/good/function-signatures/math/matrix/bessel_second_kind.hpp:2784:12: note: in instantiation of function template specialization 'bessel_second_kind_model_namespace::bessel_second_kind_model::log_prob_impl<false, false, Eigen::Matrix<stan::math::var_value<double, void>, -1, 1, 0, -1, 1>, Eigen::Matrix<int, -1, 1, 0, -1, 1>, nullptr, nullptr, nullptr>' requested here
return log_prob_impl<propto__, jacobian__>(params_r, params_i, pstream);
^
/home/jenkins/workspace/Stan_Stanc3_PR-1527@2/compile-good-O1/performance-tests-cmdstan/cmdstan/stan/src/stan/model/model_base_crtp.hpp:98:50: note: in instantiation of function template specialization 'bessel_second_kind_model_namespace::bessel_second_kind_model::log_prob<false, false, stan::math::var_value<double, void> >' requested here
return static_cast<const M*>(this)->template log_prob<false, false>(theta,
^
../../test/integration/good/function-signatures/math/matrix/bessel_second_kind.hpp:280:3: note: in instantiation of member function 'stan::model::model_base_crtp<bessel_second_kind_model_namespace::bessel_second_kind_model>::log_prob' requested here
~bessel_second_kind_model() {}
^
/home/jenkins/workspace/Stan_Stanc3_PR-1527@2/compile-good-O1/performance-tests-cmdstan/cmdstan/stan/lib/stan_math/stan/math/prim/fun/bessel_second_kind.hpp:57:13: note: candidate function [with T1 = const std::vector<int, std::allocator<int> > &, T2 = stan::math::var_value<double, void> &, $2 = nullptr, $3 = nullptr]
inline auto bessel_second_kind(T1&& a, T2&& b) {
^
/home/jenkins/workspace/Stan_Stanc3_PR-1527@2/compile-good-O1/performance-tests-cmdstan/cmdstan/stan/lib/stan_math/stan/math/rev/fun/bessel_second_kind.hpp:13:13: note: candidate function [with T1 = const std::vector<int, std::allocator<int> > &, T2 = stan::math::var_value<double, void> &, $2 = nullptr, $3 = nullptr]
inline auto bessel_second_kind(T1&& v, T2&& a) {
^
../../test/integration/good/function-signatures/math/matrix/bessel_second_kind.hpp:1760:9: error: call to 'bessel_second_kind' is ambiguous
stan::math::bessel_second_kind(d_int_array_2d, transformed_param_real),
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/jenkins/workspace/Stan_Stanc3_PR-1527@2/compile-good-O1/performance-tests-cmdstan/cmdstan/stan/lib/stan_math/stan/math/prim/fun/bessel_second_kind.hpp:57:13: note: candidate function [with T1 = const std::vector<std::vector<int, std::allocator<int> >, std::allocator<std::vector<int, std::allocator<int> > > > &, T2 = stan::math::var_value<double, void> &, $2 = nullptr, $3 = nullptr]
inline auto bessel_second_kind(T1&& a, T2&& b) {
^
/home/jenkins/workspace/Stan_Stanc3_PR-1527@2/compile-good-O1/performance-tests-cmdstan/cmdstan/stan/lib/stan_math/stan/math/rev/fun/bessel_second_kind.hpp:13:13: note: candidate function [with T1 = const std::vector<std::vector<int, std::allocator<int> >, std::allocator<std::vector<int, std::allocator<int> > > > &, T2 = stan::math::var_value<double, void> &, $2 = nullptr, $3 = nullptr]
inline auto bessel_second_kind(T1&& v, T2&& a) {
^
../../test/integration/good/function-signatures/math/matrix/bessel_second_kind.hpp:1769:9: error: call to 'bessel_second_kind' is ambiguous
stan::math::bessel_second_kind(d_int_array_3d, transformed_param_real),
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/jenkins/workspace/Stan_Stanc3_PR-1527@2/compile-good-O1/performance-tests-cmdstan/cmdstan/stan/lib/stan_math/stan/math/prim/fun/bessel_second_kind.hpp:57:13: note: candidate function [with T1 = const std::vector<std::vector<std::vector<int, std::allocator<int> >, std::allocator<std::vector<int, std::allocator<int> > > >, std::allocator<std::vector<std::vector<int, std::allocator<int> >, std::allocator<std::vector<int, std::allocator<int> > > > > > &, T2 = stan::math::var_value<double, void> &, $2 = nullptr, $3 = nullptr]
inline auto bessel_second_kind(T1&& a, T2&& b) {
^
/home/jenkins/workspace/Stan_Stanc3_PR-1527@2/compile-good-O1/performance-tests-cmdstan/cmdstan/stan/lib/stan_math/stan/math/rev/fun/bessel_second_kind.hpp:13:13: note: candidate function [with T1 = const std::vector<std::vector<std::vector<int, std::allocator<int> >, std::allocator<std::vector<int, std::allocator<int> > > >, std::allocator<std::vector<std::vector<int, std::allocator<int> >, std::allocator<std::vector<int, std::allocator<int> > > > > > &, T2 = stan::math::var_value<double, void> &, $2 = nullptr, $3 = nullptr]
inline auto bessel_second_kind(T1&& v, T2&& a) {
|
Sorry, something went wrong.
There was a problem hiding this comment.
Latest push passed over in stan-dev/stanc3#1540
Sorry, something went wrong.
Jenkins Console Log Machine information No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 20.04.3 LTS Release: 20.04 Codename: focal CPU: G++: Clang: |
Sorry, something went wrong.
| Back | FazBrowse Home | New Git URL |
Summary
This fixes bessel_second_kind so that the reverse mode specialization is chosen over the perfect forwarding version of the function we use for the vectorized prim function.
Tests
Added tests for bessel_second_kind that uses reverse mode autodiff for std::vector<int> and std::vector<std::vector<int>> as the lhs.
Side Effects
@WardBrian can we run the stanc3 tests on this to make sure this fixes the issue?
Release notes
Checklist
Copyright holder: Steve Bronder
The copyright holder is typically you or your assignee, such as a university or company. By submitting this pull request, the copyright holder is agreeing to the license the submitted work under the following licenses:
- Code: BSD 3-clause (https://opensource.org/licenses/BSD-3-Clause)
- Documentation: CC-BY 4.0 (https://creativecommons.org/licenses/by/4.0/)
the basic tests are passing
the code is written in idiomatic C++ and changes are documented in the doxygen
the new changes are tested