@@ -68,18 +68,20 @@ var i$ffiWrap = function(fid,oldbase,myoldbase) {
68 var res = fid;
68 var res = fid;
70 for(var i = 0; i < (arguments.length ? arguments.length : 1); ++i) {
70 for(var i = 0; i < (arguments.length ? arguments.length : 1); ++i) {
71+ while (res instanceof i$CON) {
71− i$valstack_top += 1;
72+ i$valstack_top += 1;
72− i$valstack[i$valstack_top] = res;
73+ i$valstack[i$valstack_top] = res;
73− i$valstack[i$valstack_top + 1] = arguments[i];
74+ i$valstack[i$valstack_top + 1] = arguments[i];
74− i$SLIDE(2);
75+ i$SLIDE(2);
75− i$valstack_top = i$valstack_base + 2;
76+ i$valstack_top = i$valstack_base + 2;
76− i$CALL(_idris__123_APPLY0_125_,[oldbase])
77+ i$CALL(_idris__123_APPLY0_125_,[oldbase])
77− while (i$callstack.length) {
78+ while (i$callstack.length) {
78− var func = i$callstack.pop();
79+ var func = i$callstack.pop();
79− var args = i$callstack.pop();
80+ var args = i$callstack.pop();
80− func.apply(this,args);
81+ func.apply(this,args);
85 i$callstack = i$vm.callstack;
87 i$callstack = i$vm.callstack;