не раз возвращаюсь к этому топику, и не могу добиться результата. вот к примету со структурой (возврат более 2 и более значений из функции.) допустим, необходимо вернуть не одно число, а координаты:
пилот
--lua
local ffi = require("ffi")
local lib = ffi.load("findimg.dll")
ffi.cdef[[
    struct my_struct{
      int x;
      int y;
   };
   __cdecl const struct my_struct* testf(int x, int y);
]]
local result = lib.testf(10,20)
log(result.x, result.y)
dll
type
  FRes3 = record
  x,y: integer;
  end;
{....}
function testf (a,b:integer):FRes3; cdecl;
var
   r:FRes3;
begin
   r.x := a;
   r.y := b;
   testf := r;
end;
данные не возвращаются в таком исполнении. что не так?