NAME
cdefs
—
common definitions and
macros
SYNOPSIS
#include
<sys/cdefs.h>
DESCRIPTION
The<sys/cdefs.h>
header
includes some common definitions and macros typical to the C language
conventions of NetBSD. Among these are:
- Certain C language properties and definitions that are versioned according to the support in compilers. Examples include the __func__ keyword and the restrict type qualifier from C99.
- Macros and definitions specific to compilers, preprocessors, and linkers; see __CONCAT(3), __UNCONST(3), __USE(3), __insn_barrier(3), and attribute(3).
- Utility macros provided for convenience; see __arraycount(3) and bits(3).
The header also contains the
__RCSID
()
and
__KERNEL_RCSID
()
macros used for version control system (VCS) identifiers. Thus, all
NetBSD source code files typically include
<sys/cdefs.h>
, included as
the first thing right after any possible copyright texts;
/*- * 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.4 2013/10/27 10:05:15 apb Exp $");
It is possible to identify the RCS keyword strings by using ident(1).
SEE ALSO
HISTORY
The <sys/cdefs.h>
header was originally imported from 386BSD.