Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[python/multibody] fix include order in frames.cpp #1150

Merged
merged 1 commit into from
Jul 11, 2023

Conversation

ManifoldFR
Copy link
Contributor

@ManifoldFR ManifoldFR commented Jul 11, 2023

Hi !

We've noticed a compilation issue under pinocchio 3x: on devel, we're getting the following compiler error (or a variation of it, repeated a few times):

In file included from /home/manifold/git-repos/crocoddyl/bindings/python/crocoddyl/multibody/frames.cpp:12:
In file included from /home/manifold/mambaforge/envs/pin3/include/pinocchio/bindings/python/utils/std-aligned-vector.hpp:14:
/home/manifold/mambaforge/envs/pin3/include/pinocchio/bindings/python/utils/std-vector.hpp:289:50: error: use of undeclared identifier 'NumericalBase'; did you mean 'Eigen::NumericalIssue'?
      boost::mpl::if_<typename boost::is_base_of<NumericalBase<T>,T>::type,has_operator_equal< NumericalBase<T> >,
                                                 ^
/home/manifold/mambaforge/envs/pin3/include/eigen3/Eigen/src/Core/util/Constants.h:434:3: note: 'Eigen::NumericalIssue' declared here
  NumericalIssue = 1, 
  ^

(The compiler is Clang 15, but the same happens on GCC 13, AFAIK).
The struct it's referring to is the template struct pinocchio::NumericalBase from Pinocchio's fwd header but obviously the compiler can't see it.

The Pinocchio bindings' bindings/utils/std-aligned-vector.hpp header (or even std-vector.hpp) needs to be included after the Pinocchio fwd header which defines the struct. I think these headers maybe used to include <pinocchio/fwd.hpp> before but I'm not sure. The include order before the change looks a bit odd though: maybe the pre-commit bot reordered the includes by alphabetical order?

…fter croco frames header

+ ensures pinocchio/fwd.hpp header included beforehand
@ManifoldFR ManifoldFR marked this pull request as ready for review July 11, 2023 10:44
@ManifoldFR ManifoldFR changed the title [python/multibody] change include order in frames.cpp [python/multibody] fix include order in frames.cpp Jul 11, 2023
@cmastalli cmastalli merged commit ff5249f into loco-3d:devel Jul 11, 2023
nim65s added a commit to nim65s/robotpkg that referenced this pull request Jan 27, 2024
Upstream changes:

    ## [2.0.2] - 2023-12-07

    * Added nu, ng, and nh setters for Python bindings in loco-3d/crocoddyl#1192
    * Added CHANGELOG.md in loco-3d/crocoddyl#1188
    * Supported nu==0 in actuation models in loco-3d/crocoddyl#1188
    * Included Python bindings for Crocoddyl exceptions by cmastalli in loco-3d/crocoddyl#1186
    * Updated cmake submodule update by jcarpentier in loco-3d/crocoddyl#1186
    * Fixed getters for contraints bounds by skleff1994 in loco-3d/crocoddyl#1180
    * Extended solver abstract and callbacks for arbitrary solvers by cmastalli in loco-3d/crocoddyl#1179
    * Fixed the check of pair_id in collision residual by ArthurH91 in loco-3d/crocoddyl#1178
    * Exploited control-residual structure when computing Lu, Luu by cmastalli in loco-3d/crocoddyl#1176
    * Added LWA fram convention and introduced different axis for 1d contacts by skleff1994 in loco-3d/crocoddyl#1172
    * Python bindings for setting control bounds by cmastalli in loco-3d/crocoddyl#1171
    * Fixed missed scalar in cost sum and activation data by cmastalli in loco-3d/crocoddyl#1165
    * Added actuation unit tests by cmastalli in loco-3d/crocoddyl#1161
    * Introduced method for obtaining the dimension of floating-bases by cmastalli in loco-3d/crocoddyl#1160
    * Fixed set_reference in state residual by cmastalli in loco-3d/crocoddyl#1158
    * Enabled CONDA CI jobs with CppADCodeGen by cmastalli in loco-3d/crocoddyl#1156
    * Added other CI jobs by cmastalli in loco-3d/crocoddyl#1152
    * Fixed compiltation issue when building with CppADCodeGen by cmastalli in loco-3d/crocoddyl#1151
    * Fixed include order used in frames.cpp by ManifoldFR in loco-3d/crocoddyl#1150
nim65s added a commit to nim65s/robotpkg that referenced this pull request Jan 29, 2024
Upstream changes:

    ## [2.0.2] - 2023-12-07

    * Added nu, ng, and nh setters for Python bindings in loco-3d/crocoddyl#1192
    * Added CHANGELOG.md in loco-3d/crocoddyl#1188
    * Supported nu==0 in actuation models in loco-3d/crocoddyl#1188
    * Included Python bindings for Crocoddyl exceptions by cmastalli in loco-3d/crocoddyl#1186
    * Updated cmake submodule update by jcarpentier in loco-3d/crocoddyl#1186
    * Fixed getters for contraints bounds by skleff1994 in loco-3d/crocoddyl#1180
    * Extended solver abstract and callbacks for arbitrary solvers by cmastalli in loco-3d/crocoddyl#1179
    * Fixed the check of pair_id in collision residual by ArthurH91 in loco-3d/crocoddyl#1178
    * Exploited control-residual structure when computing Lu, Luu by cmastalli in loco-3d/crocoddyl#1176
    * Added LWA fram convention and introduced different axis for 1d contacts by skleff1994 in loco-3d/crocoddyl#1172
    * Python bindings for setting control bounds by cmastalli in loco-3d/crocoddyl#1171
    * Fixed missed scalar in cost sum and activation data by cmastalli in loco-3d/crocoddyl#1165
    * Added actuation unit tests by cmastalli in loco-3d/crocoddyl#1161
    * Introduced method for obtaining the dimension of floating-bases by cmastalli in loco-3d/crocoddyl#1160
    * Fixed set_reference in state residual by cmastalli in loco-3d/crocoddyl#1158
    * Enabled CONDA CI jobs with CppADCodeGen by cmastalli in loco-3d/crocoddyl#1156
    * Added other CI jobs by cmastalli in loco-3d/crocoddyl#1152
    * Fixed compiltation issue when building with CppADCodeGen by cmastalli in loco-3d/crocoddyl#1151
    * Fixed include order used in frames.cpp by ManifoldFR in loco-3d/crocoddyl#1150
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants