diff --git a/cpp/spectrum_function.hpp b/cpp/spectrum_function.hpp
index ae33f860ad738b270b014d8821ccdf8544de1265..fcc729ff4763f2a417b8da20a4e5dc0aab31110d 100644
--- a/cpp/spectrum_function.hpp
+++ b/cpp/spectrum_function.hpp
@@ -4,7 +4,7 @@
 #include "kspace.hpp"
 
 template <field_backend be,
-          kspace_dealias type dt>
+          kspace_dealias_type dt>
 class spectrum_function
 {
     private:
@@ -14,7 +14,7 @@ class spectrum_function
     public:
         spectrum_function(
                 const kspace<be, dt> *KK,
-                const std::vector &source_values):
+                const std::vector<double> &source_values):
             kk(KK),
             values(source_values)
         {
@@ -29,4 +29,4 @@ class spectrum_function
             assert(index < this->values.size());
             return this->values[index];
         }
-}
+};