Name

ECL_BLOCK_BEGIN — C macro for block

Synopsis

ECL_BLOCK_BEGIN(env,code) {
} ECL_BLOCK_END;

Description

ECL_BLOCK_BEGIN establishes a block named code that becomes visible for the Common Lisp code. This block can be used then as a target for cl_return.

env must be the value of the current Common Lisp environment, obtained with ecl_process_env.

The C/C++ program has to ensure that the code in ECL_BLOCK_END gets executed, avoiding a direct exit of the block via goto or a C/C++ return.