| 310 | } |
| 311 | |
| 312 | int VMScriptFunction::FirstScriptCall(VMFunction *func, VMValue *params, int numparams, VMReturn *ret, int numret) |
| 313 | { |
| 314 | // [Player701] Check that we aren't trying to call an abstract function. |
| 315 | // This shouldn't happen normally, but if it does, let's catch this explicitly |
| 316 | // rather than let GZDoom crash. |
| 317 | if (func->VarFlags & VARF_Abstract) |
| 318 | { |
| 319 | ThrowAbortException(X_OTHER, "attempt to call abstract function %s.", func->PrintableName); |
| 320 | } |
| 321 | |
| 322 | static_cast<VMScriptFunction*>(func)->JitCompile(); |
| 323 | |
| 324 | return func->ScriptCall(func, params, numparams, ret, numret); |
| 325 | } |
| 326 | |
| 327 | int VMNativeFunction::NativeScriptCall(VMFunction *func, VMValue *params, int numparams, VMReturn *returns, int numret) |
| 328 | { |
nothing calls this directly
no test coverage detected