jsifier: Add explicit error messages for missing/native alias targets #19042
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Followup to #19033.
Updating the
test_closure_full_js_libraryto include webgl2 caused a lot ofJSC_REFERENCE_BEFORE_DECLAREclosure errors.This is because we had JS aliases who's target was defined both in JS and in native code. In this case the jsifier chooses not to include the JS version but the location where the aliases are declared in the output comes before the native symbols are declared.
To fix this I removed the native aliases from webgl2.c, since these exact same aliases already exist in library_webgl.js.
This think is also more correct since it means that the
emscripten_xxwrappers are defined fully in JS and are not effected by definitions in native code (which is the whole point of them I believe).