luaL_unref两次无害吗?

Is it harmless to luaL_unref twice?

当引用这样的值时:

lua_pushnumber(L, 1);
ref = luaL_ref(L, LUA_REGISTRYINDEX);

多次取消引用 ref 是否无害,或者这会导致问题吗?即对于上面的代码多次调用 luaL_unref(L, LUA_REGISTRYINDEX, ref) 是否无害,或者每个 luaL_ref 调用必须只有一个 luaL_unref 调用?

必须正好是一个luaL_unref
Lua 将未引用的索引保存在链表中,供 luaL_ref 稍后重用。
取消引用同一个索引两次将导致稍后从 luaL_ref 获取该索引两次。这意味着您将覆盖之前引用的数据。
参见 https://www.lua.org/source/5.4/lauxlib.c.html#luaL_unref