--- a/ExternalLibraryFunction.st Mon Aug 22 11:27:28 2016 +0200
+++ b/ExternalLibraryFunction.st Tue Aug 23 11:46:56 2016 +0200
@@ -1834,6 +1834,7 @@
VOIDPTRFUNC fi = (VOIDPTRFUNC)codeAddress;
DOUBLEFUNC fd = (DOUBLEFUNC)codeAddress;
int rI[MAX_ARGS], dI[MAX_ARGS];
+ int i;
// sort the float/double args into a separate arglist and pass them AFTER the regular args.
// This is possible, because all doubles are passed in floating-pnt registers,
@@ -1851,8 +1852,8 @@
rI[nonDoubleI++] = argI;
}
}
- for (int i=doubleI; i<__numArgsIncludingThis; i++) dI[doubleI++] = 0;
- for (int i=nonDoubleI; i<__numArgsIncludingThis; i++) rI[nonDoubleI++] = 0;
+ for (i=doubleI; i<__numArgsIncludingThis; i++) dI[doubleI++] = 0;
+ for (i=nonDoubleI; i<__numArgsIncludingThis; i++) rI[nonDoubleI++] = 0;
DEBUGCODE_IF( @global(Verbose), {
printf("call %p with %d args (%d regular, %d double)\n", codeAddress, __numArgsIncludingThis,