Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

_diagassert(3) [netbsd man page]

_DIAGASSERT(3)						   BSD Library Functions Manual 					    _DIAGASSERT(3)

NAME
_DIAGASSERT -- expression verification macro SYNOPSIS
#include <assert.h> _DIAGASSERT(expression); DESCRIPTION
The _DIAGASSERT() macro tests the given expression and if it is false, one or more of the following may occur: o a diagnostic message may be logged to the system logger with syslog(3). This is default behaviour. o a diagnostic message may be printed to the stderr stream. o the calling process will be terminated by calling abort(3). This behaviour may be changed by setting the LIBC_DIAGASSERT environment variable (see below). The diagnostic message consists of the text of the expression, the name of the source file, the line number and the enclosing function. If expression is true, the _DIAGASSERT() macro does nothing. The _DIAGASSERT() macro is not compiled in by default, and will only be compiled in with the cc(1) option -D_DIAGNOSTIC. This macro is used in the various system libraries such as the Standard C Library (libc, -lc) to ensure that various library calls are invoked with valid arguments. ENVIRONMENT
The LIBC_DIAGASSERT environment variable can be used to modify the default behaviour of logging the assertion to the system logger. LIBC_DIAGASSERT may be set to one or more of the following characters: a abort(3) once any assertion messages have been logged and/or printed. A Opposite of ``a''. e Print the assertion message to the stderr stream. E Opposite of ``e''. l Log the assertion message with syslog(3) to the facility user.debug. L Opposite of ``l''. DIAGNOSTICS
The diagnostic message has the following format: "assertion "%s" failed: file "%s", line %d, function "%s" ", "expression", __FILE__, __LINE__, __func__ SEE ALSO
cc(1), abort(3), assert(3), syslog(3) HISTORY
The _DIAGASSERT macro appeared in NetBSD 1.5. BSD
January 22, 2007 BSD

Check Out this Related Man Page

ENVIRON(7)					       BSD Miscellaneous Information Manual						ENVIRON(7)

NAME
environ -- user process environment SYNOPSIS
extern char **environ; DESCRIPTION
An array of strings called the environment is made available by execve(2) when a process begins. By convention these strings have the form ``name=value''. The following names are used by various commands: AUDIOCTLDEVICE The name of the audio control device to be used by audioctl(1), audioplay(1) and audiorecord(1). AUDIODEVICE The name of the audio device to be used by audioplay(1) and audiorecord(1). BLOCKSIZE The size of the block units used by several commands, most notably df(1), du(1) and ls(1). BLOCKSIZE may be specified in units of a byte by specifying a number, in units of a kilobyte by specifying a number followed by 'K' or 'k', in units of a megabyte by specifying a number followed by 'M' or 'm' and in units of a gigabyte by specifying a number followed by 'G' or 'g'. Sizes less than 512 bytes or greater than a gigabyte are ignored. EXINIT A startup list of commands read by ex(1) and vi(1). HOME A user's login directory, set by login(1) from the password file passwd(5). LANG Default for all NLS categories. Only used if LC_ALL or the environment variable for a particular NLS category is not pro- vided (LC_COLLATE, LC_CTYPE, LC_MESSAGES, LC_MONETARY, LC_NUMERIC, or LC_TIME). LC_ALL Override for all NLS categories. If set, overrides the values of LC_COLLATE, LC_CTYPE, LC_MESSAGES, LC_MONETARY, LC_NUMERIC, and LC_TIME. LC_COLLATE NLS string-collation order information. LC_CTYPE NLS character classification, case conversion, and other character attributes. LC_MESSAGES NLS format for affirmative and negative responses. LC_MONETARY NLS rules and symbols for formatting monetary numeric information. LC_NUMERIC NLS rules and symbols for formatting nonmonetary numeric information. LC_TIME NLS rules and symbols for formatting time and date information. LIBC_DIAGASSERT Control how the _DIAGASSERT() macro (from <assert.h>) behaves once the assertion is raised. Refer to _DIAGASSERT(3) for more information. LOGNAME The login name of the user. MALLOC_OPTIONS Control the behaviour of the malloc() function. Refer to malloc(3) for more information. MIXERDEVICE The name of the audio mixer device to be used by mixerctl(1). PAGER The program used for paginating the output of several commands such as man(1). If null or not set, the standard pagination program more(1) will be used. PATH The sequence of directories, separated by colons, searched by csh(1), sh(1), system(3), execvp(3), etc, when looking for an executable file. PATH is set to /usr/bin:/bin:/usr/pkg/bin:/usr/local/bin initially by login(1). PRINTER The name of the default printer to be used by lpr(1), lpq(1), and lprm(1). RCMD_CMD When using the rcmd(3) function, this variable is used as the program to run instead of rcmd(1). SHELL The full pathname of the user's login shell. TERM The kind of terminal for which output is to be prepared. This information is used by commands, such as nroff(1) which may exploit special terminal capabilities. See /usr/share/misc/terminfo (terminfo(5)) for a list of terminal types. TERMCAP The string describing the terminal in TERM, or, if it begins with a '/', the name of the termcap file. This is only checked if TERMINFO is not set. TERMINFO The string describing the terminal in TERM, or, if it begins with a '/', the name of the terminfo file. TIMEFORMAT A strftime(3) format string that may be used by programs such as dump(8) for formatting timestamps. TMPDIR The directory in which to store temporary files. Most applications use either /tmp or /var/tmp. Setting this variable will make them use another directory. TZ The timezone to use when displaying dates. The normal format is a pathname relative to /usr/share/zoneinfo. For example, the command env TZ=US/Pacific date displays the current time in California. See tzset(3) for more information. USER The login name of the user. It is recommended that portable applications use LOGNAME instead. Further names may be placed in the environment by the export command and name=value arguments in sh(1), or by the setenv command if you use csh(1). It is unwise to change certain sh(1) variables that are frequently exported by .profile files, such as MAIL, PS1, PS2, and IFS, unless you know what you are doing. SEE ALSO
audioctl(1), audioplay(1), audiorecord(1), csh(1), ex(1), login(1), man(1), more(1), sh(1), execve(2), _DIAGASSERT(3), execle(3), malloc(3), rcmd(3), system(3), termcap(3), terminfo(3), audio(4), terminfo(5), nls(7), dump(8) HISTORY
The environ manual page appeared in 4.2BSD. BSD
January 21, 2011 BSD
Man Page