]> git.ipfire.org Git - thirdparty/gcc.git/blob - libiberty/doc/supplemental-functions.rst
sphinx: add missing trailing newline
[thirdparty/gcc.git] / libiberty / doc / supplemental-functions.rst
1 ..
2 Copyright 1988-2022 Free Software Foundation, Inc.
3 This is part of the GCC manual.
4 For copying conditions, see the copyright.rst file.
5
6 .. index:: supplemental functions, functions, supplemental, functions, missing
7
8 .. _supplemental-functions:
9
10 Supplemental Functions
11 **********************
12
13 Certain operating systems do not provide functions which have since
14 become standardized, or at least common. For example, the Single
15 Unix Specification Version 2 requires that the ``basename``
16 function be provided, but an OS which predates that specification
17 might not have this function. This should not prevent well-written
18 code from running on such a system.
19
20 Similarly, some functions exist only among a particular 'flavor'
21 or 'family' of operating systems. As an example, the ``bzero``
22 function is often not present on systems outside the BSD-derived
23 family of systems.
24
25 Many such functions are provided in ``libiberty``. They are quickly
26 listed here with little description, as systems which lack them
27 become less and less common. Each function :samp:`{foo}` is implemented
28 in :samp:`{foo}.c` but not declared in any ``libiberty`` header file; more
29 comments and caveats for each function's implementation are often
30 available in the source file. Generally, the function can simply
31 be declared as ``extern``.