Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
erl_error(3)		      C	Library	Functions		  erl_error(3)

NAME
       erl_error - Error print routines.

DESCRIPTION
       This  module contains some error	printing routines taken	from "Advanced
       Programming in the UNIX Environment" by W. Richard Stevens.

       These functions are all called in the same manner as printf(), that is,
       with a string containing	format specifiers followed by a	list of	corre-
       sponding	arguments. All output from these functions is to stderr.

EXPORTS
       void erl_err_msg(FormatStr, ... )

	      Types:

		 const char *FormatStr;

	      The message provided by the caller is printed. This function  is
	      simply a wrapper for fprintf().

       void erl_err_quit(FormatStr, ...	)

	      Types:

		 const char *FormatStr;

	      Use  this	 function  when	a fatal	error has occurred that	is not
	      because of a system call.	The message provided by	the caller  is
	      printed and the process terminates with exit value 1. This func-
	      tion does	not return.

       void erl_err_ret(FormatStr, ... )

	      Types:

		 const char *FormatStr;

	      Use this function	after a	failed system call. The	 message  pro-
	      vided  by	 the caller is printed followed	by a string describing
	      the reason for failure.

       void erl_err_sys(FormatStr, ... )

	      Types:

		 const char *FormatStr;

	      Use this function	after a	failed system call. The	 message  pro-
	      vided  by	 the caller is printed followed	by a string describing
	      the reason for failure, and the  process	terminates  with  exit
	      value 1. This function does not return.

ERROR REPORTING
       Most  functions	in  Erl_Interface report failures to the caller	by re-
       turning some otherwise meaningless value	(typically NULL	or a  negative
       number).	 As  this  only	tells you that things did not go well, examine
       the error code in erl_errno if you want to  find	 out  more  about  the
       failure.

EXPORTS
       volatile	int erl_errno

	      erl_errno	is initially (at program startup) zero and is then set
	      by many Erl_Interface functions on failure to a  non-zero	 error
	      code to indicate what kind of error it encountered. A successful
	      function call can	change erl_errno (by calling some other	 func-
	      tion  that  fails),  but	no function does never set it to zero.
	      This means that you cannot use erl_errno to see  if  a  function
	      call  failed.  Instead, each function reports failure in its own
	      way (usually by returning	a negative number or NULL),  in	 which
	      case you can examine erl_errno for details.

	      erl_errno	 uses  the  error  codes defined in your system's _er-
	      rno.h_.

	  Note:
	      erl_errno	is a "modifiable lvalue" (just like ISO	C defines  er-
	      rno  to  be) rather than a variable. This	means it can be	imple-
	      mented as	a macro	(expanding to,	for  example,  *_erl_errno()).
	      For  reasons  of thread safety (or task safety), this is exactly
	      what we do on most platforms.

Ericsson AB		      erl_interface 3.11		  erl_error(3)

NAME | DESCRIPTION | EXPORTS | ERROR REPORTING | EXPORTS

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=erl_error&sektion=3&manpath=FreeBSD+13.0-RELEASE+and+Ports>

home | help