xref: /freebsd/contrib/llvm-project/libcxx/modules/std.compat/cstdlib.inc (revision 95eb4b873b6a8b527c5bd78d7191975dfca38998)
1// -*- C++ -*-
2//===----------------------------------------------------------------------===//
3//
4// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
5// See https://llvm.org/LICENSE.txt for license information.
6// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
7//
8//===----------------------------------------------------------------------===//
9
10export {
11  using ::div_t;
12  using ::ldiv_t;
13  using ::lldiv_t;
14  using ::size_t;
15
16  // [support.start.term], start and termination
17  using ::_Exit;
18  using ::abort;
19  using ::at_quick_exit _LIBCPP_USING_IF_EXISTS;
20  using ::atexit;
21  using ::exit;
22  using ::quick_exit _LIBCPP_USING_IF_EXISTS;
23
24  using ::getenv;
25  using ::system;
26
27  // [c.malloc], C library memory allocation
28  using ::aligned_alloc _LIBCPP_USING_IF_EXISTS;
29  using ::calloc;
30  using ::free;
31  using ::malloc;
32  using ::realloc;
33
34  using ::atof;
35  using ::atoi;
36  using ::atol;
37  using ::atoll;
38  using ::strtod;
39  using ::strtof;
40  using ::strtol;
41  using ::strtold;
42  using ::strtoll;
43  using ::strtoul;
44  using ::strtoull;
45
46  // [c.mb.wcs], multibyte / wide string and character conversion functions
47  using ::mblen;
48#ifndef _LIBCPP_HAS_NO_WIDE_CHARACTERS
49  using ::mbstowcs;
50  using ::mbtowc;
51  using ::wcstombs;
52  using ::wctomb;
53#endif
54  // [alg.c.library], C standard library algorithms
55  using ::bsearch;
56  using ::qsort;
57
58  // [c.math.rand], low-quality random number generation
59  using ::rand;
60  using ::srand;
61
62  // [c.math.abs], absolute values
63  using ::abs;
64
65  using ::labs;
66  using ::llabs;
67
68  using ::div;
69  using ::ldiv;
70  using ::lldiv;
71
72} // export
73