diff --git a/include/bodydynamics/factor/factor_angular_momentum.h b/include/bodydynamics/factor/factor_angular_momentum.h
index 7a28b1204a11cfad3decbae3e87a75eb32a0ed8a..9d209bf5c7abbb13c1133fcd964ab7df2e7f5f5b 100644
--- a/include/bodydynamics/factor/factor_angular_momentum.h
+++ b/include/bodydynamics/factor/factor_angular_momentum.h
@@ -128,7 +128,7 @@ inline bool FactorAngularMomentum::residual(const MatrixBase<D1>& _L,
 
     typedef typename D4::Scalar T;
 
-    auto            w_real = measurement_ang_vel_ - _I.segment<3>(3);
+    Matrix<T, 3, 1> w_real = measurement_ang_vel_ - _I.template segment<3>(3);
     const auto&     Lx     = _L(0);
     const auto&     Ly     = _L(1);
     const auto&     Lz     = _L(2);