-
Notifications
You must be signed in to change notification settings - Fork 31
Fix all crashing tests for emscripten build #523
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
Conversation
Through #483 some tests were "failing" and some were "crashing". By crash I mean you would see the following while building
This pr fixes all "crashing" tests, which means i) Either they now pass But atleast they run. Crashing is a bad sign as that means we aren't able to build the wasm module (whatever test_XX.wasm is generated when we run a test) After this PR, we can proceed with going about fixing a test or a couple of tests through each PR and have atomic improvements. Fixing them is more approachable now as they now fail instead of crashing and we have an error message to look into ! EDIT : And on top of that we can confirm if something is really failing by running the test case in lite. For eg We can replicate the exact test in lite and check it out (unfortunately return nullptr when it shouldn't be null) |
void ReportInvokeStart(void* result, ArgList args, void* self) const; | ||
void ReportInvokeStart(void* object, unsigned long nary, | ||
CPPINTEROP_API void ReportInvokeStart(void* result, ArgList args, void* self) const; | ||
CPPINTEROP_API void ReportInvokeStart(void* object, unsigned long nary, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Needed for tests in FunctionReflectionTest
like JitCallAdvanced
, GetFunctionCallWrapper
etc cause otherwise we see
error: undefined symbol: _ZNK3Cpp7JitCall17AreArgumentsValidEPvNS0_7ArgListES1_ (referenced by root reference (e.g. compiled C/C++ code))
warning: To disable errors for undefined symbols use `-sERROR_ON_UNDEFINED_SYMBOLS=0`
warning: __ZNK3Cpp7JitCall17AreArgumentsValidEPvNS0_7ArgListES1_ may need to be added to EXPORTED_FUNCTIONS if it arrives from a system library
error: undefined symbol: _ZNK3Cpp7JitCall17ReportInvokeStartEPvNS0_7ArgListES1_ (referenced by root reference (e.g. compiled C/C++ code))
warning: __ZNK3Cpp7JitCall17ReportInvokeStartEPvNS0_7ArgListES1_ may need to be added to EXPORTED_FUNCTIONS if it arrives from a system library
error: undefined symbol: _ZNK3Cpp7JitCall17ReportInvokeStartEPvmi (referenced by root reference (e.g. compiled C/C++ code))
warning: __ZNK3Cpp7JitCall17ReportInvokeStartEPvmi may need to be added to EXPORTED_FUNCTIONS if it arrives from a system library
Error: Aborting compilation due to previous errors
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #523 +/- ##
=======================================
Coverage 72.71% 72.71%
=======================================
Files 9 9
Lines 3618 3618
=======================================
Hits 2631 2631
Misses 987 987
🚀 New features to boost your workflow:
|
Not sure if the clang-format suggested changes should be respected here or not. |
Here's a summary of what happens
|
@anutosh491 Please fix the issue raised by the clang format workflow. |
cc @mcbarton I removed I usually keep So yeah got rid of it as I think you're looking minimal changes here. And I've taken care of this review of yours #523 (comment) too . |
@mcbarton so I guess the only change you need here now is an explanation behind the flags ? |
@anutosh491 The explanation of the flags is something I would need. I would also like the publics turned to private (I know you don't think its needed, but I found things being public caused me issues when working out my automated wasm tests PR). I have found locally running your fork that the fexceptions and assertion flags to not be necessary to fix the crashing tests so I would like these removed too. I know the STACK_SIZE and the INITIAL_MEMORY don't need to be anywhere near the values they are from local testing. I found that STACK_SIZE=4mb and INITIAL_MEMORY=16mb are the small enough for everything not to crash. After these changes have been made I will just double check locally that I see this error you mention here #523 (comment) . After this we should be in a position for me to approve the PR. |
Okay I am addressing some of the above things.
Anyways I hope we're still sticking to Vassil's idealogy of "Better is enemy of good" I think these summary of results here is very good (#523 (comment)) I am not keen on making any more improvements on this PR after this. If you see any improvements, you can raise them later. My only concern here is to fix the crashing tests. |
24037ef
to
05b6c46
Compare
Description
Go through comment #483 (comment)
Type of change
Please tick all options which are relevant.
Testing
Please describe the test(s) that you added and ran to verify your changes.
Checklist