emscripten-core / emscripten-core/emscripten

WebAssembly and Exception Handling (throw)

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

Description

Hey all,

After getting clang-repl running in the browser, I worked on integration it with jupyterlite. Xeus-cpp, a C++ Jupyter kernel provides a way to integrate it. Here is a static link that can be used to try C++ completely in the browser (https://compiler-research.org/xeus-cpp/lab/index.html) . An example notebook `xeus-cpp-lite-demo.ipynb` has been provided to show what all can be acheived.

Coming back to the issue. I see we can't run `throw` (or a try catch blocking involving throw) while running clang-repl in the browser.

![Image](https://github.com/user-attachments/assets/e6316eef-6a70-4a38-9c5b-319c3ab0f76c)

The debug logs tell me that this comes from dlopen

![Image](https://github.com/user-attachments/assets/4d4c7af3-5b12-4175-ad0e-988663d9215f)

All this can be tried through the static link above.

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.