Hi,
Trying to debug a third-party application which I am attempting to convert
to emscripten.
Encountering a confusing 'Index out of bounds' error thrown from the
JavaScript output of emscripten, specifically in the following code:
function invoke_iiiiii(index,a1,a2,a3,a4,a5) {
var sp = stackSave();
try {
return wasmTable.get(index)(a1,a2,a3,a4,a5);
} catch(e) {
stackRestore(sp);
if (e !== e+0 && e !== 'longjmp') throw e;
_setThrew(1, 0);
}
}
The call to the function returned from wasmTable.get() throws the error. (I
presume this is a call into WASM).
Not sure what index is out of bounds, as the value of 'index' is less than
the length of wasmTable, so I'm guessing that it's something in the C++.
However the point at which the C++ crashes out with this error is not code
which is attempting to do any indexing.
It occurs when a given C++ function (BundleAdjust()) returns, to another
C++ function (BundleAdjustAll()).
As in, an error log message (written to stderr) at the end of
BundleAdjust() does appear in the browser log, but another error log
message in BundleAdjustAll(), immediately following the call to
BundleAdjust(), does not.
Any suggestions for a debug strategy on this? In other words, is it likely
to be due to an index-out-of-bounds error somewhere in the compiled C++
code?
Thanks.
--
You received this message because you are subscribed to the Google Groups
"emscripten-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/emscripten-discuss/6f3fe0bd-a766-4a41-9305-5437c406dbacn%40googlegroups.com.