aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/embind/embind.js4
-rw-r--r--tests/test_core.py1
2 files changed, 5 insertions, 0 deletions
diff --git a/src/embind/embind.js b/src/embind/embind.js
index c729aff5..bb979365 100644
--- a/src/embind/embind.js
+++ b/src/embind/embind.js
@@ -721,6 +721,10 @@ function requireFunction(signature, rawFunction) {
// - Function.prototype.bind generally benchmarks poorly relative to
// function objects, but using 'arguments' would confound JITs and
// possibly allocate.
+ var dc = asm['dynCall_' + signature];
+ if (dc === undefined) {
+ throwBindingError("No dynCall invoker for signature: " + signature);
+ }
fp = asm['dynCall_' + signature].bind(undefined, rawFunction);
} else {
fp = FUNCTION_TABLE[rawFunction];
diff --git a/tests/test_core.py b/tests/test_core.py
index 083d468a..2e2f5587 100644
--- a/tests/test_core.py
+++ b/tests/test_core.py
@@ -5655,6 +5655,7 @@ def process(filename):
def test_embind_2(self):
if self.emcc_args is None: return self.skip('requires emcc')
+ if self.run_name == 'asm2f': return self.skip('embind/asm.js not compatible with PRECISE_F32 because it changes signature strings')
if self.run_name == 'slow2asm': return self.skip('embind/asm.js requires fastcomp')
Building.COMPILER_TEST_OPTS += ['--bind', '--post-js', 'post.js']
open('post.js', 'w').write('''