diff --git a/py/runtime.c b/py/runtime.c
index d367530ccc0fa29c1f3ff4fa15419756309ec7a4..01fd92fcffe451592bd45a29b4707f39a3d9cde6 100644
--- a/py/runtime.c
+++ b/py/runtime.c
@@ -1546,7 +1546,7 @@ py_obj_t rt_iternext(py_obj_t o_in) {
     }
 }
 
-void *rt_fun_table[RT_F_NUMBER_OF] = {
+const void *const rt_fun_table[RT_F_NUMBER_OF] = {
     rt_load_const_str,
     rt_load_name,
     rt_load_global,
diff --git a/py/runtime.h b/py/runtime.h
index e676f14c0809f0d99f61317f61c7ff0184176858..86d59f24e5423ffc1688ae27d90133a3c51f2809 100644
--- a/py/runtime.h
+++ b/py/runtime.h
@@ -76,7 +76,7 @@ typedef enum {
     RT_F_NUMBER_OF,
 } rt_fun_kind_t;
 
-extern void *rt_fun_table[RT_F_NUMBER_OF];
+extern const void *const rt_fun_table[RT_F_NUMBER_OF];
 
 typedef machine_ptr_t py_obj_t; // must be of pointer size
 typedef py_obj_t (*py_fun_0_t)();