MCPcopy Create free account
hub / github.com/Serial-Studio/Serial-Studio / luaD_seterrorobj

Function luaD_seterrorobj

lib/lua/src/ldo.c:91–112  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

89
90
91void luaD_seterrorobj (lua_State *L, int errcode, StkId oldtop) {
92 switch (errcode) {
93 case LUA_ERRMEM: { /* memory error? */
94 setsvalue2s(L, oldtop, G(L)->memerrmsg); /* reuse preregistered msg. */
95 break;
96 }
97 case LUA_ERRERR: {
98 setsvalue2s(L, oldtop, luaS_newliteral(L, "error in error handling"));
99 break;
100 }
101 case LUA_OK: { /* special case only for closing upvalues */
102 setnilvalue(s2v(oldtop)); /* no error message */
103 break;
104 }
105 default: {
106 lua_assert(errorstatus(errcode)); /* real error */
107 setobjs2s(L, oldtop, L->top.p - 1); /* error message on current top */
108 break;
109 }
110 }
111 L->top.p = oldtop + 1;
112}
113
114
115l_noret luaD_throw (lua_State *L, int errcode) {

Callers 5

luaE_resetthreadFunction · 0.85
prepcallclosemthFunction · 0.85
finishpcallkFunction · 0.85
lua_resumeFunction · 0.85
luaD_pcallFunction · 0.85

Calls 1

GFunction · 0.50

Tested by

no test coverage detected