llvm-project/libc/utils/CPP
Michael Jones b62d72f3c5 [libc] Add support for 128 bit ints in limits.h
Also, this adds unit tests to check that limits.h complies with the C
standard.

Reviewed By: sivachandra

Differential Revision: https://reviews.llvm.org/D110643
2021-09-28 23:50:16 +00:00
..
Array.h [libc][NFC] Make all top of file comments consistent. 2020-04-08 10:18:37 -07:00
ArrayRef.h [libc] Enhance ArrayRef + unittests 2021-04-21 13:25:24 +00:00
Bitset.h [libc] Add strspn implementation and std::bitset 2020-08-05 16:48:38 -04:00
CMakeLists.txt [libc][nfc] add CPP Limits.h for numeric_limits 2021-08-12 21:31:16 +00:00
Functional.h [libc][NFC] Rename cpp::function to cpp::Function. 2020-04-30 11:58:26 -07:00
Limits.h [libc] Add support for 128 bit ints in limits.h 2021-09-28 23:50:16 +00:00
README.md [libc] Add a README to the sub-directories under the utils directory. 2020-02-23 22:11:35 -08:00
StringView.h [libc] Add index operator[] to StringView 2021-04-15 15:55:37 +00:00
TypeTraits.h [libc] Add support for 128 bit ints in limits.h 2021-09-28 23:50:16 +00:00

README.md

This directory contains re-implementations of some C++ standard library utilities, as well as some LLVM utilities. These utilities are for use with internal LLVM libc code and tests.

More utilities will be added on an as needed basis. There are certain rules to be followed for future changes and additions:

  1. Only two kind of headers can be included: Other headers from this directory, and free standing C headers.
  2. Free standing C headers are to be included as C headers and not as C++ headers. That is, use #include <stddef.h> and not #include <cstddef>.
  3. The utilities should be defined in the namespace __llvm_libc::cpp. The higher level namespace should have a __ prefix to avoid symbol name pollution when the utilities are used in implementation of public functions.