Skip to content
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

Do not catch foreign exceptions in Pony try blocks #2466

Merged
merged 1 commit into from
Jan 26, 2018

Conversation

Praetonus
Copy link
Member

@Praetonus Praetonus commented Jan 5, 2018

No description provided.

@Praetonus Praetonus added the changelog - fixed Automatically add "Fixed" CHANGELOG entry on merge label Jan 5, 2018
@Praetonus Praetonus force-pushed the fix-2455 branch 3 times, most recently from 6bf9913 to 3a5b892 Compare January 9, 2018 15:21
@Praetonus Praetonus added the do not merge This PR should not be merged at this time label Jan 9, 2018
@Praetonus
Copy link
Member Author

This has some issues on windows. If a C++ exception is thrown and there is a Pony frame between the throwing location and the C++ catch frame, the exception won't be caught by the C++ catch frame. I'm not a windows expert so I don't really know what's wrong here.

@Praetonus Praetonus added windows help wanted Extra attention is needed labels Jan 9, 2018
@sylvanc
Copy link
Contributor

sylvanc commented Jan 24, 2018

Decided on the sync to document this as not working yet on Windows, but merge with the test disabled on Windows once the Travis build passes.

This doesn't work on windows. The foreign code doesn't catch foreign
exceptions if they've traversed a Pony frame. This is suspected to be
related to the way SEH and LLVM exception code generation interact.
@Praetonus Praetonus removed do not merge This PR should not be merged at this time help wanted Extra attention is needed changelog - fixed Automatically add "Fixed" CHANGELOG entry on merge windows labels Jan 26, 2018
@Praetonus
Copy link
Member Author

I've disabled the test on windows and added a manual changelog entry.

@Praetonus
Copy link
Member Author

CI is passing, merging.

@Praetonus Praetonus merged commit 29c9319 into ponylang:master Jan 26, 2018
@Praetonus Praetonus deleted the fix-2455 branch January 26, 2018 19:13
dipinhora pushed a commit to dipinhora/ponyc that referenced this pull request Jun 5, 2018
This doesn't work on windows. The foreign code doesn't catch foreign
exceptions if they've traversed a Pony frame. This is suspected to be
related to the way SEH and LLVM exception code generation interact.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants