Swap the order of definition of IsValidParameterDimensionSequence.
This triggered a compiler error on clang + linux.
Change-Id: I8628c1b342980c50792f664d04d37465c17bf618
diff --git a/include/ceres/internal/parameter_dims.h b/include/ceres/internal/parameter_dims.h
index 79d0680..2272e8d 100644
--- a/include/ceres/internal/parameter_dims.h
+++ b/include/ceres/internal/parameter_dims.h
@@ -41,6 +41,10 @@
// Checks, whether the given parameter block sizes are valid. Valid means every
// dimension is bigger than zero.
+constexpr bool IsValidParameterDimensionSequence(integer_sequence<int>) {
+ return true;
+}
+
template <int N, int... Ts>
constexpr bool IsValidParameterDimensionSequence(
integer_sequence<int, N, Ts...>) {
@@ -49,10 +53,6 @@
integer_sequence<int, Ts...>());
}
-constexpr bool IsValidParameterDimensionSequence(integer_sequence<int>) {
- return true;
-}
-
// Helper class that represents the parameter dimensions. The parameter
// dimensions are either dynamic or the sizes are known at compile time. It is
// used to pass parameter block dimensions around (e.g. between functions or