| SET_CONSTRAINT_HANDLER_S(3C) | Standard C Library Functions | SET_CONSTRAINT_HANDLER_S(3C) |
set_constraint_handler_s,
abort_handler_s,
ignore_handler_s —
runtime-constraint handling
Standard C Library (libc, -lc)
#define __STDC_WANT_LIB_EXT1__ 1
#include
<stdlib.h>
constraint_handler_t
set_constraint_handler_s(constraint_handler_t
handler);
void
abort_handler_s(const char *restrict
msg, void *restrict ptr, errno_t
error);
void
ignore_handler_s(const char *restrict
msg, void *restrict ptr, errno_t
error);
The
set_constraint_handler_s()
function sets the runtime-constraint handler to be
handler.
The runtime-constraint handler is the callback function invoked when a library function detects a runtime-constraint violation, having the following prototype:
void (*constraint_handler_t)(const char *restrict msg,
void *restrict ptr, errno_t error);
The arguments are as follows:
NULL pointer.Only the most recent handler
registered with
set_constraint_handler_s()
is called when a runtime-constraint violation occurs.
The implementation has a default
constraint handler that is used if no calls to the
set_constraint_handler_s()
function have been made. If the handler argument to
set_constraint_handler_s() is a
NULL pointer, the default handler becomes the
current constraint handler.
The
abort_handler_s()
and ignore_handler_s() are the standard-defined
runtime-constraint handlers provided by the C library.
The
abort_handler_s()
function writes the error message including the msg to
stderr and calls the
abort(3C) function. The
abort_handler_s() is currently the default
runtime-constraint handler.
The
ignore_handler_s()
simply returns to its caller.
The set_constraint_handler_s() function
returns a pointer to the previously registered handler, or
NULL if none was previously registered.
The abort_handler_s() function does not
return to its caller.
The ignore_handler_s() function returns no
value.
The set_constraint_handler_s() function
conforms to ISO/IEC 9899:2011
(“ISO C11”).
| August 12, 2017 | OmniOS |