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

Making the most of exception stacks #29792

Closed
5 of 11 tasks
c42f opened this issue Oct 24, 2018 · 1 comment
Closed
5 of 11 tasks

Making the most of exception stacks #29792

c42f opened this issue Oct 24, 2018 · 1 comment
Labels
domain:error handling Handling of exceptions by Julia or the user

Comments

@c42f
Copy link
Member

c42f commented Oct 24, 2018

Now that #28878 has been merged, let's consider how to make the most of it. Largely, that PR added the exception stack runtime and addressed several bugs in the previous system, but left aside some other possible benefits such as improved error reporting. Here's a list of follow-on features and improvements which have crossed my mind at one time or another.

Base / stdlib

Documentation

  • Consider whether the manual should discourage rethrow(exc), except in special circumstances. (If the stacks print nicely enough, are there any remaining reasons to use rethrow(exc) at all?)

Runtime

  • Task cleanup: Remove task.backtrace which now duplicates the storage in task->excstack (is this considered a public API? If so, consider getproperty?)
  • Replace panic error dumping (eg, jl_static_show(JL_STDERR, jl_current_exception())) with a dump of the full exception stack.
  • jl_current_exception() — Asses other uses; consider whether they should be rewritten.
  • Expose full exception stack to embedding API rather than just previous_exception?
  • Teach static analyzer about rooting of the return value from jl_current_exception() if possible (and add jl_excstack_t as a tracked type). Would be helpful to have Import ClangSA.jl source tree #28838 merged first.

@vtjnash

@ararslan ararslan added the domain:error handling Handling of exceptions by Julia or the user label Oct 24, 2018
@vtjnash
Copy link
Sponsor Member

vtjnash commented Feb 3, 2024

AFAIK, the necessary and useful bits here are now done, and the issue is no longer useful

@vtjnash vtjnash closed this as completed Feb 3, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
domain:error handling Handling of exceptions by Julia or the user
Projects
None yet
Development

No branches or pull requests

3 participants