emscripten-core / emscripten-core/emscripten

Asyncify ignore & debug flag

Open
#11,736 4 comments 0 reactions 0 assignees View on GitHub
asyncify
Dominant language
C++
Stars
27.6k
Forks
3.6k
Avg merge
1d 1h
Merged PRs (30d)
105

Description

**Edit**: for point two `--profiling` seems to be helping digging out the issue, but I'm still a bit confused as to why debugging flag would make things work.

I am currently working on a codebase where I `ASYNCIFY_IGNORE_INDIRECT` then `ASYNC_ADD` the functions/methods needed. This works as intended when `-g3` or higher is set, but fails with:

```
(index):1 exception thrown: RuntimeError: function signature mismatch,RuntimeError: function signature mismatch
at emscripten::internal::Invoker::invoke(void (*)(unsigned int), unsigned int) (http://localhost:8000/byuu-web.wasm:wasm-function[3898]:0x23f8a5)
at ret. (http://localhost:8000/byuu-web.js:9126:35)
at Object.finishContextSwitch (http://localhost:8000/byuu-web.js:9309:11)
at Object.trampoline (http://localhost:8000/byuu-web.js:9283:20)
at Object.ret. [as dynCall_v] (http://localhost:8000/byuu-web.js:9138:30)
at browserIterationFunc (http://localhost:8000/byuu-web.js:5492:30)
at Object.runIter (http://localhost:8000/byuu-web.js:5605:13)
at Browser_mainLoop_runner (http://localhost:8000/byuu-web.js:5544:26)
```

My questions are:

1. Is it possible that Asyncify relies on debugging information?
2. What would be the best method to go about to investigate these kind of issues?

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.