forked from OSchip/llvm-project
50 lines
2.1 KiB
Plaintext
50 lines
2.1 KiB
Plaintext
This is meant to be a general place to list things that should be done "someday"
|
|
|
|
ABI Related Tasks
|
|
=================
|
|
* Explicitly manage and verify symbols exported from the dylib.
|
|
* Explore using namespaces for managing symbol visibility.
|
|
* Introduce and document ABI versioning/evolution policy.
|
|
|
|
CXX Runtime Library Tasks
|
|
=========================
|
|
* Cleanup #ifdef hell in sources files that supports the different ABI libraries.
|
|
* Fix that CMake always link to /usr/lib/libc++abi.dylib on OS X.
|
|
* Fix selection of ABI symbol list on OS X.
|
|
* Have CMake generate linker scripts for libc++.so that it properly links the
|
|
runtime library.
|
|
* Look into mirroring libsupc++'s typeinfo vtable layout when libsupc++/libstdc++
|
|
is used as the runtime library.
|
|
* Audit libraries that CMake links into libc++. Are they all required?
|
|
* Investigate and document interoperability between libc++ and libstdc++ on
|
|
linux. Do this for every supported c++ runtime library.
|
|
|
|
Atomic Related Tasks
|
|
====================
|
|
* Support <atomic> in C++03 (needed for internal use).
|
|
* Audit use of libatomic builtins in <atomic> with GCC.
|
|
* future should use <atomic> for synchronization.
|
|
* call_once should use <atomic> for synchronization.
|
|
* Audit shared_ptr use of <atomic>
|
|
|
|
Test Suite Tasks
|
|
================
|
|
* Get test suite passing in C++03.
|
|
* Move all libc++ specific tests from test/std into test/libcxx.
|
|
* Improve how LIT handles compiler warnings.
|
|
* Improve the quality and portability of the locale test data.
|
|
|
|
Misc Tasks
|
|
==========
|
|
* Find all sequences of >2 underscores and eradicate them.
|
|
* run clang-tidy on libc++
|
|
* Look at test/std/utilities/meta/meta.trans/meta.trans.other/result_of.pass.cpp;
|
|
why are the tests duplicated?
|
|
* Document the "conditionally-supported" bits of libc++
|
|
* Look at basic_string's move assignment operator, re LWG 2063 and POCMA
|
|
* libc++ is missing try_emplace
|
|
* Put a static_assert in std::allocator to deny const/volatile types (LWG 2447)
|
|
* Investigate the effect of using __decltype instead of __typeof__ to provide
|
|
decltype in C++03. What code could be broken by this change?
|
|
|