diff --git a/algebra/TinyVector.hpp b/algebra/TinyVector.hpp
index d2a30abf1930b35b044b9bc377f6fe89518aed1d..95dfda71257c53d514ce2f5dd89c647b6c382f4b 100644
--- a/algebra/TinyVector.hpp
+++ b/algebra/TinyVector.hpp
@@ -112,6 +112,7 @@ public:
   KOKKOS_INLINE_FUNCTION
   TinyVector& operator=(const ZeroType& z)
   {
+    static_assert(std::is_arithmetic<T>(),"Cannot assign 'zero' value for non-arithmetic types");
     for (size_t i=0; i<N; ++i) {
       m_values[i] = 0;
     }
@@ -147,6 +148,7 @@ public:
   KOKKOS_INLINE_FUNCTION
   TinyVector(const ZeroType& z)
   {
+    static_assert(std::is_arithmetic<T>(),"Cannot construct from 'zero' value for non-arithmetic types");
     for (size_t i=0; i<N; ++i) {
       m_values[i] = 0;
     }