#include <stddef.h>
#include <setjmp.h>
#include <stdio.h>
#include <stdlib.h>
#include "cbl/assert.h"
#include "except.h"
Functions | |
void() | except_raise (const except_t *e, const char *file, int line) |
raises an exception and set its information properly. | |
Variables | |
except_frame_t * | except_stack = NULL |
stack for handling nested exceptions. |
void() except_raise | ( | const except_t * | e, | |
const char * | file, | |||
int | line | |||
) |
raises an exception and set its information properly.
EXCEPT_RAISE
and EXCEPT_RERAISE
macros call except_raise() with __FILE__
and __LINE__
predefined macros (and __func__
if C99 supported) for the file
and line
parameters. So in general there is little chance to call except_raise() directly in application code.
Possible exceptions: assert_exceptfail
Unchecked errors: foreign data structure given for e
[in] | e | exception to raise |
[in] | file | file name where exception occurred |
[in] | func | function name where exception occurred (if C99 supported) |
[in] | line | line number where exception occurred |