private unsafe ulong CallImpl8(JSContext cx, JSValue func_obj, JSValue this_val, int argc, JSValue[] argv, JSCallFlags flags)
        {
            try
            {
                return(Call(cx, func_obj, this_val, argc, argv, flags).uint64);
            }
            catch (OutOfMemoryException)
            {
                return(JS_ThrowOutOfMemory(cx));
            }
            catch (Exception ex)
            {
                IntPtr opaque = JS_GetContextOpaque(cx);
                if (opaque != IntPtr.Zero)
                    ((QuickJSContext)GCHandle.FromIntPtr(opaque).Target).SetClrException(ex);

                fixed(byte *msg = Utils.StringToManagedUTF8(ex.Message.Replace("%", "%%")))
                {
                    return(JS_ThrowInternalError(cx, msg, __arglist()).uint64);
                }
            }
        }
 private unsafe ulong CallImpl8(JSContext ctx, JSValue func_obj, JSValue this_val, int argc, JSValue[] argv, JSCallFlags flags)
 {
     try
     {
         return(Call(ctx, func_obj, this_val, argc, argv, flags).uint64);
     }
     catch (OutOfMemoryException)
     {
         return(JS_ThrowOutOfMemory(ctx).uint64);
     }
     catch (Exception ex)
     {
         return(Utils.ReportException(ctx, ex).uint64);
     }
 }