diff --git a/src/TNL/Matrices/MatrixView.h b/src/TNL/Matrices/MatrixView.h
index b8adfd791cb9b8f069568aed8d31a6b94e0b45ee..467d02349609f18d080b16fba3f7ed46f9f32010 100644
--- a/src/TNL/Matrices/MatrixView.h
+++ b/src/TNL/Matrices/MatrixView.h
@@ -85,8 +85,10 @@ public:
    virtual Real getElement( const IndexType row,
                             const IndexType column ) const = 0;
 
+   __cuda_callable__
    const ValuesView& getValues() const;
 
+   __cuda_callable__
    ValuesView& getValues();
 
    /**
diff --git a/src/TNL/Matrices/MatrixView.hpp b/src/TNL/Matrices/MatrixView.hpp
index b2739ae1dc9c458ddfe093700159ee4328054e8f..275a2287043c1d1c1a7cbafb5dab03eba8485142 100644
--- a/src/TNL/Matrices/MatrixView.hpp
+++ b/src/TNL/Matrices/MatrixView.hpp
@@ -102,6 +102,7 @@ Index MatrixView< Real, Device, Index >::getColumns() const
 template< typename Real,
           typename Device,
           typename Index >
+__cuda_callable__
 const typename MatrixView< Real, Device, Index >::ValuesView&
 MatrixView< Real, Device, Index >::
 getValues() const
@@ -112,6 +113,7 @@ getValues() const
 template< typename Real,
           typename Device,
           typename Index >
+__cuda_callable__
 typename MatrixView< Real, Device, Index >::ValuesView& 
 MatrixView< Real, Device, Index >::
 getValues()