Report a bug
If you spot a problem with this page, click here to create a Bugzilla issue.
Improve this page
Quickly fork, edit online, and submit a pull request for this page. Requires a signed-in GitHub account. This works well for small changes. If you'd like to make larger changes you may want to consider using a local clone.


Written in the D programming language. Implementation of exception handling support routines for Posix and Win64.
Distributed under the Boost Software License 1.0. (See accompanying file LICENSE)
Walter Bright, Sean Kelly
immutable(FuncTable)* __eh_finddata(void* address);
Given address that is inside a function, figure out which function it is in. Return DHandlerTable if there is one, NULL if not.
size_t __eh_find_caller(size_t regbp, size_t* pretaddr);
Given EBP, find return address to caller, and caller's EBP.

Input regbp Value of EBP for current function *pretaddr Return address

Output *pretaddr return address to caller

caller's EBP
void _d_throwc(Throwable h);
Throw a D object.