summaryrefslogtreecommitdiff
path: root/static/netbsd/man3/cdefs.3
diff options
context:
space:
mode:
Diffstat (limited to 'static/netbsd/man3/cdefs.3')
-rw-r--r--static/netbsd/man3/cdefs.3116
1 files changed, 116 insertions, 0 deletions
diff --git a/static/netbsd/man3/cdefs.3 b/static/netbsd/man3/cdefs.3
new file mode 100644
index 00000000..25cc5f8b
--- /dev/null
+++ b/static/netbsd/man3/cdefs.3
@@ -0,0 +1,116 @@
+.\" $NetBSD: cdefs.3,v 1.5 2019/11/10 18:45:09 christos Exp $
+.\"
+.\" Copyright (c) 2010 The NetBSD Foundation, Inc.
+.\" All rights reserved.
+.\"
+.\" This code is derived from software contributed to The NetBSD Foundation
+.\" by Jukka Ruohonen.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
+.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+.\" PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
+.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+.\" POSSIBILITY OF SUCH DAMAGE.
+.\"
+.Dd November 10, 2019
+.Dt CDEFS 3
+.Os
+.Sh NAME
+.Nm cdefs
+.Nd common definitions and macros
+.Sh SYNOPSIS
+.In sys/cdefs.h
+.Sh DESCRIPTION
+The
+.In sys/cdefs.h
+header includes some common definitions and macros
+typical to the C language conventions of
+.Nx .
+Among these are:
+.Bl -bullet -offset indent
+.It
+Certain C language properties and definitions that
+are versioned according to the support in compilers.
+Examples include the
+.Em __func__
+keyword and the
+.Em restrict
+type qualifier from
+.Tn C99 .
+.It
+Macros and definitions specific to compilers, preprocessors, and linkers; see
+.Xr __BIT 3 ,
+.Xr __BITS 3 ,
+.Xr __CONCAT 3 ,
+.Xr __FPTRCAST 3 ,
+.Xr __SHIFTIN 3 ,
+.Xr __SHIFTOUT 3 ,
+.Xr __SHIFTOUT_MASK 3 ,
+.Xr __UNCONST 3 ,
+.Xr __UNVOLATILE 3 ,
+.Xr __USE 3 ,
+.Xr __insn_barrier 3 ,
+and
+.Xr attribute 3 .
+.It
+Utility macros provided for convenience; see
+.Xr __arraycount 3
+and
+.Xr bits 3 .
+.El
+.Pp
+The header also contains the
+.Fn __RCSID
+and
+.Fn __KERNEL_RCSID
+macros used for version control system
+.Pq Tn VCS
+identifiers.
+Thus, all
+.Nx
+source code files typically include
+.In sys/cdefs.h ,
+included as the first thing right after any possible copyright texts;
+.Bd -literal -offset indent
+/*-
+ * Copyright (c) 1984 John Doe
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms,
+ * with or without modification, are permitted.
+ */
+
+#include <sys/cdefs.h>
+__RCSID("$NetBSD: cdefs.3,v 1.5 2019/11/10 18:45:09 christos Exp $");
+.Ed
+.Pp
+It is possible to identify the
+.Tn RCS
+keyword strings by using
+.Xr ident 1 .
+.Sh SEE ALSO
+.Xr ident 1 ,
+.Xr param 3 ,
+.Xr stddef 3 ,
+.Xr types 3 ,
+.Xr c 7
+.Sh HISTORY
+The
+.In sys/cdefs.h
+header was originally imported from
+.Bx 386 .