Search Issue Tracker

By Design

Votes

0

Found in

2019.4

2019.4.8f1

2020.1

2020.2

Issue ID

1272870

Regression

No

[WebGL] Builds fail when Enable Exceptions is set to Full With Stacktrace

WebGL

-

Reproduction steps:
1. Open the user's attached project
2. Make sure that Enable Exceptions is set to Full With Stacktrace in Player Settings
3. Try building for WebGL

Expected result: Build succeeds with no errors
Actual result: Build fails with Emscripten_Win errors

Reproducible with: 2019.4.9f1, 2020.1.4f1, 2020.2.0b1
Couldn't test with: 2018.4 (errors after downgrade)

Note: The issue does not reproduce on a new empty project

  1. Resolution Note (2020.2.X):

    Resolving this issue since a work-around was provided and there is little we can do about it until we switch the new LLVM WASM compiler.

    The work-around was to change the users code to generate smaller C# functions by breaking up the Dictionary initialization into smaller sub-function calls. C++ compilers have a hard time compiling very large functions when exception handling is used, due to how it has to wrap every line to catch any potential exceptions. This exception wrapping causes the current version of Emscripten to crash due to the way it compiles exceptions. The new LLVM WASM backend compiler will not have this same issue.

Add comment

Log in to post comment

All about bugs

View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.