int luaL_argerror (lua_State *L, int narg, const char *extramsg);

Raises an error with the following message, where func is retrieved from the call stack:

     bad argument # to  ()

This function never returns, but it is an idiom to use it in C functions as return luaL_argerror(args).