[libc][NFC] Move aligned access implementations to separate header
[llvm-project.git] / libc / src / __support / CPP / README.md
blob472a630110fd4e0716020a3b7225f23f3d6b5d1e
1 This directory contains partial re-implementations of some C++ standard library
2 utilities. They are for use with internal LLVM libc code and tests.
4 More utilities can be added on an as needed basis. There are certain rules to
5 be followed for future changes and additions:
7 1. Only two kind of headers can be included: Other headers from this directory,
8 and free standing C headers.
9 2. Free standing C headers are to be included as C headers and not as C++
10 headers. That is, use `#include <stddef.h>` and not `#include <cstddef>`.
11 3. The utilities should be defined in the namespace `__llvm_libc::cpp`. The
12 higher level namespace should have a `__` prefix to avoid symbol name pollution
13 when the utilities are used in implementation of public functions.