d068332b88
Code is from cxx.uclibc.org, modified by catty to implement c++17 features
38 lines
1.2 KiB
Plaintext
38 lines
1.2 KiB
Plaintext
Source Files
|
|
|
|
All of the forward declarations and templates are defined in header files in
|
|
the include/ directory.
|
|
|
|
All of the .cpp files in the src/ directory are supposed to produce binary output
|
|
at compile time to be linked into the library. There is one such file per header
|
|
file located in include. These .cpp files may not actually contain any code or
|
|
instanteated objects and instead simply be place holders.
|
|
|
|
Source categories.
|
|
|
|
Source code can be broken down into 4 separate categories:
|
|
|
|
- uClibc++ support code
|
|
- new and delete operators
|
|
|
|
- GNU libstdc++ support code
|
|
- Code taken to be compatible with compiler ABI requirements
|
|
- Difficult to replace
|
|
|
|
- IOStream code
|
|
- This code is used by almost anything. It is extremely
|
|
convoluted internally and has been rewritten on more than one
|
|
occasion because it is very difficult to understand
|
|
|
|
- STL Containers and Algorithms
|
|
- These are hardest to keep small because of code expansion.
|
|
- Fairly self-contained in their own right
|
|
|
|
|
|
Deviations from spec
|
|
- Map and set iterators are currently invalidated if you erase or insert an
|
|
element into the map/set
|
|
|
|
- Locales are not supported. This is intentional.
|
|
|