diff options
author | Eric Fiselier <eric@efcs.ca> | 2015-05-22 02:23:22 +0000 |
---|---|---|
committer | Eric Fiselier <eric@efcs.ca> | 2015-05-22 02:23:22 +0000 |
commit | 97092d6a5c4dfe1d9e5de354309061b311b777d5 (patch) | |
tree | a9d35b98f11789c33b58c388dd02e0ff22eb7e4a /TODO.TXT | |
parent | 19158f2fa1034440da0a1ce10fe93cf8905974b4 (diff) | |
download | external_libcxx-97092d6a5c4dfe1d9e5de354309061b311b777d5.tar.gz external_libcxx-97092d6a5c4dfe1d9e5de354309061b311b777d5.tar.bz2 external_libcxx-97092d6a5c4dfe1d9e5de354309061b311b777d5.zip |
Add TODO items
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@237988 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'TODO.TXT')
-rw-r--r-- | TODO.TXT | 41 |
1 files changed, 38 insertions, 3 deletions
@@ -1,10 +1,45 @@ This is meant to be a general place to list things that should be done "someday" -* Find all sequences of >2 underscores and eradicate them. -* run clang-tidy on libc++ +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> -* Look at test/std/utilities/meta/meta.trans/meta.trans.other/result_of.pass.cpp; why are the tests duplicated? + +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 |