aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--scripts/geneval.lua1
-rw-r--r--src/nvim/eval.c4
2 files changed, 3 insertions, 2 deletions
diff --git a/scripts/geneval.lua b/scripts/geneval.lua
index b1ba76296c..b17ecb1a0c 100644
--- a/scripts/geneval.lua
+++ b/scripts/geneval.lua
@@ -41,6 +41,7 @@ funcsdata:close()
gperfpipe:write([[
%language=ANSI-C
%global-table
+%readonly-tables
%define initializer-suffix ,0,0,NULL,NULL
%define word-array-name functions
%define hash-function-name hash_internal_func_gperf
diff --git a/src/nvim/eval.c b/src/nvim/eval.c
index d7feed8bfd..c02d172458 100644
--- a/src/nvim/eval.c
+++ b/src/nvim/eval.c
@@ -6009,7 +6009,7 @@ char_u *get_expr_name(expand_T *xp, int idx)
/// @param[in] name Name of the function.
///
/// Returns pointer to the function definition or NULL if not found.
-static VimLFuncDef *find_internal_func(const char *const name)
+static const VimLFuncDef *find_internal_func(const char *const name)
FUNC_ATTR_WARN_UNUSED_RESULT FUNC_ATTR_PURE FUNC_ATTR_NONNULL_ALL
{
size_t len = strlen(name);
@@ -6378,7 +6378,7 @@ call_func(
}
} else {
// Find the function name in the table, call its implementation.
- VimLFuncDef *const fdef = find_internal_func((const char *)fname);
+ const VimLFuncDef *const fdef = find_internal_func((const char *)fname);
if (fdef != NULL) {
if (argcount < fdef->min_argc) {
error = ERROR_TOOFEW;