diff --git a/gtsam/base/Manifold.h b/gtsam/base/Manifold.h index 6746236be..b30edb3df 100644 --- a/gtsam/base/Manifold.h +++ b/gtsam/base/Manifold.h @@ -169,7 +169,8 @@ struct FixedDimension { }; /// Helper class to construct the product manifold of two other manifolds, M1 and M2 -/// Assumes nothing except manifold structure from M1 and M2 +/// Assumes nothing except manifold structure for M1 and M2, and the existence +/// of default constructor for those types template class ProductManifold: public std::pair { BOOST_CONCEPT_ASSERT((IsManifold)); diff --git a/gtsam/nonlinear/Values.h b/gtsam/nonlinear/Values.h index d3c114657..633e0dd06 100644 --- a/gtsam/nonlinear/Values.h +++ b/gtsam/nonlinear/Values.h @@ -32,6 +32,7 @@ #ifdef __GNUC__ #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Wunused-variable" +#pragma GCC diagnostic ignored "-Wunused-local-typedef" #endif #include #ifdef __GNUC__ diff --git a/gtsam/slam/expressions.h b/gtsam/slam/expressions.h index e81c76bd6..e23aa334b 100644 --- a/gtsam/slam/expressions.h +++ b/gtsam/slam/expressions.h @@ -47,12 +47,12 @@ typedef Expression Cal3Bundler_; /// Expression version of PinholeBase::Project inline Point2_ project(const Point3_& p_cam) { - Point2 (*f)(const Point3&, OptionalJacobian<2, 3>) = &PinholeBase::Project; + Point2_::UnaryFunction::type f = &PinholeBase::Project; return Point2_(f, p_cam); } inline Point2_ project(const Unit3_& p_cam) { - Point2 (*f)(const Unit3&, OptionalJacobian<2, 2>) = &PinholeBase::Project; + Point2_::UnaryFunction::type f = &PinholeBase::Project; return Point2_(f, p_cam); }