-
Notifications
You must be signed in to change notification settings - Fork 3.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Getting "Assertion failed: old table entries must remain the same when linking with multiple dynamic libraries" #11458
Comments
Commenting this line assert make the project work though. |
How are you building your side modules? Can you provide a full example perhaps? Are you using the |
You are perfectly right, my issue lacks of context. Sorry for that. My side modules are compiled with the following flags : And the main module with : All compilations have been made with -fPIC. All dynamic libraries are linked with Module.dynamicLibraries. I have got 4 side modules. Adding one of them work, but adding any of two of them or more causes this line to raise an assert. Commenting it makes the program working though. |
Interesting .. perhaps we don't have enough testing with multiple side modules. |
If 2 side modules are loaded, A and B, and loadModule is called on A, then B, then it is possible that if instantiation is done async here then the postInstantiation() callbacks may happen in the reverse order, racily. If that happens, the extra assertions on the table not changing can fire incorrectly - the other parts of the table will appear to have changed meanwhile, but for valid reasons. Fixes #13054 Fixes #11458
Hi,
Setting dynamicLibraries to more than one .wasm files always provide this error :
whatever .wasm files are used.
This is cause by this assert in the generated .js file :
The last index of oldTable[i] is always null although table.get(i) has a value.
The text was updated successfully, but these errors were encountered: