diff --git a/control/descriptor.c b/control/descriptor.c
index de7d216bdda0750193727395791c2fe9d3631479..c9d121c510e5dc404aa7671e1d8da31ab949b208 100644
--- a/control/descriptor.c
+++ b/control/descriptor.c
@@ -258,7 +258,7 @@ MORSE_desc_t* morse_desc_submatrix(MORSE_desc_t *descA, int i, int j, int m, int
 /*******************************************************************************
  *  Check for descriptor correctness
  **/
-int morse_desc_check(MORSE_desc_t *desc)
+int morse_desc_check(const MORSE_desc_t *desc)
 {
     if (desc == NULL) {
         morse_error("morse_desc_check", "NULL descriptor");
diff --git a/control/descriptor.h b/control/descriptor.h
index 2f6c6afe937bfe04fa8d93f6f4c4a26154d4ece4..37cb2b19a026eabd6e740673b8b6a2416a37bbce 100644
--- a/control/descriptor.h
+++ b/control/descriptor.h
@@ -63,7 +63,7 @@ MORSE_desc_t morse_desc_init_user(MORSE_enum dtyp, int mb, int nb, int bsiz,
                                   int (*get_rankof)( const MORSE_desc_t*, int, int ));
 MORSE_desc_t* morse_desc_submatrix(MORSE_desc_t *descA, int i, int j, int m, int n);
 
-int morse_desc_check    (MORSE_desc_t *desc);
+int morse_desc_check    (const MORSE_desc_t *desc);
 int morse_desc_mat_alloc(MORSE_desc_t *desc);
 int morse_desc_mat_free (MORSE_desc_t *desc);